public NewOrderTest(Connector connector, FilterableSecurityProvider securityProvider) { InitializeComponent(); _connector = connector; Portfolios.Connector = connector; Securities.SecurityProvider = securityProvider; }
public MainWindow() { InitializeComponent(); _securityCtrls.Add(Security1, new ColorSettings { Position = Colors.Green, Buy = Colors.Green, Sell = Colors.Red, }); _securityCtrls.Add(Security2, new ColorSettings { Position = Colors.Blue, Buy = Colors.Teal, Sell = Colors.BlueViolet, }); _securityCtrls.Add(Security3, new ColorSettings { Position = Colors.Brown, Buy = Colors.Yellow, Sell = Colors.Brown, }); _securityCtrls.Add(Security4, new ColorSettings { Position = Colors.YellowGreen, Buy = Colors.Cyan, Sell = Colors.DeepPink, }); Chart.IsInteracted = true; //Chart.IsAutoRange = true; Chart.SubscribeIndicatorElement += Chart_SubscribeIndicatorElement; _securityProvider = new FilterableSecurityProvider(); _securityCtrls.ForEach(pair => pair.Key.SecurityProvider = _securityProvider); TimeFrame.ItemsSource = new[] { TimeSpan.FromTicks(1) }.Concat(FinamHistorySource.TimeFrames); TimeFrame.SelectedItem = TimeSpan.FromMinutes(5); Statistics.StatisticManager = _statisticManager; }
/// <summary> /// Initializes a new instance of the <see cref="SecurityPicker"/>. /// </summary> public SecurityPicker() { InitializeComponent(); _counterMask = Counter.Text; GuiDispatcher.GlobalDispatcher.AddPeriodicalAction(() => { if (!_isDirty) return; _isDirty = false; FilterSecurities(); }); GuiDispatcher.GlobalDispatcher.AddPeriodicalAction(() => { if (!_isCounterDirty) return; _isCounterDirty = false; UpdateCounter(); }); _excludeSecurities = new CachedSynchronizedSet<Security>(); _excludeSecurities.Added += s => SecurityProviderOnSecuritiesChanged(true, NotifyCollectionChangedAction.Add, s); _excludeSecurities.Removed += s => SecurityProviderOnSecuritiesChanged(true, NotifyCollectionChangedAction.Remove, s); _excludeSecurities.Cleared += () => SecurityProviderOnSecuritiesChanged(true, NotifyCollectionChangedAction.Reset, null); SecurityProvider = new FilterableSecurityProvider(); SecuritiesCtrl.SelectionMode = _defaultSelectionMode; UpdateCounter(); SecurityTypeCtrl.NullItem.Description = LocalizedStrings.Str1569; }
private void QuikConnectionMouseDoubleClick(object sender, RoutedEventArgs e) { if (_connector == null) { _connector = new Connector(); if (QuikCheckBox.IsChecked == true) { var quikTs = new LuaFixTransactionMessageAdapter(_connector.TransactionIdGenerator) { Login = "******", Password = "******".To<SecureString>(), Address = QuikTrader.DefaultLuaAddress, TargetCompId = "StockSharpTS", SenderCompId = "quik", ExchangeBoard = ExchangeBoard.Forts, Version = FixVersions.Fix44_Lua, RequestAllPortfolios = true, MarketData = FixMarketData.None, TimeZone = TimeHelper.Moscow }; var quikMd = new FixMessageAdapter(_connector.TransactionIdGenerator) { Login = "******", Password = "******".To<SecureString>(), Address = QuikTrader.DefaultLuaAddress, TargetCompId = "StockSharpMD", SenderCompId = "quik", ExchangeBoard = ExchangeBoard.Forts, Version = FixVersions.Fix44_Lua, RequestAllSecurities = true, MarketData = FixMarketData.MarketData, TimeZone = TimeHelper.Moscow }; quikMd.RemoveTransactionalSupport(); _connector.Adapter.InnerAdapters[quikMd.ToChannel(_connector, "Quik MD")] = 1; _connector.Adapter.InnerAdapters[quikTs.ToChannel(_connector, "Quik TS")] = 1; } if (SmartComCheckBox.IsChecked == true) { var smartCom = new SmartComMessageAdapter(_connector.TransactionIdGenerator) { Login = Login.Text, Password = Password.Password.To<SecureString>(), Address = Address.SelectedAddress, }; _connector.Adapter.InnerAdapters[smartCom.ToChannel(_connector, "SmartCOM")] = 0; } if (PlazaCheckBox.IsChecked == true) { var pool = new PlazaConnectionPool(); _connector.Adapter.InnerAdapters[new PlazaTransactionMessageAdapter(_connector.TransactionIdGenerator, pool) { ConnectionPoolSettings = { IsCGate = true, } }.ToChannel(_connector, "Plaza TS")] = 0; _connector.Adapter.InnerAdapters[new PlazaStreamMessageAdapter(_connector.TransactionIdGenerator, pool) { ConnectionPoolSettings = { IsCGate = true, } }.ToChannel(_connector, "Plaza MD")] = 0; } if (_connector.Adapter.InnerAdapters.Count == 0) { MessageBox.Show(this, LocalizedStrings.Str2971); return; } _securityProvider = new FilterableSecurityProvider(_connector); _connector.ConnectionError += error => this.GuiAsync(() => MessageBox.Show(this, error.ToString(), LocalizedStrings.Str2959)); _connector.Connect(); } else { Disconnect(); } }