簡體   English   中英

標簽多次出現QuickFix

[英]Tag appears more than once QuickFix

我正在向客戶端應用程序發送MarketDataSnapshotFullRefresh消息,但在toAdmin方法中卻收到“標簽出現多次”的消息。 我得到的原始消息字符串是

8=FIX.4.2|9=111|35=3|34=222|49=CLIENT1|52=20120217-18:57:44.233|56
=FixServer|45=189|58=Tag appears more than once|371=37|372=W|10=234|

有人有主意嗎?

  QuickFix42.MarketDataSnapshotFullRefresh message =
       new QuickFix42.MarketDataSnapshotFullRefresh(new Symbol("QF"));

  QuickFix42.MarketDataSnapshotFullRefresh.NoMDEntries group =
          new QuickFix42.MarketDataSnapshotFullRefresh.NoMDEntries();

        group.set(new MDEntryType('0'));
        group.set(new MDEntryPx(12.32));
        group.set(new MDEntrySize(100));
        group.set(new OrderID("ORDERID"));
        message.addGroup(group);

        group.set(new MDEntryType('1'));
        group.set(new MDEntryPx(12.32));
        group.set(new MDEntrySize(100));
        group.set(new OrderID("ORDERID"));
        message.addGroup(group);

        Session.sendToTarget(message, session);

這看起來像是重復的小組問題。 您的客戶將Snapshot消息視為無分組消息,然后由於重復的標簽而將其拒絕。 (您的消息構造代碼似乎正確。)

如果客戶端無法識別組,則通常意味着DataDictionary配置錯誤。

確保在您的配置中設置了以下內容,並且我懷疑這個特定問題會消失:

UseDataDictionary=Y
DataDictionary=path/to/your/DD.xml

您的問題出在數據字典中-您的FIX42.xml文件應具有正確的MarketDataSnapshotFullRefresh定義,並為MDEntries重復組定義了組件塊。還請確保您的配置文件具有“ UseDataDictionary = Y”,並且該文件的路徑自定義FIX42.xml已定義。

.xml文件中定義的字段順序也可能與交易對手的規范不同。 確保它們的順序也相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM