From 2b319a3ca129f25d0643e86cb4e0fef6b4c5ad96 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Fri, 21 Mar 2025 12:28:03 +0100 Subject: [PATCH] fix(qav3): fix gaussian extrema smoothing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- quickadapter/user_data/strategies/QuickAdapterV3.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index 59f460d..ce3acd4 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -615,7 +615,7 @@ class QuickAdapterV3(IStrategy): std: Optional[float] = None, ) -> Series: extrema_smoothing = self.freqai_info.get("extrema_smoothing", "gaussian") - if std is None and extrema_smoothing in ["gaussian", "zero_phase_gaussian"]: + if std is None: std = derive_gaussian_std_from_window(window) smoothing_methods: dict = { "gaussian": series.rolling( @@ -729,6 +729,8 @@ def zero_phase_gaussian(series: Series, std: float): def get_gaussian_window(std: float, center: bool) -> int: + if std is None: + raise ValueError("Standard deviation cannot be None") if std <= 0: raise ValueError("Standard deviation must be greater than 0") window = int(6 * std + 1) -- 2.43.0