From 4db3b7ad078a408e65ea60cc5dd8f26469688c00 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Fri, 21 Nov 2025 20:31:15 +0100 Subject: [PATCH] refactor(qav3): code cleanups MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../freqaimodels/QuickAdapterRegressorV3.py | 2 +- .../user_data/strategies/QuickAdapterV3.py | 14 +++++++------- quickadapter/user_data/strategies/Utils.py | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py index 2768d3c..1c8cdbf 100644 --- a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py +++ b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py @@ -73,7 +73,7 @@ class QuickAdapterRegressorV3(BaseRegressionModel): https://github.com/sponsors/robcaulk """ - version = "3.7.123" + version = "3.7.124" _SQRT_2: Final[float] = np.sqrt(2.0) diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index e2764ec..6cf88b2 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -35,6 +35,7 @@ from Utils import ( SMOOTHING_METHODS, WEIGHT_STRATEGIES, TrendDirection, + WeightStrategy, alligator, bottom_change_percent, calculate_n_extrema, @@ -104,7 +105,7 @@ class QuickAdapterV3(IStrategy): _TRADING_MODES: Final[tuple[TradingMode, ...]] = ("spot", "margin", "futures") def version(self) -> str: - return "3.3.173" + return "3.3.174" timeframe = "5m" @@ -732,18 +733,17 @@ class QuickAdapterV3(IStrategy): @staticmethod def _get_weights( - strategy: str, amplitudes: list[float], amplitude_excesses: list[float] + strategy: WeightStrategy, + amplitudes: list[float], + amplitude_excesses: list[float], ) -> list[float]: - if not isinstance(strategy, str): - return [] - strategy = strategy.lower().strip() - if strategy == "amplitude_excess": + if strategy == WEIGHT_STRATEGIES[2]: # "amplitude_excess" return ( amplitude_excesses if len(amplitude_excesses) == len(amplitudes) else amplitudes ) - if strategy == "amplitude": + if strategy == WEIGHT_STRATEGIES[1]: # "amplitude" return amplitudes return [] diff --git a/quickadapter/user_data/strategies/Utils.py b/quickadapter/user_data/strategies/Utils.py index cdd83f2..34bd96e 100644 --- a/quickadapter/user_data/strategies/Utils.py +++ b/quickadapter/user_data/strategies/Utils.py @@ -985,13 +985,13 @@ def zigzag( amplitude = np.nan else: amplitude = abs(value - prev_value) / abs(prev_value) - threshold_current = thresholds[pos] + current_threshold = thresholds[pos] if ( - np.isfinite(threshold_current) - and threshold_current > 0 + np.isfinite(current_threshold) + and current_threshold > 0 and np.isfinite(amplitude) ): - amplitude_excess = amplitude / threshold_current + amplitude_excess = amplitude / current_threshold else: amplitude_excess = np.nan else: -- 2.43.0