static void SubscribeVIXES(string mYY) { // Subscribe VIX/ES string m0 = mYY; string m1 = GDate.AddMonths(mYY, 1); string m2 = GDate.AddMonths(mYY, 2); string m3 = GDate.AddMonths(mYY, 3); string m4 = GDate.AddMonths(mYY, 4); string m5 = GDate.AddMonths(mYY, 5); m_updates.SetId("vix", "VIX.XO"); m_prices.SubscribePrices("VIX.XO"); m_updates.SetId("vx0", "@VX" + m0); m_updates.SetId("vx1", "@VX" + m1); m_updates.SetId("vx2", "@VX" + m2); m_updates.SetId("vx3", "@VX" + m3); m_updates.SetId("vx4", "@VX" + m4); m_updates.SetId("vx5", "@VX" + m5); m_prices.SubscribePrices("@VX" + m0); m_prices.SubscribePrices("@VX" + m1); m_prices.SubscribePrices("@VX" + m2); m_prices.SubscribePrices("@VX" + m3); m_prices.SubscribePrices("@VX" + m4); m_prices.SubscribePrices("@VX" + m5); string es_m0 = "H18"; m_updates.SetId("spu", "@ES" + es_m0); m_prices.SubscribePrices("@ES" + es_m0); }
private decimal m_vixDiscount; // VIX.XO - @VX (front month) public PricesConsole(string ip, int port, bool publish = false) { m_es = "@ESH18"; // front-month ES symbol // Populate the VX and Contango month strings m_vxMonth[0] = "H18"; // front-month @VX ("mYY" only, not full symbol) for (int i = 1; i < MONTH_COUNT; ++i) { m_vxMonth[i] = GDate.AddMonths(m_vxMonth[i - 1], 1); m_contangoMonth[i - 1] = m_vxMonth[i - 1] + m_vxMonth[i]; } //m_pubsub = new RedisIQFeed(ip, port); m_pubsub = new ZmqIQFeed(); m_pubsub.StartPriceSubscriber(ip, port); m_pubsub.OnSubscriberReceive += M_subscriber_Receive; //m_publisher = new ZMQPublisher(); //m_subscriber = new ZMQSubscriber(); //m_subscriberClientTask = Task.Factory.StartNew(() => m_subscriber.SubscriptionLoop()); Task.Run(() => DisplaySubs()); Task.Run(() => DisplayVIXES()); if (publish) { // Load symbols and spread formulas (and subscribe to these symbols) ReloadSymbols(); ReloadSpreads(); } }
static void SubscribeCopper(string mYY) { // Subscribe CME/LME Copper string m0 = mYY; string m1 = GDate.AddMonths(mYY, 1); m_updates.SetId("hg0", "QHG" + m0); m_updates.SetId("hg1", "QHG" + m1); m_updates.SetId("lme", "M.CU3=LX"); m_prices.SubscribePrices("QHG" + m0); m_prices.SubscribePrices("QHG" + m1); m_prices.SubscribePrices("M.CU3=LX"); }