public void SubscribeMarketData(string symbol, string reqID) { MDReqID mdReqID = new MDReqID(reqID); SubscriptionRequestType subType = new SubscriptionRequestType(SubscriptionRequestType.SNAPSHOT_PLUS_UPDATES); MarketDepth marketDepth = new MarketDepth(1); MDUpdateType mdUpdateType = new MDUpdateType(0); QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup marketDataEntryGroup = new QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup(); marketDataEntryGroup.SetField(new MDEntryType(MDEntryType.BID)); marketDataEntryGroup.SetField(new MDEntryType(MDEntryType.OFFER)); QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup symbolGroup = new QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup(); symbolGroup.Set(new Symbol(symbol)); QuickFix.FIX44.MarketDataRequest message = new QuickFix.FIX44.MarketDataRequest(); message.SetField(mdReqID); message.SetField(subType); message.SetField(marketDepth); message.SetField(mdUpdateType); message.AddGroup(marketDataEntryGroup); message.AddGroup(symbolGroup); if (m_SessionID != null) { Session.SendToTarget(message, m_SessionID); } }
private static void ResolveMarketDataRequest(MarketDataRequest message, out Symbol symbol, out char bidAskObj, out string currencyCodeObj) { MDReqID mdReqId = new MDReqID(); message.Get(mdReqId); SubscriptionRequestType subType = new SubscriptionRequestType(); message.Get(subType); MarketDepth marketDepth = new MarketDepth(); message.Get(marketDepth); var symbolGroup = new FixSpec.MarketDataRequest.NoRelatedSymGroup(); message.GetGroup(1, symbolGroup); symbol = new Symbol(); symbolGroup.Get(symbol); FixSpec.MarketDataRequest.NoMDEntryTypesGroup marketDataEntryGroup = new FixSpec.MarketDataRequest.NoMDEntryTypesGroup(); message.GetGroup(1, marketDataEntryGroup); var mDEntryType = new MDEntryType(); marketDataEntryGroup.Get(mDEntryType); bidAskObj = mDEntryType.Obj; currencyCodeObj = symbol.Obj; var marketDepthObj = marketDepth.Obj; }
public override void onMessage(QuickFix44.MarketDataRequestReject message, SessionID session) { // getting attributes MDReqID mdReqID = message.getMDReqID(); MDReqRejReason mdReqRejReason = message.getMDReqRejReason(); // firing event Console.WriteLine("QuickFix44.MarketDataRequestReject: {0}, {1}", mdReqID, mdReqRejReason); }
private QuickFix.FIX44.MarketDataRequest QueryMarketDataRequest44() { MDReqID mdReqID = new MDReqID("MARKETDATAID"); SubscriptionRequestType subType = new SubscriptionRequestType(SubscriptionRequestType.SNAPSHOT); MarketDepth marketDepth = new MarketDepth(0); QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup marketDataEntryGroup = new QuickFix.FIX44.MarketDataRequest.NoMDEntryTypesGroup(); marketDataEntryGroup.Set(new MDEntryType(MDEntryType.BID)); QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup symbolGroup = new QuickFix.FIX44.MarketDataRequest.NoRelatedSymGroup(); symbolGroup.Set(new Symbol("LNUX")); QuickFix.FIX44.MarketDataRequest message = new QuickFix.FIX44.MarketDataRequest(mdReqID, subType, marketDepth); message.AddGroup(marketDataEntryGroup); message.AddGroup(symbolGroup); return(message); }
private FixSpec.MarketDataRequest QueryMarketDataRequest() { MDReqID mdReqId = new MDReqID("CLIAPP"); SubscriptionRequestType subType = new SubscriptionRequestType(SubscriptionRequestType.SNAPSHOT); MarketDepth marketDepth = new MarketDepth(0); FixSpec.MarketDataRequest.NoMDEntryTypesGroup marketDataEntryGroup = new FixSpec.MarketDataRequest.NoMDEntryTypesGroup(); marketDataEntryGroup.Set(new MDEntryType(MDEntryType.BID)); var symbolGroup = new FixSpec.MarketDataRequest.NoRelatedSymGroup(); symbolGroup.Set(new Symbol("EURUSD")); var message = new FixSpec.MarketDataRequest(mdReqId, subType, marketDepth); message.AddGroup(marketDataEntryGroup); message.AddGroup(symbolGroup); return(message); }
public QuickFix.FIX42.MarketDataRequest QueryMarketDataRequest42(string productName) { MDReqID mdReqID = new MDReqID("MARKETDATAID"); SubscriptionRequestType subType = new SubscriptionRequestType(SubscriptionRequestType.SNAPSHOT_PLUS_UPDATES); MarketDepth marketDepth = new MarketDepth(1); QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup marketDataEntryGroup = new QuickFix.FIX42.MarketDataRequest.NoMDEntryTypesGroup(); marketDataEntryGroup.Set(new MDEntryType(MDEntryType.BID)); QuickFix.FIX42.MarketDataRequest.NoRelatedSymGroup symbolGroup = new QuickFix.FIX42.MarketDataRequest.NoRelatedSymGroup(); symbolGroup.Set(new Symbol(productName)); symbolGroup.Set(new SecurityExchange("*")); symbolGroup.Set(new SecurityType(SecurityType.COMMON_STOCK)); QuickFix.FIX42.MarketDataRequest message = new QuickFix.FIX42.MarketDataRequest(mdReqID, subType, marketDepth); message.AddGroup(marketDataEntryGroup); message.AddGroup(symbolGroup); return(message); }