From 9d91a4a298cdee8318b60dd9f71ca342acb6d1e0 Mon Sep 17 00:00:00 2001 From: Matthias Date: Wed, 14 May 2025 20:14:10 +0200 Subject: [PATCH] fix: default max_open_trades to inf instead of -1 Without this, the auto-conversion doesn't backpopulate to the config closes #11752 --- freqtrade/configuration/config_validation.py | 2 +- freqtrade/resolvers/strategy_resolver.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/freqtrade/configuration/config_validation.py b/freqtrade/configuration/config_validation.py index 07a109bd7..678db63a3 100644 --- a/freqtrade/configuration/config_validation.py +++ b/freqtrade/configuration/config_validation.py @@ -104,7 +104,7 @@ def _validate_unlimited_amount(conf: dict[str, Any]) -> None: """ if ( not conf.get("edge", {}).get("enabled") - and conf.get("max_open_trades") == float("inf") + and (conf.get("max_open_trades") == float("inf") or conf.get("max_open_trades") == -1) and conf.get("stake_amount") == UNLIMITED_STAKE_AMOUNT ): raise ConfigurationError("`max_open_trades` and `stake_amount` cannot both be unlimited.") diff --git a/freqtrade/resolvers/strategy_resolver.py b/freqtrade/resolvers/strategy_resolver.py index b56ed8e11..0358ef5de 100644 --- a/freqtrade/resolvers/strategy_resolver.py +++ b/freqtrade/resolvers/strategy_resolver.py @@ -79,7 +79,7 @@ class StrategyResolver(IResolver): ("ignore_buying_expired_candle_after", 0), ("position_adjustment_enable", False), ("max_entry_position_adjustment", -1), - ("max_open_trades", -1), + ("max_open_trades", float("inf")), ] for attribute, default in attributes: StrategyResolver._override_attribute_helper(strategy, config, attribute, default)