From 732830e809cfbb0897e84d42d557ce4ca79f40d8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Mon, 23 Jun 2025 15:12:31 +0200 Subject: [PATCH] refactor(qav3): refine typing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../user_data/freqaimodels/QuickAdapterRegressorV3.py | 2 +- quickadapter/user_data/strategies/QuickAdapterV3.py | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py index 8e9b6b2..8b4dc25 100644 --- a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py +++ b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py @@ -109,7 +109,7 @@ class QuickAdapterRegressorV3(BaseRegressionModel): raise ValueError( "FreqAI model requires 'identifier' defined in the freqai section configuration" ) - self._optuna_hyperopt: bool | None = ( + self._optuna_hyperopt: Optional[bool] = ( self.freqai_info.get("enabled", False) and self._optuna_config.get("enabled") and self.data_split_parameters.get("test_size", TEST_SIZE) > 0 diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index 8801f75..130e46f 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -537,7 +537,7 @@ class QuickAdapterV3(IStrategy): ) @staticmethod - def is_trade_duration_valid(trade_duration: float) -> bool: + def is_trade_duration_valid(trade_duration: Optional[int | float]) -> bool: return isinstance(trade_duration, (int, float)) and not ( isna(trade_duration) or trade_duration <= 0 ) @@ -751,9 +751,8 @@ class QuickAdapterV3(IStrategy): stoploss_distance = self.get_stoploss_distance(df, trade, current_rate) if isna(stoploss_distance) or stoploss_distance <= 0: return None - sign = 1 if trade.is_short else -1 return stoploss_from_absolute( - current_rate + (sign * stoploss_distance), + current_rate + (1 if trade.is_short else -1) * stoploss_distance, current_rate=current_rate, is_short=trade.is_short, leverage=trade.leverage, -- 2.43.0