in fix_session.py [0:0]
def get_fix_message(self):
request = fix.Message()
request.getHeader().setField(fix.BeginString(fix.BeginString_FIX44))
request.getHeader().setField(fix.MsgType(fix.MsgType_MarketDataRequest))
request.setField(fix.MDReqID(self.id))
request.setField(fix.SubscriptionRequestType(fix.SubscriptionRequestType_SNAPSHOT_PLUS_UPDATES))
request.setField(fix.SecurityType(fix.SecurityType_FOREIGN_EXCHANGE_CONTRACT))
request.setField(fix.MarketDepth(0)) # full book
request.setField(fix.MDUpdateType(fix.MDUpdateType_FULL_REFRESH)) # fix.MDUpdateType_INCREMENTAL_REFRESH
group = fixnn.MarketDataRequest().NoMDEntryTypes()
group.setField(fix.MDEntryType(fix.MDEntryType_BID))
group.setField(fix.MDEntryType(fix.MDEntryType_OFFER))
group.setField(fix.MDEntryType(fix.MDEntryType_TRADE))
request.addGroup(group)
request.setField(fix.NoRelatedSym(len(self.symbols)))
group = fixnn.MarketDataRequest().NoRelatedSym()
for symbol in self.symbols:
group.setField(fix.Symbol(symbol))
request.addGroup(group)
return request