编程语言
首页 > 编程语言> > python-Quickfix无法读取重复组

python-Quickfix无法读取重复组

作者:互联网

我在Windows中使用带有Python绑定的quickfix.我过去曾提出过市场数据请求.我最近改用了其他API提供程序(坎宁安,又名CTS),遇到了很多问题.但是,其中至少有一个似乎在quickfix内部.这让我感到困惑.

发送市场数据请求时,我会返回响应.这是典型的35 = W消息,即市场快照.

Quickfix拒绝此消息,因为标签269出现多次!

当然,标签269是MDEntryType,它应该出现多次.还要注意,定义了标签268 NoMDEntries,并说该组中有21个条目.

我认为这是quickfix的内部功能,因为quickfix会生成错误消息并将其发送回CTS.同样,此错误会中止消息,然后才能将其传递给fromApp函数. (我知道,因为每当调用fromApp时将自己应用于消息的解析器甚至都没有得到此消息).

有任何想法吗?该消息如下.

(编辑-我已经关闭了配置文件中的数据字典-可能与此有关吗?)

< 20140915-22:39:11.953,FIX.4.2:XXXXX-> CTS,传入>
  (8 = FIX.4.2☺9 = 836 = 35 = W☺34 = 4☺49 = CTS☺56 = XXXXX☺52 = 20140915-22:39:11.963☺48 = XDLCM
E_F ZN(Z14)☺387 = 2559☺965 = 2☺268 = 21☺269 = 0☺270 = 124156250☺271 = 646☺1023 = 1☺269 = 0☺270 =
124140625☺271 = 918☺1023 = 2☺269 = 0☺270 = 124125000☺271 = 1121☺1023 = 3☺269 = 0☺270 = 124109375
 271 271 = 998☺1023 = 4☺269 = 0☺270 = 124093750☺271 = 923☺1023 = 5☺269 = 0☺270 = 124078125☺271 = 1689☺
1023 = 6☺269 = 0☺270 = 124062500☺271 = 2011☺1023 = 7☺269 = 0☺270 = 124046875☺271 = 1782☺1023 = 8☺2
69 = 0☺270 = 124031250☺271 = 2124☺1023 = 9☺269 = 0☺270 = 124015625☺271 = 1875☺1023 = 10☺269 = 1☺27
0 = 124171875☺271 = 422☺1023 = 1☺269 = 1☺270 = 124187500☺271 = 577☺1023 = 2☺269 = 1☺270 = 12420312
5 271 271 = 842☺1023 = 3☺269 = 1☺270 = 124218750☺271 = 908☺1023 = 4☺269 = 1☺270 = 124234375☺271 = 1482
 23 1023 = 5☺269 = 1☺270 = 124250000☺271 = 1850☺1023 = 6☺269 = 1☺270 = 124265625☺271 = 1729☺1023 = 7☺
269 = 1☺270 = 124281250☺271 = 2615☺1023 = 8☺269 = 1☺270 = 124296875☺271 = 1809☺1023 = 9☺269 = 1☺27
0 = 124312500☺271 = 2241☺1023 = 10☺269 = 4☺270 = 124156250☺271 = 1☺10 = 140☺)

< 20140915-22:39:12.004,FIX.4.2:XXXX-> CTS,event>
  (消息4被拒绝:标记多次出现:269)

< 20140915-22:39:12.010,FIX.4.2:XXXX-> CTS,传出>
  (8 = FIX.4.2☺9 = 102☺35 = 3☺34 = 4 XXX 49 = XXXX☺52 = 20140915-22:39:12.009☺56 = CTS☺45 = 4☺58 =
标签出现多次(☺371 = 269☺372 = W☺10 = 012☺)

解决方法:

(edit — I have turned off the data dictionary in the config file — could it have anything to do with that?)

是的,这就是问题所在.

没有DD,您的引擎将不知道重复组何时结束或开始.就其而言,不存在重复分组的问题.

您需要一个DD,并且需要确保它与对手方的消息和字段集匹配.如果他们添加了自定义字段或消息,则需要确保您的DD能够反映出来.

标签:python,quickfix,fix-protocol
来源: https://codeday.me/bug/20191012/1902531.html