如果字段 55 在 FIX 传入消息中多次出现,如何使用 QuickFIX 允许和解析 FIX 消息?

How to allow and parse FIX message with QuickFIX if Field 55 appears multiple times in FIX incoming message?

这个特定的经纪人不提供 DataDictionary,所以我必须根据他们的文档创建我自己的。

这是他们发送特定消息的方式:

FIX.4.4|9=709|35=y|34=53|49=DUMMYBROKER|56=<client_ID>|52=20210211- 12:12:37.358847|55=AUD/CAD|55=AUD/CHF|55=AUD/JPY|55=AUD/NZD|55=AUD/USD|55= CAD/CHF|55=CAD/JPY|55=CHF/JPY|55=EUR/AUD|55=EUR/CAD|55=EUR/CHF| ... etc

这可能只会为我提供最后一个符号:

var symbolstring = message.GetString(Tags.Symbol);

这是在 DataDictionary 中定义 SecurityList 的方式:

<message name="SecurityList" msgtype="y" msgcat="app">
    <group name="NoMDEntries" required="Y">
        <field name="Symbol" required="N"/>
    </group>
</message>  

我试过在所有变体中更改“Y”/“N”,但它仍然无法正确吸收消息。

此消息是无效的 FIX,并且根本无法被 QuickFIX/n(或任何 QF 引擎)解析。

重复组必须以计数器字段开头,该字段告诉接收者该组将跟随多少个实例。他们的消息没有那个计数器字段。