diff --git a/NostalgiaForInfinityX5.py b/NostalgiaForInfinityX5.py index 7c5fe02706..37f460ba86 100644 --- a/NostalgiaForInfinityX5.py +++ b/NostalgiaForInfinityX5.py @@ -66,7 +66,7 @@ class NostalgiaForInfinityX5(IStrategy): INTERFACE_VERSION = 3 def version(self) -> str: - return "v15.1.260" + return "v15.1.261" stoploss = -0.99 @@ -33277,6 +33277,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_0_100" + elif ( + (last_candle["RSI_3"] < 14.0) + and (last_candle["WILLR_14"] < -86.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_0_101" elif 0.02 > current_profit >= 0.01: if ( (last_candle["WILLR_14"] < -99.0) @@ -34086,6 +34094,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_1_100" + elif ( + (last_candle["RSI_3"] < 16.0) + and (last_candle["WILLR_14"] < -84.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_1_101" elif 0.03 > current_profit >= 0.02: if ( (last_candle["WILLR_14"] < -99.0) @@ -34895,6 +34911,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_2_100" + elif ( + (last_candle["RSI_3"] < 18.0) + and (last_candle["WILLR_14"] < -82.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_2_101" elif 0.04 > current_profit >= 0.03: if ( (last_candle["WILLR_14"] < -99.0) @@ -35704,6 +35728,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_3_100" + elif ( + (last_candle["RSI_3"] < 20.0) + and (last_candle["WILLR_14"] < -80.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_3_101" elif 0.05 > current_profit >= 0.04: if ( (last_candle["WILLR_14"] < -99.0) @@ -36513,6 +36545,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_4_100" + elif ( + (last_candle["RSI_3"] < 22.0) + and (last_candle["WILLR_14"] < -78.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_4_101" elif 0.06 > current_profit >= 0.05: if ( (last_candle["WILLR_14"] < -99.0) @@ -37322,6 +37362,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_5_100" + elif ( + (last_candle["RSI_3"] < 24.0) + and (last_candle["WILLR_14"] < -76.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_5_101" elif 0.07 > current_profit >= 0.06: if ( (last_candle["WILLR_14"] < -99.0) @@ -38131,6 +38179,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_6_100" + elif ( + (last_candle["RSI_3"] < 22.0) + and (last_candle["WILLR_14"] < -78.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_6_101" elif 0.08 > current_profit >= 0.07: if ( (last_candle["WILLR_14"] < -99.0) @@ -38940,6 +38996,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_7_100" + elif ( + (last_candle["RSI_3"] < 20.0) + and (last_candle["WILLR_14"] < -80.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_7_101" elif 0.09 > current_profit >= 0.08: if ( (last_candle["WILLR_14"] < -99.0) @@ -39749,6 +39813,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_8_100" + elif ( + (last_candle["RSI_3"] < 18.0) + and (last_candle["WILLR_14"] < -82.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_8_101" elif 0.1 > current_profit >= 0.09: if ( (last_candle["WILLR_14"] < -99.0) @@ -40558,6 +40630,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_9_100" + elif ( + (last_candle["RSI_3"] < 16.0) + and (last_candle["WILLR_14"] < -84.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_9_101" elif 0.12 > current_profit >= 0.1: if ( (last_candle["WILLR_14"] < -99.0) @@ -41367,6 +41447,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_10_100" + elif ( + (last_candle["RSI_3"] < 14.0) + and (last_candle["WILLR_14"] < -86.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_10_101" elif 0.2 > current_profit >= 0.12: if ( (last_candle["WILLR_14"] < -99.0) @@ -42176,6 +42264,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_11_100" + elif ( + (last_candle["RSI_3"] < 12.0) + and (last_candle["WILLR_14"] < -88.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_11_101" elif current_profit >= 0.2: if ( (last_candle["WILLR_14"] < -99.0) @@ -42985,6 +43081,14 @@ def short_exit_dec( and (last_candle["RSI_3_4h"] > 20.0) ): return True, f"exit_{mode_name}_d_12_100" + elif ( + (last_candle["RSI_3"] < 10.0) + and (last_candle["WILLR_18"] < -90.0) + and (last_candle["RSI_3_1h"] > 50.0) + and (last_candle["STOCHRSIk_14_14_3_3_4h"] < 60.0) + and (isinstance(last_candle["ROC_9_4h"], np.float64) and (last_candle["ROC_9_4h"] < -40.0)) + ): + return True, f"exit_{mode_name}_d_12_101" # Here ends exit signal conditions for short_exit_dec