From 13d28c369709dbe0cd912551a5bdd74d2160148f Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Benoit?= Date: Mon, 28 Apr 2025 17:56:46 +0200 Subject: [PATCH] fix(qav3): fiw SL/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 | 24 +++++-------------- 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/quickadapter/user_data/strategies/QuickAdapterV3.py b/quickadapter/user_data/strategies/QuickAdapterV3.py index 5c40385..241ec08 100644 --- a/quickadapter/user_data/strategies/QuickAdapterV3.py +++ b/quickadapter/user_data/strategies/QuickAdapterV3.py @@ -58,7 +58,7 @@ class QuickAdapterV3(IStrategy): INTERFACE_VERSION = 3 def version(self) -> str: - return "3.3.14" + return "3.3.15" timeframe = "5m" @@ -71,14 +71,6 @@ class QuickAdapterV3(IStrategy): trailing_stop_positive_offset = 0.011 trailing_only_offset_is_reached = True - # reward_risk_ratio = reward / risk - # reward_risk_ratio = 1.0 means 1:1 RR - # reward_risk_ratio = 2.0 means 1:2 RR - # ... - @cached_property - def reward_risk_ratio(self) -> float: - return self.config.get("exit_pricing", {}).get("reward_risk_ratio", 2.0) - order_types = { "entry": "limit", "exit": "limit", @@ -377,7 +369,7 @@ class QuickAdapterV3(IStrategy): return self.get_label_natr_ratio(pair) * 0.0175 def get_stoploss_natr_ratio(self, pair: str) -> float: - return self.get_label_natr_ratio(pair) * 0.5 + return self.get_label_natr_ratio(pair) * 0.625 def get_take_profit_natr_ratio(self, pair: str) -> float: return self.get_stoploss_natr_ratio(pair) @@ -526,14 +518,10 @@ class QuickAdapterV3(IStrategy): current_take_profit_distance = ( current_rate * current_natr * take_profit_natr_ratio ) - return ( - max( - trade_take_profit_distance, - np.median([trade_take_profit_distance, current_take_profit_distance]), - ) - * math.log10(9 + trade_duration_candles) - * self.reward_risk_ratio - ) + return max( + trade_take_profit_distance, + np.median([trade_take_profit_distance, current_take_profit_distance]), + ) * math.log10(9 + trade_duration_candles) def custom_stoploss( self, -- 2.43.0