修复市场数据请求问题 - 重复组的 NumInGroup 计数不正确

FIX market data request issue - Incorrect NumInGroup count for repeating group

我正在尝试通过 FIX 协议获取市场数据。这是我作为请求发送的内容:

8=FIX.4.4|9=120|35=V|34=2|49=icmarkets.3540639|52=20190917-05:55:39.114|56=CSERVER|262=2|263=1|264=0|265=0|269=0|146=1|55=EUR/USD|267=2|10=173

这是收到的回复:

8=FIX.4.4|9=163|35=3|34=2|49=CSERVER|50=TRADE|52=20190917-05:55:39.142|56=icmarkets.3540639|45=2|58=Incorrect NumInGroup count for repeating group, field=267|371=267|372=V|373=16|10=216

所以明显有错误Incorrect NumInGroup count for repeating group, field=267 但我不知道如何解决这个问题。有什么建议吗?

谢谢!

您的标签顺序与应有的顺序完全不同。标记 267/NoMDEntryTypes 是重复组的计数标记,应该在该重复组之前。 您在消息末尾发送 267=2。它确实应该在标记 269/MdEntryType 之前。 269 是标记该重复组的新实例开始的分隔符标记。但是你只有一个标签 269(即组数只有 1)。这可能是您的交易对手将报告的下一个问题。

请获取您的交易对手的 FIX 参与规则,以检查他们的期望。也许他们甚至在那里有一些示例消息。

重复组之外的标签顺序无关紧要。但是重复组的count和delimiter标签需要有序

编辑:这里是根据 FIX 4.4 规范对 MarketDataRequest 的通用描述:https://fiximate.fixtrading.org/legacy/en/FIX.4.4/body_505786.html 但是您的交易对手可能会略有不同。