Пример #1
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.a7Ihfu5o5v.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #2
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.e29hvGfn75.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #3
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.e29hvGfn75.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #4
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.Nu3te8VJKu.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #5
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.gnNQN8mf1p.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #6
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.wMshSsQU99.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #7
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.wMshSsQU99.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #8
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.EcMUJTqSCk.Add((object) group);
   ++this.NoRelatedSym;
 }
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.R77yiRKrQm.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #10
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.EcMUJTqSCk.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #11
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.Nu3te8VJKu.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #12
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.R77yiRKrQm.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #13
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.a7Ihfu5o5v.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #14
0
 private static void DoFixRequest(IMarketDataProvider provider, Instrument instrument, MarketDataType type, char subCh, string suffix)
 {
     FIXMarketDataRequest request = new FIXMarketDataRequest();
     request.MDReqID = DataManager.GetRequestId();
     request.SubscriptionRequestType = subCh;
     switch (type)
     {
         case MarketDataType.Trade:
             request.AddGroup(new FIXMDEntryTypesGroup('2'));
             break;
         case MarketDataType.Quote:
             request.AddGroup(new FIXMDEntryTypesGroup('0'));
             request.AddGroup(new FIXMDEntryTypesGroup('1'));
             request.MarketDepth = 1;  // Top of Book
             break;
         case MarketDataType.MarketDepth:
             request.AddGroup(new FIXMDEntryTypesGroup('0'));
             request.AddGroup(new FIXMDEntryTypesGroup('1'));
             request.MarketDepth = 0;  // Full Book
             break;
     }
     if (!instrument.ContainsField(15))
         instrument.Currency = Framework.Configuration.DefaultCurrency;
     FIXRelatedSymGroup symGrp = new FIXRelatedSymGroup();
     request.AddGroup(symGrp);
     symGrp.Symbol = instrument.Symbol;
     symGrp.SecurityType = instrument.SecurityType;
     symGrp.SecurityExchange = instrument.SecurityExchange;
     symGrp.Currency = instrument.Currency;
     symGrp.SecurityID = instrument.SecurityID;
     symGrp.SecurityIDSource = instrument.SecurityIDSource;
     symGrp.MaturityDate = instrument.MaturityDate;
     symGrp.MaturityMonthYear = instrument.MaturityMonthYear;
     symGrp.StrikePrice = instrument.StrikePrice;
     symGrp.PutOrCall = ((FIXInstrument)instrument).PutOrCall;
     foreach (FIXSecurityAltIDGroup group2 in instrument.SecurityAltIDGroup)
         symGrp.AddGroup(group2);
     symGrp.SetStringValue(10001, suffix);
     if (provider == ProviderManager.MarketDataSimulator)
     {
         provider.SendMarketDataRequest(request);
     }
     else
     {
         switch (subCh)
         {
             case MARKET_DATA_SUBSCRIBE:
                 bool flag1 = false;
                 lock (DataManager.providers)
                 {
                     Hashtable local_4 = DataManager.providers[provider] as Hashtable;
                     if (local_4 == null)
                     {
                         local_4 = new Hashtable();
                         DataManager.providers.Add(provider, local_4);
                     }
                     Hashtable local_5 = local_4[instrument] as Hashtable;
                     if (local_5 == null)
                     {
                         local_5 = new Hashtable();
                         local_4.Add(instrument, local_5);
                     }
                     RequestItem local_6 = local_5[type] as RequestItem;
                     if (local_6 == null)
                     {
                         local_6 = new RequestItem(request);
                         local_5.Add(type, local_6);
                         flag1 = true;
                     }
                     RequestItem temp_91 = local_6;
                     int temp_94 = temp_91.GetRequestId() + 1;
                     temp_91.SetRequestId(temp_94);
                 }
                 if (!flag1)
                     break;
                 provider.SendMarketDataRequest(request);
                 break;
             case MARKET_DATA_UNSUBSCRIBE:
                 bool canSend = false;
                 string msg = null;
                 lock (DataManager.providers)
                 {
                     Hashtable local_10 = DataManager.providers[provider] as Hashtable;
                     if (local_10 != null)
                     {
                         Hashtable local_11 = local_10[instrument] as Hashtable;
                         if (local_11 != null)
                         {
                             RequestItem local_12 = local_11[type] as RequestItem;
                             if (local_12 != null)
                             {
                                 RequestItem temp_152 = local_12;
                                 int temp_155 = temp_152.GetRequestId() - 1;
                                 temp_152.SetRequestId(temp_155);
                                 if (local_12.GetRequestId() == 0)
                                 {
                                     local_11.Remove(type);
                                     if (local_11.Count == 0)
                                     {
                                         local_10.Remove(instrument);
                                         if (local_10.Count == 0)
                                             DataManager.providers.Remove(provider);
                                     }
                                     canSend = true;
                                 }
                             }
                             else
                                 msg = "No this RequestItem";
                         }
                         else
                             msg = "No Request for this instrument";
                     }
                     else
                         msg = "No Request for this provider";
                 }
                 if (msg != null)
                     DataManager.LogRequestMessage(provider, instrument, type, msg);
                 if (!canSend)
                     break;
                 provider.SendMarketDataRequest(request);
                 break;
         }
     }
 }
Пример #15
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.gnNQN8mf1p.Add((object)group);
     ++this.NoRelatedSym;
 }
Пример #16
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
   this.R0vAvFIYW5.Add((object) group);
   ++this.NoRelatedSym;
 }
Пример #17
0
 public void AddGroup(FIXRelatedSymGroup group)
 {
     this.R0vAvFIYW5.Add((object)group);
     ++this.NoRelatedSym;
 }