public OctoBot(ICoreConfig config, bool ignoreConfig = false, bool resetTradingHistory = false) { StartTime = DateTimeOffset.Now; Config = config; ResetTradingHistory = resetTradingHistory; StartupConfig = config.DeepClone(); EditedConfig = config.DeepClone(); // tools: используется для альтернативных операций в ботом на лету (например, «backtesting» запускается из веб-интерфейса) Tools = new Dictionary <string, object>() { { ConfigVars.BOT_TOOLS_BACKTESTING, null }, { ConfigVars.BOT_TOOLS_STRATEGY_OPTIMIZER, null }, { ConfigVars.BOT_TOOLS_RECORDER, null } }; // уникальное значение сеанса aiohttp: инициализируется из геттера в задаче AioHttpSession = null; // metrics если включены MetricsHandler = null; // Logger loggingService = Application.Resolve <ILoggingService>(); Initializer = new Initializer(this); TaskManager = new TaskManager(this); ExchangeFactory = new ExchangeFactory(this, ignoreConfig); EvaluatorFactory = new EvaluatorFactory(this); }
async public Task Initialize() { await Initializer.Create(); TaskManager.InitAsyncLoop(); await ExchangeFactory.Create(); EvaluatorFactory.Create(); }