Reputation: 85
I am using quick fix. Once I send the market data message, the data coming in has the tag 268 as 2, which means it has two messages. But my fix application throws error as tag 278 appears more than once. So any idea how I can fix this?
Below is the DictinaryData:
<message name="MarketDataIncrementalRefresh" msgtype="X" msgcat="app">
<field name="MDReqID" required="N" />
<group name="NoMDEntries" required="Y">
<field name="MDUpdateAction" required="Y" />
<field name="DeleteReason" required="N" />
<field name="MDEntryType" required="N" />
<field name="MDEntryID" required="N" />
<field name="MDEntryRefID" required="N" />
<component name="Instrument" required="N" />
<group name="NoUnderlyings" required="N">
<component name="UnderlyingInstrument" required="N" />
</group>
<group name="NoLegs" required="N">
<component name="InstrumentLeg" required="N" />
</group>
<field name="FinancialStatus" required="N" />
<field name="CorporateAction" required="N" />
<field name="MDEntryPx" required="N" />
<field name="Currency" required="N" />
<field name="MDEntrySize" required="N" />
<field name="MDEntryDate" required="N" />
<field name="MDEntryTime" required="N" />
<field name="TickDirection" required="N" />
<field name="MDMkt" required="N" />
<field name="TradingSessionID" required="N" />
<field name="TradingSessionSubID" required="N" />
<field name="QuoteCondition" required="N" />
<field name="TradeCondition" required="N" />
<field name="MDEntryOriginator" required="N" />
<field name="LocationID" required="N" />
<field name="DeskID" required="N" />
<field name="OpenCloseSettlFlag" required="N" />
<field name="TimeInForce" required="N" />
<field name="ExpireDate" required="N" />
<field name="ExpireTime" required="N" />
<field name="MinQty" required="N" />
<field name="ExecInst" required="N" />
<field name="SellerDays" required="N" />
<field name="OrderID" required="N" />
<field name="QuoteEntryID" required="N" />
<field name="MDEntryBuyer" required="N" />
<field name="MDEntrySeller" required="N" />
<field name="NumberOfOrders" required="N" />
<field name="MDEntryPositionNo" required="N" />
<field name="Scope" required="N" />
<field name="PriceDelta" required="N" />
<field name="NetChgPrevDay" required="N" />
<field name="Text" required="N" />
<field name="EncodedTextLen" required="N" />
<field name="EncodedText" required="N" />
</group>
<field name="ApplQueueDepth" required="N" />
<field name="ApplQueueResolution" required="N" />
And these are the error message im getting.
20160623-17:28:44.915 : 8=FIX.4.49=21935=W34=3349=CfhDemoPrices52=20160623-17:28:45.82356=PrimoDEMOFIX55=GBPUSD262=PrimoApp123268=2269=0270=1.48205271=1000000290=164=20160627278=30/26-124551269=1270=1.48227271=1000000290=1278=30/26-12455610=066
20160623-17:28:44.930 : 8=FIX.4.49=12635=334=3449=PrimoDEMOFIX52=20160623-17:28:44.93056=CfhDemoPrices45=3358=Tag appears more than once371=278372=W373=1310=132
Please help me.
Upvotes: 1
Views: 455
Reputation: 5766
You will need to learn how to decipher errors.
58=Tag appears more than once 371=278
This clearly mentions what the error is. 278 is present more than once in your FIX message. You have constructed the message erroneously.
Upvotes: 0