While using quickfix for c++, I can't seem to set the field "Symbol" for the message type MarketDataRequest. It throws the exception "Tag not defined for this message type". How can I get around this? Below is the excerpt of the code which instantiates the message
FIX44::MarketDataRequest marketDataRequest;
LastClOrdID = LastClOrdID + 1;
marketDataRequest.set(FIX::MDReqID(to_string(LastClOrdID)));
marketDataRequest.set(FIX::SubscriptionRequestType('0'));
marketDataRequest.setField(55,"DOLM15");
queryHeader(marketDataRequest.getHeader());
return marketDataRequest;
Thanks in advance!
The "Symbol" field is not a top-level field in MarketDataRequest.
It's in the repeating group that starts with tag 146 "NoRelatedSym". A MarketDataRequest can contain multiple symbols, and repeating groups are the mechanism which enables this.
Please read the QF doc page about repeating groups.