Example #1
0
        //сервис. менеджмент первичных настроек

        /// <summary>
        ///  конструктор
        /// </summary>
        public OandaServer(bool neadToLoadTicks)
        {
            ClientIdInSystem = "";
            Token            = "";
            _neadToSaveTicks = false;
            ServerType       = ServerType.Oanda;
            ServerStatus     = ServerConnectStatus.Disconnect;

            Load();

            _tickStorage                  = new ServerTickStorage(this);
            _tickStorage.NeadToSave       = NeadToSaveTicks;
            _tickStorage.TickLoadedEvent += _tickStorage_TickLoadedEvent;
            _tickStorage.LogMessageEvent += SendLogMessage;

            if (neadToLoadTicks)
            {
                _tickStorage.LoadTick();
            }

            _ordersToExecute    = new ConcurrentQueue <Order>();
            _ordersToCansel     = new ConcurrentQueue <Order>();
            _ordersToSend       = new ConcurrentQueue <Order>();
            _tradesToSend       = new ConcurrentQueue <List <Trade> >();
            _portfolioToSend    = new ConcurrentQueue <List <Portfolio> >();
            _securitiesToSend   = new ConcurrentQueue <List <Security> >();
            _myTradesToSend     = new ConcurrentQueue <MyTrade>();
            _newServerTime      = new ConcurrentQueue <DateTime>();
            _candleSeriesToSend = new ConcurrentQueue <CandleSeries>();
            _marketDepthsToSend = new ConcurrentQueue <MarketDepth>();


            Thread ordersExecutor = new Thread(ExecutorOrdersThreadArea);

            ordersExecutor.CurrentCulture = new CultureInfo("ru-RU");
            ordersExecutor.IsBackground   = true;
            ordersExecutor.Start();

            _logMaster = new Log("OandaServer");
            _logMaster.Listen(this);

            _serverStatusNead = ServerConnectStatus.Disconnect;

            _threadPrime = new Thread(PrimeThreadArea);
            _threadPrime.CurrentCulture = new CultureInfo("ru-RU");
            _threadPrime.IsBackground   = true;
            _threadPrime.Start();

            Thread threadDataSender = new Thread(SenderThreadArea);

            threadDataSender.CurrentCulture = CultureInfo.InvariantCulture;
            threadDataSender.IsBackground   = true;
            threadDataSender.Start();

            Thread watcherConnectThread = new Thread(ReconnectThread);

            watcherConnectThread.IsBackground = true;
            watcherConnectThread.Start();
        }
Example #2
0
//сервис. менеджмент первичных настроек

        /// <summary>
        ///  конструктор
        /// </summary>
        public KrakenServer(bool neadLoadTrades)
        {
            PrivateKey               = "";
            PublicKey                = "";
            _neadToSaveTicks         = false;
            _countDaysTickNeadToSave = 2;
            ServerType               = ServerType.Kraken;
            ServerStatus             = ServerConnectStatus.Disconnect;
            LoadDateType             = KrakenDateType.OnlyTrades;
            LeverageType             = "none";
            Load();
            LoadProxies();

            _tickStorage                  = new ServerTickStorage(this);
            _tickStorage.NeadToSave       = NeadToSaveTicks;
            _tickStorage.DaysToLoad       = CountDaysTickNeadToSave;
            _tickStorage.TickLoadedEvent += _tickStorage_TickLoadedEvent;
            _tickStorage.LogMessageEvent += SendLogMessage;

            if (neadLoadTrades)
            {
                _tickStorage.LoadTick();
            }

            _ordersToExecute    = new ConcurrentQueue <Order>();
            _ordersToCansel     = new ConcurrentQueue <Order>();
            _ordersToSend       = new ConcurrentQueue <Order>();
            _tradesToSend       = new ConcurrentQueue <List <OsEngine.Entity.Trade> >();
            _portfolioToSend    = new ConcurrentQueue <List <Portfolio> >();
            _securitiesToSend   = new ConcurrentQueue <List <Security> >();
            _myTradesToSend     = new ConcurrentQueue <MyTrade>();
            _newServerTime      = new ConcurrentQueue <DateTime>();
            _candleSeriesToSend = new ConcurrentQueue <CandleSeries>();
            _marketDepthsToSend = new ConcurrentQueue <MarketDepth>();
            _bidAskToSend       = new ConcurrentQueue <BidAskSender>();

            Thread ordersExecutor = new Thread(ExecutorOrdersThreadArea);

            ordersExecutor.CurrentCulture = new CultureInfo("ru-RU");
            ordersExecutor.IsBackground   = true;
            ordersExecutor.Start();

            _logMaster = new Log("KrakenServer");
            _logMaster.Listen(this);

            _serverStatusNead = ServerConnectStatus.Disconnect;

            _threadPrime = new Thread(PrimeThreadArea);
            _threadPrime.CurrentCulture = new CultureInfo("ru-RU");
            _threadPrime.IsBackground   = true;
            _threadPrime.Start();

            Thread threadDataSender = new Thread(SenderThreadArea);

            threadDataSender.CurrentCulture = CultureInfo.InvariantCulture;
            threadDataSender.IsBackground   = true;
            threadDataSender.Start();
        }
