我正在研究 FxPro Ctrader 经纪人(FIX 4.4),我正在尝试使用 QuickFix/n 库(1.7.0.0)在 C# 中制作一个 FixApi。
我停留在“NewOrderSingle”:成功登录后,我正在尝试下订单:
class TradeConnection : MessageCracker, IApplication
{
public void OnLogon(SessionID sessionID)
{
Write.Info("Account TRADE successful logged " + sessionID);
sendOrder();
}
public void sendOrder()
{
NewOrderSingle oc = new NewOrderSingle();
ClOrdID ID = new ClOrdID("1408479");
Symbol symb = new Symbol("1");
Side side = new Side('1');
OrderQty lots = new OrderQty(1000);
OrdType type = new OrdType('1');
TransactTime TransactTime = new TransactTime(DateTime.Now);
TimeInForce TimeInForce = new TimeInForce('3');
oc.SetField(ID);
oc.SetField(symb);
oc.SetField(side);
oc.SetField(lots);
oc.SetField(type);
oc.SetField(TimeInForce);
send(oc);
}
public void send(QuickFix.Message message)
{
Session.SendToTarget(message, sessionID);
}
}
不幸的是,它不起作用,我收到错误:
System.dll 中出现“System.ObjectDisposedException”类型的第一次机会异常
出现同样的错误@
RequestForPositions 和 OrderStatusRequest
在使用 NetworkStream 而不是 QuickFix lib 的 api 中的同一帐户上,它工作正常。