]> Piment Noir Git Repositories - freqai-strategies.git/commitdiff
fix(qav3): fiw SL/TP computation
authorJérôme Benoit <jerome.benoit@piment-noir.org>
Mon, 28 Apr 2025 15:56:46 +0000 (17:56 +0200)
committerJérôme Benoit <jerome.benoit@piment-noir.org>
Mon, 28 Apr 2025 15:56:46 +0000 (17:56 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
quickadapter/user_data/strategies/QuickAdapterV3.py

index 5c40385c8829d09954f6ec783416bd774fdcca4a..241ec08b4344d896b3b419eae1a27c762eef128c 100644 (file)
@@ -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,