我在连接到 FIX.4.4 服务器的客户端中使用 QuickFix。但它拒绝来自服务器的传入消息。 传入消息是市场数据增量刷新消息(类型'X'):
8=FIX.4.4|9=0176|35=X|49=Server|56=Client|52=<Timestamp>|34=7245|268=2
|279==0|**55=<symbol>**|269=0|270=<Price>|271=0|1500=90
|279==0|**55=<Symbol>**|269=1|270=<Price>|271=0|1500=90|10=034|
然而,客户端生成了一条拒绝消息,如下所示: 58=未为此消息类型定义标记 **371=55 **372=X
这是我使用的规格和配置:
DefaultApplVerID=FIX.4.4
ConnectionType=发起者
BeginString=FIX.4.4
UseDataDictionary=Y
DataDictionary=路径/规格/FIX44.xml
FileStorePath=./会话/
ValidateIncomingMessage=N
ValidateUserDefinedFields=N
ValidateFieldsOutOfOrder=N
拒绝无效消息=N
<message name='MarketDataIncrementalRefresh' msgtype='X' msgcat='app'>
<field name='MDReqID' required='N' />
<component name='MDIncGrp' required='Y'/>
</message>
<component name='MDIncGrp'>
<group name='NoMDEntries' required="Y">
<field name='MDUpdateAction' required='Y' />
<field name='Symbol' required='N'/>
<field name='MDEntryType' required='N' />
<filed name='MDEntryPx' required='N' />
<field name='MDEntrySize' required='N' />
<field name='MDEntryID' required='N' />
<field name='NumberOfOrders' required='N' />
<field name='MDStreamID' required='N' />
</group>
</component>
<field number='268' name='NoMDEntries' type='NUMINGROUP' />
<field number='279' name='MDUpdateAction' type='CHAR'>
<value enum='0' description='NEW' />
<value enum='1' description='CHANGE' />
<value enum='2' description='DELETE' />
</field>
field number='55' name='Symbol' type='STRING' />
<field number='269' name='MDEntryType' type='CHAR'>...</field >
<field number='270' name='MDEntryPx' type='PRICE' />
<field number='271' name='MDEntrySize' type='QUOTE' />
<field number='278' name='MDEntryID' type='STRING' />
<field number='346' name='NumberOfOrders' type='INT' />
<field number='1500' name='MDStreamID' type='INT'/>
`** 我验证了我的代码是否正确加载了 4.4 xml 文件。 **
我想知道以前是否有人遇到过这种情况,他们是否知道 如何解决?
非常感谢。