예제 #1
0
        /// <summary>
        /// Запустить накопление маркет-данных.
        /// </summary>
        public void Start()
        {
            Connector = _createConnector();

            Connector.DoIf <IConnector, Connector>(t =>
            {
                var connectorSettings = _task.Settings as ConnectorHydraTaskSettings;

                var settings = t.ReConnectionSettings;

                if (connectorSettings == null)
                {
                    settings.ConnectionSettings.AttemptCount   = -1;
                    settings.ConnectionSettings.ReAttemptCount = -1;

                    settings.ExportSettings.AttemptCount   = -1;
                    settings.ExportSettings.ReAttemptCount = -1;
                }
                else
                {
                    settings.Load(connectorSettings.ReConnectionSettings.Save());

                    t.LogLevel = _task.LogLevel;
                }

                _task.InitTrader(t);
            });

            Connector.Connect();
        }
예제 #2
0
        /// <summary>
        /// Запустить накопление маркет-данных.
        /// </summary>
        public void Start()
        {
            Connector = _createConnector();

            if (!_task.IsExecLogEnabled() && Connector.TransactionAdapter != null)
            {
                if (Connector.TransactionAdapter != Connector.MarketDataAdapter)
                {
                    Connector.Adapter.InnerAdapters.Remove(Connector.TransactionAdapter);
                }
                else
                {
                    var adapter = Connector.TransactionAdapter;

                    adapter.RemoveSupportedMessage(MessageTypes.OrderCancel);
                    adapter.RemoveSupportedMessage(MessageTypes.OrderGroupCancel);
                    adapter.RemoveSupportedMessage(MessageTypes.OrderPairReplace);
                    adapter.RemoveSupportedMessage(MessageTypes.OrderRegister);
                    adapter.RemoveSupportedMessage(MessageTypes.OrderReplace);
                    adapter.RemoveSupportedMessage(MessageTypes.OrderStatus);
                    adapter.RemoveSupportedMessage(MessageTypes.Portfolio);
                    adapter.RemoveSupportedMessage(MessageTypes.PortfolioLookup);
                    adapter.RemoveSupportedMessage(MessageTypes.Position);
                }
            }

            Connector.DoIf <IConnector, Connector>(t =>
            {
                var connectorSettings = _task.Settings as ConnectorHydraTaskSettings;

                var settings = t.ReConnectionSettings;

                if (connectorSettings == null)
                {
                    settings.AttemptCount   = -1;
                    settings.ReAttemptCount = -1;
                }
                else
                {
                    settings.Load(connectorSettings.ReConnectionSettings.Save());

                    t.LogLevel = _task.LogLevel;
                }

                _task.InitTrader(t);
            });

            Connector.Connect();
        }
예제 #3
0
        /// <summary>
        /// Запустить накопление маркет-данных.
        /// </summary>
        public void Start()
        {
            Connector = _createConnector();

            if (!_task.IsExecLogEnabled() && Connector.TransactionAdapter != null)
            {
                if (Connector.TransactionAdapter != Connector.MarketDataAdapter)
                {
                    Connector.Adapter.InnerAdapters.Remove(Connector.TransactionAdapter);
                }
                else
                {
                    Connector.TransactionAdapter.RemoveTransactionalSupport();
                }
            }

            Connector.DoIf <IConnector, Connector>(t =>
            {
                var connectorSettings = _task.Settings as ConnectorHydraTaskSettings;

                var settings = t.ReConnectionSettings;

                if (connectorSettings == null)
                {
                    settings.AttemptCount   = -1;
                    settings.ReAttemptCount = -1;
                }
                else
                {
                    settings.Load(connectorSettings.ReConnectionSettings.Save());

                    t.LogLevel = _task.LogLevel;
                }

                _task.InitTrader(t);
            });

            Connector.Connect();
        }