{{Quickfixn}} Group repeating fields got lost when message is resend.

Valcho Valchev valcho.valchev at gmail.com
Sun Aug 26 22:28:43 PDT 2012


Hi everyone,

I'm using standard FIX4.2 and sending Market Data Request and it seems
fine but when a Resend Request is received the messages are sent with
no repeating fields.
Here is an example of the original message:

8=FIX.4.2|9=130|35=V|34=3|49=XXXX|52=20120824-15:26:29.439|56=XXXX|262=0000000002|263=1|264=0|265=0|267=3|269=0|269=1|269=2|146=2|55=GOM|55=XOM|10=095|

and here is the same message resend:

8=FIX.4.2|9=161|35=V|34=3|43=Y|49=XXXX|52=20120824-15:26:29.556|56=XXXX|122=20120824-15:26:29.439|55=GOM|146=2|262=0000000002|263=1|264=0|265=0|267=3|269=0|10=111|

I checked my store get method and the message was coming out from it correct.
Also noticed that this message doesn't go trough toApp method.

I'm new to FIX so any help or links would be appreciated.

PS: here is the code that I use to create this message:


            MDReqID mdReqID = new MDReqID(marketDataID);
            SubscriptionRequestType subType = new
SubscriptionRequestType(subRequestType);
            MarketDepth marketDepth = new MarketDepth(0);
            QuickFix.FIX42.MarketDataRequest message = new
QuickFix.FIX42.MarketDataRequest(mdReqID, subType, marketDepth);
            message.Set(new MDUpdateType(MDUpdateType.FULL_REFRESH));

            QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup
marketDataEntryGroupBid = new
QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup();
            marketDataEntryGroupBid.Set(new MDEntryType(MDEntryType.BID));
            QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup
marketDataEntryGroupOffer = new
QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup();
            marketDataEntryGroupOffer.Set(new MDEntryType(MDEntryType.OFFER));
            QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup
marketDataEntryGroupTrade = new
QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup();
            marketDataEntryGroupTrade.Set(new MDEntryType(MDEntryType.TRADE));

            message.AddGroup(marketDataEntryGroupBid);
            message.AddGroup(marketDataEntryGroupOffer);
            message.AddGroup(marketDataEntryGroupTrade);

            stocks.ForEach(delegate(StockInfo stock) {
                QuickFix.FIX42.MarketDataRequest.NoRelatedSymGroup
symbolGroup = new
QuickFix.FIX42.MarketDataRequest.NoRelatedSymGroup();
                symbolGroup.Set(new Symbol(stock.Stock));

                message.AddGroup(symbolGroup);
            });

            QueryHeader(message.Header);
            QuickFix.Session.SendToTarget(message, sesID);


More information about the Quickfixn mailing list