예제 #1
0
        public CTableExt_OrderBook(string name, IDealingServerForTableExt_OrderBook client,
                                   CStockBoxASTS stockBox, CListInstruments listInstruments)
            : base(name, client)
        {
            _stockBox        = stockBox;
            _listInstruments = listInstruments;

            client.IsStockOnline = true;
            client.EvStockOnline.Set();
        }
        public override void Process()
        {
            try
            {
                base.Process();
                //tempo check

                Instruments.WaitInstrumentsLoaded();
                _sessionBox.OnInstrumentLoaded();



                CreateSnapshoters();

                _dealBox  = new CDealBoxASTS(this);
                _stockBox = new CStockBoxASTS(this, 100);



                _stockConnector = new CASTSConnectorSingle(this);

                _positionsBoxASTS = new CPosistionsBoxASTS(this);

                EvPosOnline.Set();


                CreateTCPServerAndTradersDispatcher();

                WaitTradeDisableByTimeLoaded();
                UpdateBotsDisableTradingByTime();

                WaitDataLoadedFromDB();
                SendSynchronizeDataToBots();
                StartTradeManagerServer();
            }
            catch (Exception e)
            {
                Error("Error", e);
            }
        }