From: Jérôme Benoit Date: Tue, 16 Sep 2025 20:48:26 +0000 (+0200) Subject: perf(qav3): tune pivot labeling optimization thresholds X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=85805cec7b0353be69efd5061d9a7ffe7bcdabd6;p=freqai-strategies.git perf(qav3): tune pivot labeling optimization thresholds Signed-off-by: Jérôme Benoit --- diff --git a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py index 1cdb079..a1c2800 100644 --- a/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py +++ b/quickadapter/user_data/freqaimodels/QuickAdapterRegressorV3.py @@ -549,12 +549,8 @@ class QuickAdapterRegressorV3(BaseRegressionModel): label_period_candles: int, ) -> tuple[float, float]: label_period_cycles = fit_live_predictions_candles / label_period_candles - thresholds_candles = int( - self.freqai_info.get( - "prediction_thresholds_candles", - max(2, int(label_period_cycles)) * label_period_candles, - ) - ) + thresholds_candles = max(2, int(label_period_cycles)) * label_period_candles + pred_extrema = pred_df.get(EXTREMA_COLUMN).iloc[-thresholds_candles:].copy() thresholds_smoothing = str( self.freqai_info.get("prediction_thresholds_smoothing", "mean") @@ -1420,7 +1416,7 @@ def label_objective( max_label_period_candles, step=candles_step, ) - label_natr_ratio = trial.suggest_float("label_natr_ratio", 8.5, 15.5, step=0.05) + label_natr_ratio = trial.suggest_float("label_natr_ratio", 8.5, 14.5, step=0.05) label_period_cycles = fit_live_predictions_candles / label_period_candles df = df.iloc[-(max(2, int(label_period_cycles)) * label_period_candles) :] diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index 67b285c..39542b9 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -1117,8 +1117,8 @@ class QuickAdapterV3(IStrategy): side: str, order: Literal["entry", "exit"], rate: float, - min_natr_ratio_percent: float = 0.0095, - max_natr_ratio_percent: float = 0.095, + min_natr_ratio_percent: float = 0.009, + max_natr_ratio_percent: float = 0.09, lookback_period: int = 1, decay_ratio: float = 0.5, ) -> bool: