Example #1
0
        ///// <summary>
        ///// пример
        ///// </summary>
        ///// <param name="args"></param>
        //override public void Do(string[] args)
        //{
        //    //TradeConsole.ConsoleSetSize();
        //    //TradeConsole.LogAssemblyInfo(assemblies);
        //    //список доступных команд
        //    TradeConsole.ConsoleWriteCommands();
        //    Initialize();
        //    SetupStrategy(args);
        //    base.Do(args);
        //}

        /// <summary>
        /// пример переопределения
        /// Program.Sample1.Initialize()
        /// </summary>
        override public void Initialize()
        {
            Console.WriteLine("Program.Sample1.Initialize()");
            marketDataProvider     = new MarketDataProvider();
            rawTradingDataProvider = new RawTradingDataProvider(DefaultLogger.Instance);
            symbolsDataProvider    = new SymbolsDataProvider();
            traderBase             = new TraderBase(new SmartComOrderManager());
            adapter = new SmartComAdapter();

            SmartComHandlers.Instance.Add <_IStClient_DisconnectedEventHandler>(IsDisconnected);
            SmartComHandlers.Instance.Add <_IStClient_ConnectedEventHandler>(IsConnected);

            sendItemTrade = new SendItemOnTrade(TradingData.Instance, DefaultLogger.Instance);
            //ObservableQueue<Order> orderQueue = TradingData.Instance.Get<ObservableQueue<Order>>();
            //ObservableHashSet<Order> orderQueue = TradingData.Instance.Get<ObservableHashSet<Order>>();

            //sendItemOrder = new SendItemOnOrder(TradingData.Instance.Get<ObservableQueue<Order>>());
            //Отправляем данные клиентам
            {
                //sendItemBar.AddItemHandler(TradeConsole.ConsoleWriteLineBar);
                sendItemTrade.AddItemHandler(TradeConsole.ConsoleWriteLineTrade);
                //senderItemOrder.AddedItemHandler(TradeHubStarter.sendOrder);

                if (AppSettings.GetValue <bool>("SignalHub"))
                {
                    //отправляем через signalR
                    //sendItemBar.AddItemHandler(TradeHubStarter.sendBar);
                    sendItemTrade.AddItemHandler(TradeHubStarter.sendTrade);
                }
            }
        }
Example #2
0
        public void Setup()
        {
            this.stServerSingleton = new StServerMockSingleton();
            this.stServer          = this.stServerSingleton.Instance;
            this.handlers          = new SmartComHandlersDatabase();
            this.handlers.Add <_IStClient_ConnectedEventHandler>(ConnectedHandler);
            this.handlers.Add <_IStClient_DisconnectedEventHandler>(DisconnectedHandler);
            this.binder     = new SmartComBinder(this.stServer, this.handlers, new NullLogger());
            this.connector  = new SmartComConnector(this.stServer, this.handlers, new NullLogger());
            this.subscriber = new SmartComSubscriber(this.stServer, new NullLogger());
            this.subscriber.Portfolios.Add("ST88888-RF-01");
            this.subscriber.Ticks.Add("RTS-6.13_FT");
            this.subscriber.Quotes.Add("RTS-6.13_FT");
            this.subscriber.BidsAndAsks.Add("RTS-6.13_FT");

            this.trader = new SmartComAdapter(this.connector,
                                              this.handlers,
                                              this.binder,
                                              this.subscriber,
                                              this.stServerSingleton,
                                              new NullLogger(),
                                              1);

            Assert.AreEqual(0, this.subscriber.SubscriptionsCounter);
        }