From 89adc0ae21e4ff56117ae6b610b47321da552d0c Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Sun, 6 Apr 2025 01:25:43 +0200 Subject: [PATCH] perf(qav3): fine tune TP computation MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Jérôme Benoit --- .../user_data/strategies/QuickAdapterV3.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index c905915..d98155d 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -488,13 +488,19 @@ class QuickAdapterV3(IStrategy): current_natr = df["natr_label_period_candles"].iloc[-1] if isna(current_natr): return None - return ( + trade_take_profit_distance = ( + trade.open_rate * entry_natr * self.trailing_stoploss_natr_ratio + ) + return max( + trade_take_profit_distance, geometric_mean( - [trade.open_rate * entry_natr, 0.5 * current_rate * current_natr] + [ + trade_take_profit_distance, + current_rate * current_natr * self.trailing_stoploss_natr_ratio, + ] ) - * self.trailing_stoploss_natr_ratio * math.log10(9 + trade_duration_candles) - * self.reward_risk_ratio + * self.reward_risk_ratio, ) def custom_stoploss( -- 2.43.0