QuickFix-未为此消息定义标签-Celer技术



我以前在这里看到过这个问题并应用了建议的解决方案,但仍在提出

未为此消息定义标签

我正在发送以下消息:

toapp : 8=FIX.4.4|9=151|35=V|34=2|49=Test|52=20180731-14:35:54.947|56=UAT-Test|55=EUR/USD|63=SP|115=Username|167=FOR|207=XCEL|262=1|263=1|264=0|265=0|461=SPOT|10=074|

把这个拿回来

toadmin : 8=FIX.4.4|9=134|35=3|34=3|49=Test|52=20180731-14:35:54.982|56=UAT-Test|45=2|58=Tag not defined for this message type|371=264|372=W|373=2|10=090|

市场数据请求的数据字典中的条目是:

<message name="MarketDataRequest" msgtype="V" msgcat="app">
<field name="MDReqID" required="Y"/>
<field name="SubscriptionRequestType" required="Y"/>
<field name="MarketDepth" required="Y"/>
<field name="Symbol" required="Y"/>
<field name="SecurityType" required="Y"/>
<field name="MDUpdateType" required="Y"/>
<field name="CFICode" required="Y"/>
<field name="SettlType" required="Y"/>
<field name="OnBehalfOfCompID" required="N"/>
<field name="SecurityExchange" required="Y"/>
</message>
...
<field number="264" name="MarketDepth" type="INT"/>

我遇到的所有其他FIX实现也都有NoMDEntryTypesNoRelatedSym组,这并不奇怪,但这正是规范所要求的。

此外,如果我发送toapp消息并在没有fromapp/fromadmin消息的情况下返回toadmin消息,这是否意味着quickfix拦截了格式错误的消息,并且从未发送过它?

拒绝不是因为您的市场数据请求。我可以从拒绝中的标签372=W中看出这一点:

FIX 4.4:RefMsgType<372>字段

MsgType<35>(35(。

MsgType W指的是市场数据快照。

根据您提供的信息,我可以推断您发送了一个MarketDataRequest(35=V(,该请求可能会成功工作。您连接到的服务器会用快照(35=W(回复,然后您的FIX引擎会自动拒绝它们,因为它们的快照包含标签264,这是您所没有预料到的。

最新更新