From 5a43dd4766d4f0bb27df25f70dbb747629ecfe12 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 9 Jul 2023 15:09:03 +0200 Subject: [PATCH] don't hard-default `--timeframes` via argparse --- freqtrade/commands/cli_options.py | 1 - freqtrade/commands/data_commands.py | 4 +++- freqtrade/constants.py | 1 + freqtrade/data/history/history_utils.py | 5 ++++- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/freqtrade/commands/cli_options.py b/freqtrade/commands/cli_options.py index 0787bdc6b..7ca224844 100755 --- a/freqtrade/commands/cli_options.py +++ b/freqtrade/commands/cli_options.py @@ -457,7 +457,6 @@ AVAILABLE_CLI_OPTIONS = { '-t', '--timeframes', help='Specify which tickers to download. Space-separated list. ' 'Default: `1m 5m`.', - default=['1m', '5m'], nargs='+', ), "prepend_data": Arg( diff --git a/freqtrade/commands/data_commands.py b/freqtrade/commands/data_commands.py index 6d26b3ba9..5341009f2 100644 --- a/freqtrade/commands/data_commands.py +++ b/freqtrade/commands/data_commands.py @@ -4,7 +4,7 @@ from collections import defaultdict from typing import Any, Dict from freqtrade.configuration import TimeRange, setup_utils_configuration -from freqtrade.constants import DATETIME_PRINT_FORMAT, Config +from freqtrade.constants import DATETIME_PRINT_FORMAT, DL_DATA_TIMEFRAMES, Config from freqtrade.data.converter import convert_ohlcv_format, convert_trades_format from freqtrade.data.history import convert_trades_to_ohlcv, download_data_main from freqtrade.enums import CandleType, RunMode, TradingMode @@ -57,6 +57,8 @@ def start_convert_trades(args: Dict[str, Any]) -> None: raise OperationalException( "Downloading data requires a list of pairs. " "Please check the documentation on how to configure this.") + if 'timeframes' not in config: + config['timeframes'] = DL_DATA_TIMEFRAMES # Init exchange exchange = ExchangeResolver.load_exchange(config, validate=False) diff --git a/freqtrade/constants.py b/freqtrade/constants.py index de1e7aa51..5bb619185 100644 --- a/freqtrade/constants.py +++ b/freqtrade/constants.py @@ -66,6 +66,7 @@ TELEGRAM_SETTING_OPTIONS = ['on', 'off', 'silent'] WEBHOOK_FORMAT_OPTIONS = ['form', 'json', 'raw'] FULL_DATAFRAME_THRESHOLD = 100 CUSTOM_TAG_MAX_LENGTH = 255 +DL_DATA_TIMEFRAMES = ['1m', '5m'] ENV_VAR_PREFIX = 'FREQTRADE__' diff --git a/freqtrade/data/history/history_utils.py b/freqtrade/data/history/history_utils.py index cca2cfa72..39556889e 100644 --- a/freqtrade/data/history/history_utils.py +++ b/freqtrade/data/history/history_utils.py @@ -7,7 +7,8 @@ from typing import Dict, List, Optional, Tuple from pandas import DataFrame, concat from freqtrade.configuration import TimeRange -from freqtrade.constants import DATETIME_PRINT_FORMAT, DEFAULT_DATAFRAME_COLUMNS, Config +from freqtrade.constants import (DATETIME_PRINT_FORMAT, DEFAULT_DATAFRAME_COLUMNS, + DL_DATA_TIMEFRAMES, Config) from freqtrade.data.converter import (clean_ohlcv_dataframe, ohlcv_to_dataframe, trades_remove_duplicates, trades_to_ohlcv) from freqtrade.data.history.idatahandler import IDataHandler, get_datahandler @@ -512,6 +513,8 @@ def download_data_main(config: Config) -> None: ] expanded_pairs = dynamic_expand_pairlist(config, available_pairs) + if 'timeframes' not in config: + config['timeframes'] = DL_DATA_TIMEFRAMES # Manual validations of relevant settings if not config['exchange'].get('skip_pair_validation', False):