From: Jérôme Benoit Date: Sat, 7 Jun 2025 18:56:17 +0000 (+0200) Subject: refactor(qav3): refine get_trade_interpolation_natr() interpolation X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=9450a4cdf2870bbb861143764abe6775c8f561da;p=freqai-strategies.git refactor(qav3): refine get_trade_interpolation_natr() interpolation range Signed-off-by: Jérôme Benoit --- diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index 15d402c..0fa4f93 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -529,16 +529,22 @@ class QuickAdapterV3(IStrategy): entry_natr = trade_label_natr.iloc[0] if isna(entry_natr) or entry_natr < 0: return None + if len(trade_label_natr) == 1: + return entry_natr current_natr = trade_label_natr.iloc[-1] if isna(current_natr) or current_natr < 0: return None + median_natr = trade_label_natr.median() + interpolation_values = [current_natr, median_natr, entry_natr] trade_volatility_quantile = calculate_quantile( trade_label_natr.to_numpy(), entry_natr ) if isna(trade_volatility_quantile): return None return np.interp( - trade_volatility_quantile, [0.0, 1.0], [current_natr, entry_natr] + trade_volatility_quantile, + np.linspace(0.0, 1.0, len(interpolation_values)), + interpolation_values, ) def get_trade_moving_average_natr(