我正在尝试使用以下方法向FIX适配器发出请求(安全性定义请求)。这是一个应用程序级别的调用,只要成功连接到FIX适配器,我就会手动调用此方法。
当我运行此方法时,出现“找不到标签49的字段”异常消息。但是SecurityDefinitionRequest类不允许我将Tag 49(SenderCompId)设置为它。
首先,这是发出SecurityDefinitionRequest的正确方法吗?我尝试查看QuickFix / N文档,但他们没有解释如何提出此类要求。
http://quickfixn.org/tutorial/sending-messages.html
事实上,到目前为止,我还没有在互联网上看到任何文章。有什么建议么?
public void ToApp(Message message, SessionID sessionId)
{
var request =
new SecurityDefinitionRequest()
{
SecurityReqID = new SecurityReqID("1"),
SecurityID = new SecurityID("5"),
SecurityRequestType = new SecurityRequestType(3),
SecurityType = new SecurityType("FUT")
};
request.SetField(new SenderCompID("217"));
Session.SendToTarget(request);
}
构造的消息如下
8=FIX.4.29=3735=c48=549=217167=FUT320=1321=310=003
答案 0 :(得分:1)
我将建议:
SessionId currentSessionId = new QuickFix.SessionID("FIX4.2", "217","CBOE");
securityDefinitionRequest.SetSessionID(currentSessionId );