Example #3
0
        /// <summary>
        /// конструктор
        /// </summary>
        public NinjaTraderServer(bool neadToLoadTicks)
        {
            ServerStatus = ServerConnectStatus.Disconnect;
            ServerType   = ServerType.NinjaTrader;

            ServerAdress = "localhost";
            Port         = "11000";

            Load();

            _ordersToSend       = new ConcurrentQueue <Order>();
            _tradesToSend       = new ConcurrentQueue <List <Trade> >();
            _portfolioToSend    = new ConcurrentQueue <List <Portfolio> >();
            _securitiesToSend   = new ConcurrentQueue <List <Security> >();
            _myTradesToSend     = new ConcurrentQueue <MyTrade>();
            _newServerTime      = new ConcurrentQueue <DateTime>();
            _candleSeriesToSend = new ConcurrentQueue <CandleSeries>();
            _marketDepthsToSend = new ConcurrentQueue <MarketDepth>();
            _bidAskToSend       = new ConcurrentQueue <BidAskSender>();
            _ordersToExecute    = new ConcurrentQueue <Order>();
            _ordersToCansel     = new ConcurrentQueue <Order>();

            _tickStorage                  = new ServerTickStorage(this);
            _tickStorage.NeadToSave       = NeadToSaveTicks;
            _tickStorage.DaysToLoad       = CountDaysTickNeadToSave;
            _tickStorage.TickLoadedEvent += _tickStorage_TickLoadedEvent;
            _tickStorage.LogMessageEvent += SendLogMessage;

            if (neadToLoadTicks)
            {
                _tickStorage.LoadTick();
            }

            Thread ordersExecutor = new Thread(ExecutorOrdersThreadArea);

            ordersExecutor.CurrentCulture = new CultureInfo("ru-RU");
            ordersExecutor.IsBackground   = true;
            ordersExecutor.Start();

            _logMaster = new Log("NinjaTraderServer");
            _logMaster.Listen(this);

            _serverStatusNead = ServerConnectStatus.Disconnect;

            _threadPrime = new Thread(PrimeThreadArea);
            _threadPrime.CurrentCulture = new CultureInfo("ru-RU");
            _threadPrime.IsBackground   = true;
            _threadPrime.Start();

            Thread threadDataSender = new Thread(SenderThreadArea);

            threadDataSender.CurrentCulture = new CultureInfo("ru-RU");
            threadDataSender.IsBackground   = true;
            threadDataSender.Start();
        }
        /// <summary>
        /// конструктор
        /// </summary>
        public AstsBridgeServer(bool neadToLoadTicks)
        {
            ServerAdress = "91.208.232.211";

            ServerStatus = ServerConnectStatus.Disconnect;
            ServerType   = ServerType.AstsBridge;
            Dislocation  = AstsDislocation.Internet;

            _countDaysTickNeadToSave = 3;
            _neadToSaveTicks         = true;

            Load();

            _logMaster = new Log("AstsBridgeServer", StartProgram.IsOsTrader);
            _logMaster.Listen(this);

            _serverStatusNead = ServerConnectStatus.Disconnect;

            _threadPrime = new Thread(PrimeThreadArea);
            _threadPrime.CurrentCulture = new CultureInfo("ru-RU");
            _threadPrime.IsBackground   = true;
            _threadPrime.Start();

            Thread threadDataSender = new Thread(SenderThreadArea);

            threadDataSender.CurrentCulture = new CultureInfo("ru-RU");
            threadDataSender.IsBackground   = true;
            threadDataSender.Start();

            _ordersToSend       = new ConcurrentQueue <Order>();
            _tradesToSend       = new ConcurrentQueue <List <Trade> >();
            _portfolioToSend    = new ConcurrentQueue <List <Portfolio> >();
            _securitiesToSend   = new ConcurrentQueue <List <Security> >();
            _myTradesToSend     = new ConcurrentQueue <MyTrade>();
            _newServerTime      = new ConcurrentQueue <DateTime>();
            _candleSeriesToSend = new ConcurrentQueue <CandleSeries>();
            _marketDepthsToSend = new ConcurrentQueue <MarketDepth>();
            _bidAskToSend       = new ConcurrentQueue <BidAskSender>();
            _levelOneToSend     = new ConcurrentQueue <SecurityLevelOne>();
            _tradesTableToSend  = new ConcurrentQueue <List <Trade> >();

            if (neadToLoadTicks)
            {
                _tickStorage                  = new ServerTickStorage(this);
                _tickStorage.NeadToSave       = NeadToSaveTicks;
                _tickStorage.DaysToLoad       = CountDaysTickNeadToSave;
                _tickStorage.TickLoadedEvent += _tickStorage_TickLoadedEvent;
                _tickStorage.LogMessageEvent += SendLogMessage;
                _tickStorage.LoadTick();
            }
        }
Example #5
0
// сервис
        /// <summary>
        /// конструктор
        /// </summary>
        public PlazaServer(bool neadToLoadTicks)
        {
            _neadToSaveTicks         = false;
            _countDaysTickNeadToSave = 3;
            ServerStatus             = ServerConnectStatus.Disconnect;
            ServerType = ServerType.Plaza;
            _logMaster = new Log("PlazaServer");
            _logMaster.Listen(this);
            KeyToProggram = "11111111";
            Load();

            if (neadToLoadTicks)
            {
                _tickStorage                  = new ServerTickStorage(this);
                _tickStorage.NeadToSave       = NeadToSaveTicks;
                _tickStorage.DaysToLoad       = CountDaysTickNeadToSave;
                _tickStorage.TickLoadedEvent += _tickStorage_TickLoadedEvent;
                _tickStorage.LogMessageEvent += SendNewLogMessage;
                _tickStorage.LoadTick();
            }
        }