From bd0c2518ff75a02da5446459a38a1ceca098e35a Mon Sep 17 00:00:00 2001 From: Guillaume De Saint Martin Date: Wed, 21 Aug 2024 00:19:40 +0200 Subject: [PATCH] [TradingModes] allow starting without trading mode --- octobot/storage/trading_metadata.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/octobot/storage/trading_metadata.py b/octobot/storage/trading_metadata.py index 51a478072..2ac71f43b 100644 --- a/octobot/storage/trading_metadata.py +++ b/octobot/storage/trading_metadata.py @@ -17,6 +17,7 @@ import numpy import octobot_commons.enums as common_enums +import octobot_commons.logging as commons_logging import octobot_commons.constants as commons_constants import octobot_commons.databases as commons_databases import octobot_commons.configuration as commons_configuration @@ -60,7 +61,15 @@ async def store_backtesting_run_metadata(exchange_managers, start_time, user_inp async def _get_trading_metadata(exchange_managers, run_start_time, user_inputs, run_dbs_identifier, is_backtesting, name) \ -> dict: - trading_mode = trading_api.get_trading_modes(exchange_managers[0])[0] + try: + trading_mode = trading_api.get_trading_modes(exchange_managers[0])[0] + except IndexError: + import tentacles.Trading.Mode + commons_logging.get_logger(__name__).debug( + f"Using {tentacles.Trading.Mode.BlankTradingMode.get_name()} as a fallback for metadata as " + f"no trading mode is selected" + ) + trading_mode = tentacles.Trading.Mode.BlankTradingMode(exchange_managers[0].config, exchange_managers[0]) multi_exchanges_data = await _get_multi_exchange_data(exchange_managers, is_backtesting) single_exchange_data = await _get_single_exchange_data( exchange_managers[0],