public override string ToString() { OrdStatus ordStatus = GetOrdStatus(ExecutionReport.GetChar(QuickFix.Fields.Tags.OrdStatus)); ExecType? execType = GetExecType(ExecutionReport.GetChar(QuickFix.Fields.Tags.ExecType)); string symbol = FixHelper.GetNullFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.Symbol); string exchange = ""; return(string.Format("Execution Report for symbol {2}: Order Status={0} - Exec Type={1}", ordStatus.ToString(), execType.ToString(), symbol)); }
public override object GetField(Fields field) { if (ExecutionReport == null) { return(ExecutionReportFields.NULL); } if (field == Fields.KEY) { return(Key); } else { ExecutionReportFields xrField = (ExecutionReportFields)field; if (xrField == ExecutionReportFields.OrderID) { return(GetOrdId(ExecutionReport, QuickFix.Fields.Tags.OrderID)); } else if (xrField == ExecutionReportFields.ClOrdID) { return(GetOrdId(ExecutionReport, QuickFix.Fields.Tags.ClOrdID)); } else if (xrField == ExecutionReportFields.OrigClOrdID) { return(GetOrdId(ExecutionReport, QuickFix.Fields.Tags.OrigClOrdID)); } else if (xrField == ExecutionReportFields.ExecType) { return(GetExecType(ExecutionReport.GetChar(QuickFix.Fields.Tags.ExecType))); } else if (xrField == ExecutionReportFields.ExecID) { return(ExecutionReport.GetString(QuickFix.Fields.Tags.ExecID)); } else if (xrField == ExecutionReportFields.OrdStatus) { return(GetOrdStatus(ExecutionReport.GetChar(QuickFix.Fields.Tags.OrdStatus))); } else if (xrField == ExecutionReportFields.OrdRejReason) { return(FixHelper.GetNullIntFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.OrdRejReason)); } else if (xrField == ExecutionReportFields.LeavesQty) { return(ExecutionReport.GetInt(QuickFix.Fields.Tags.LeavesQty)); } else if (xrField == ExecutionReportFields.CumQty) { return(ExecutionReport.GetInt(QuickFix.Fields.Tags.CumQty)); } else if (xrField == ExecutionReportFields.AvgPx) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.AvgPx)); } else if (xrField == ExecutionReportFields.Commission) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.Commission)); } else if (xrField == ExecutionReportFields.Text) { return(ExecutionReport.GetField(QuickFix.Fields.Tags.Text)); } else if (xrField == ExecutionReportFields.TransactTime) { return(DateTime.Now); } else if (xrField == ExecutionReportFields.LastQty) { return(FixHelper.GetNullIntFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.LastQty)); } else if (xrField == ExecutionReportFields.LastPx) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.LastPx)); } else if (xrField == ExecutionReportFields.LastMkt) { return(FixHelper.GetNullFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.LastMkt)); } else if (xrField == ExecutionReportFields.Symbol) { return(FixHelper.GetNullFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.Symbol)); } else if (xrField == ExecutionReportFields.OrderQty) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.OrderQty)); } else if (xrField == ExecutionReportFields.CashOrderQty) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.CashOrderQty)); } else if (xrField == ExecutionReportFields.OrdType) { return(GetOrdType(ExecutionReport.GetChar(QuickFix.Fields.Tags.OrdType))); } else if (xrField == ExecutionReportFields.Price) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.Price)); } else if (xrField == ExecutionReportFields.StopPx) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.StopPx)); } else if (xrField == ExecutionReportFields.Currency) { return(FixHelper.GetNullFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.Currency)); } else if (xrField == ExecutionReportFields.ExpireDate) { return(FixHelper.GetDateTimeFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.ExpireDate)); } else if (xrField == ExecutionReportFields.MinQty) { return(FixHelper.GetNullDoubleFieldIfSet(ExecutionReport, QuickFix.Fields.Tags.MinQty)); } else if (xrField == ExecutionReportFields.Side) { GetSide(ExecutionReport.GetChar(QuickFix.Fields.Tags.Side)); } else if (xrField == ExecutionReportFields.QuantityType) { return(QuantityType.SHARES); } else if (xrField == ExecutionReportFields.PriceType) { return(PriceType.FixedAmount); } else if (xrField == ExecutionReportFields.Account) { return(ExecutionReport.GetField(QuickFix.Fields.Tags.Account)); } else if (xrField == ExecutionReportFields.ExecInst) { return(ExecutionReport.GetField(QuickFix.Fields.Tags.ExecInst)); } } return(ExecutionReportFields.NULL); }