Beispiel #1
0
 /// <summary>
 /// When User Subscribe to New Symbol.
 /// </summary>
 /// <param name="security"></param>
 private void SubscribeToNewSymbol(SecurityPermissions security)
 {
     if (Logger.IsInfoEnabled)
     {
         Logger.Info(security.ToString(), _oType.FullName, "SubscribeToNewSymbol");
     }
     if (!SecurityStatDictionary[SelectedProvider.ProviderName].Any(x => x.Symbol == security.Security.Symbol))
     {
         SecutiryList.Add(security);
         SecurityStatDictionary[SelectedProvider.ProviderName].Add(new SecurityStatisticsViewModel
         {
             Symbol = security.Security.Symbol, Id = security.Id, ProviderName = SelectedProvider.ProviderName
         });
         ReloadList(SelectedProvider);
     }
 }
Beispiel #2
0
        /// <summary>
        /// Unsubscribe the selected security from gridview.
        /// </summary>
        private void UnsubscribeSecurity()
        {
            try
            {
                Unsubscribe unsubscribe = new Unsubscribe();
                Subscribe   subscribe   = SecutiryList.Single(s => s.Id == SelectedSecurity.Id);
                unsubscribe.Security = subscribe.Security;
                if (Logger.IsInfoEnabled)
                {
                    Logger.Info(unsubscribe.ToString(), _oType.FullName, "UnsubscribeSecurity");
                }
                unsubscribe.Id = subscribe.Id;

                unsubscribe.MarketDataProvider = SelectedProvider.ProviderName;
                var temp = SecurityStatDictionary[SelectedProvider.ProviderName];
                var selectedRowOfGrid = temp.Single(x => x.Id == unsubscribe.Id);

                EventSystem.Publish <Unsubscribe>(unsubscribe);
                EventSystem.Publish <UnsubscribeBars>(new UnsubscribeBars
                {
                    UnSubscribeBarDataRequest = new BarDataRequest
                    {
                        Id = unsubscribe.Id,
                        MarketDataProvider = unsubscribe.MarketDataProvider,
                        Security           = unsubscribe.Security,
                        BarFormat          = selectedRowOfGrid.BarSettingView.BarSettingViewModel.SelectedFormate,
                        BarPriceType       = selectedRowOfGrid.BarSettingView.BarSettingViewModel.SelectedType,
                        BarLength          = selectedRowOfGrid.BarSettingView.BarSettingViewModel.BarLength,
                        PipSize            = selectedRowOfGrid.BarSettingView.BarSettingViewModel.PipSize,
                    }
                });
                SecutiryList.Remove(subscribe);
                SecurityStatDictionary[SelectedProvider.ProviderName].Remove(
                    SecurityStatDictionary[SelectedProvider.ProviderName].Single(x => x.Id == unsubscribe.Id));
                ReloadList(SelectedProvider);
            }
            catch (Exception exception)
            {
                Logger.Error(exception, _oType.FullName, "UnsubscribeSecurity");
            }
        }