From d81f68b47576d2a1ef7f2ae8229b01e67c77ae64 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Sun, 2 Mar 2025 10:35:56 +0100 Subject: [PATCH] fix(qav3): symetric quantile thresholds MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../freqaimodels/LightGBMRegressorQuickAdapterV35.py | 9 +++------ .../freqaimodels/XGBoostRegressorQuickAdapterV35.py | 9 +++------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/quickadapter/user_data/freqaimodels/LightGBMRegressorQuickAdapterV35.py b/quickadapter/user_data/freqaimodels/LightGBMRegressorQuickAdapterV35.py index 84f0b64..1c4a156 100644 --- a/quickadapter/user_data/freqaimodels/LightGBMRegressorQuickAdapterV35.py +++ b/quickadapter/user_data/freqaimodels/LightGBMRegressorQuickAdapterV35.py @@ -506,12 +506,9 @@ class LightGBMRegressorQuickAdapterV35(BaseRegressionModel): label_period_frequency: int = int( fit_live_predictions_candles / (label_period_candles * 2) ) - min_pred = pred_df_sorted.iloc[-label_period_frequency:].quantile( - self.freqai_info.get("min_quantile", 0.67) - ) - max_pred = pred_df_sorted.iloc[:label_period_frequency].quantile( - self.freqai_info.get("max_quantile", 0.67) - ) + q = self.freqai_info.get("quantile", 0.67) + min_pred = pred_df_sorted.iloc[-label_period_frequency:].quantile(1 - q) + max_pred = pred_df_sorted.iloc[:label_period_frequency].quantile(q) return min_pred[EXTREMA_COLUMN], max_pred[EXTREMA_COLUMN] diff --git a/quickadapter/user_data/freqaimodels/XGBoostRegressorQuickAdapterV35.py b/quickadapter/user_data/freqaimodels/XGBoostRegressorQuickAdapterV35.py index e14bf09..ad7c646 100644 --- a/quickadapter/user_data/freqaimodels/XGBoostRegressorQuickAdapterV35.py +++ b/quickadapter/user_data/freqaimodels/XGBoostRegressorQuickAdapterV35.py @@ -507,12 +507,9 @@ class XGBoostRegressorQuickAdapterV35(BaseRegressionModel): label_period_frequency: int = int( fit_live_predictions_candles / (label_period_candles * 2) ) - min_pred = pred_df_sorted.iloc[-label_period_frequency:].quantile( - self.freqai_info.get("min_quantile", 0.67) - ) - max_pred = pred_df_sorted.iloc[:label_period_frequency].quantile( - self.freqai_info.get("max_quantile", 0.67) - ) + q = self.freqai_info.get("quantile", 0.67) + min_pred = pred_df_sorted.iloc[-label_period_frequency:].quantile(1 - q) + max_pred = pred_df_sorted.iloc[:label_period_frequency].quantile(q) return min_pred[EXTREMA_COLUMN], max_pred[EXTREMA_COLUMN] -- 2.43.0