diff --git a/freqtrade/data/history/history_utils.py b/freqtrade/data/history/history_utils.py index a6af99ca9..ee9915385 100644 --- a/freqtrade/data/history/history_utils.py +++ b/freqtrade/data/history/history_utils.py @@ -388,10 +388,14 @@ def refresh_backtest_ohlcv_data( for timeframe in timeframes: # Get fast candles via parallel method on first loop through per timeframe # and candle type. Downloads all the pairs in the list and stores them. - if not no_parallel_download and ( - ((pair, timeframe, candle_type) not in fast_candles) - and (erase is False) - and (prepend is False) + if ( + not no_parallel_download + and exchange.get_option("download_data_parallel_quick", True) + and ( + ((pair, timeframe, candle_type) not in fast_candles) + and (erase is False) + and (prepend is False) + ) ): fast_candles.update( _download_all_pairs_history_parallel( diff --git a/freqtrade/exchange/exchange.py b/freqtrade/exchange/exchange.py index e3fbde459..8ba2ef902 100644 --- a/freqtrade/exchange/exchange.py +++ b/freqtrade/exchange/exchange.py @@ -137,6 +137,7 @@ class Exchange: "ohlcv_has_history": True, # Some exchanges (Kraken) don't provide history via ohlcv "ohlcv_partial_candle": True, "ohlcv_require_since": False, + "download_data_parallel_quick": True, "always_require_api_keys": False, # purge API keys for Dry-run. Must default to false. # Check https://github.com/ccxt/ccxt/issues/10767 for removal of ohlcv_volume_currency "ohlcv_volume_currency": "base", # "base" or "quote" diff --git a/freqtrade/exchange/exchange_types.py b/freqtrade/exchange/exchange_types.py index d31863307..12320346a 100644 --- a/freqtrade/exchange/exchange_types.py +++ b/freqtrade/exchange/exchange_types.py @@ -25,6 +25,8 @@ class FtHas(TypedDict, total=False): ohlcv_volume_currency: str ohlcv_candle_limit_per_timeframe: dict[str, int] always_require_api_keys: bool + # allow disabling of parallel download-data for specific exchanges + download_data_parallel_quick: bool # Tickers tickers_have_quoteVolume: bool tickers_have_percentage: bool diff --git a/freqtrade/exchange/hyperliquid.py b/freqtrade/exchange/hyperliquid.py index a880a60df..74f7c5694 100644 --- a/freqtrade/exchange/hyperliquid.py +++ b/freqtrade/exchange/hyperliquid.py @@ -28,6 +28,7 @@ class Hyperliquid(Exchange): "stoploss_on_exchange": False, "exchange_has_overrides": {"fetchTrades": False}, "marketOrderRequiresPrice": True, + "download_data_parallel_quick": False, "ws_enabled": True, } _ft_has_futures: FtHas = {