@@ -227,6 +227,7 @@ class NostalgiaForInfinityX(IStrategy):
227227 "buy_condition_44_enable" : True ,
228228 "buy_condition_45_enable" : True ,
229229 "buy_condition_46_enable" : True ,
230+ "buy_condition_47_enable" : True ,
230231 #############
231232 }
232233
@@ -1526,6 +1527,34 @@ class NostalgiaForInfinityX(IStrategy):
15261527 "close_over_pivot_offset" : 1.0 ,
15271528 "close_under_pivot_type" : "none" , # pivot, sup1, sup2, sup3, res1, res2, res3
15281529 "close_under_pivot_offset" : 1.0
1530+ },
1531+ 47 : {
1532+ "ema_fast" : False ,
1533+ "ema_fast_len" : "12" ,
1534+ "ema_slow" : False ,
1535+ "ema_slow_len" : "50" ,
1536+ "close_above_ema_fast" : False ,
1537+ "close_above_ema_fast_len" : "200" ,
1538+ "close_above_ema_slow" : False ,
1539+ "close_above_ema_slow_len" : "200" ,
1540+ "sma200_rising" : False ,
1541+ "sma200_rising_val" : "42" ,
1542+ "sma200_1h_rising" : True ,
1543+ "sma200_1h_rising_val" : "50" ,
1544+ "safe_dips_threshold_0" : 0.03 ,
1545+ "safe_dips_threshold_2" : 0.09 ,
1546+ "safe_dips_threshold_12" : None ,
1547+ "safe_dips_threshold_144" : None ,
1548+ "safe_pump_6h_threshold" : 0.5 ,
1549+ "safe_pump_12h_threshold" : None ,
1550+ "safe_pump_24h_threshold" : None ,
1551+ "safe_pump_36h_threshold" : 0.9 ,
1552+ "safe_pump_48h_threshold" : 1.4 ,
1553+ "btc_1h_not_downtrend" : False ,
1554+ "close_over_pivot_type" : "none" , # pivot, sup1, sup2, sup3, res1, res2, res3
1555+ "close_over_pivot_offset" : 1.0 ,
1556+ "close_under_pivot_type" : "none" , # pivot, sup1, sup2, sup3, res1, res2, res3
1557+ "close_under_pivot_offset" : 1.0
15291558 }
15301559 }
15311560
@@ -4325,6 +4354,7 @@ def informative_15m_indicators(self, dataframe: DataFrame, metadata: dict) -> Da
43254354 informative_15m ['ema_200' ] = ta .EMA (informative_15m , timeperiod = 200 )
43264355
43274356 # SMA
4357+ informative_15m ['sma_15' ] = ta .SMA (informative_15m , timeperiod = 15 )
43284358 informative_15m ['sma_200' ] = ta .SMA (informative_15m , timeperiod = 200 )
43294359
43304360 informative_15m ['sma_200_dec_20' ] = informative_15m ['sma_200' ] < informative_15m ['sma_200' ].shift (20 )
@@ -5225,6 +5255,23 @@ def populate_buy_trend(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
52255255 item_buy_logic .append (dataframe ['r_14' ] < - 75.0 )
52265256 item_buy_logic .append (dataframe ['crsi_1h' ] > 14.0 )
52275257
5258+ # Condition #47 - 15m. Semi swing. Local dip. 1h minor dip.
5259+ elif index == 47 :
5260+ # Non-Standard protections
5261+
5262+ # Logic
5263+ item_buy_logic .append (dataframe ['rsi_14_15m' ] < dataframe ['rsi_14_15m' ].shift (3 ))
5264+ item_buy_logic .append (dataframe ['ema_20_1h' ] > dataframe ['ema_25_1h' ])
5265+ item_buy_logic .append (dataframe ['close_15m' ] < (dataframe ['sma_15_15m' ] * 0.95 ))
5266+ item_buy_logic .append (
5267+ ((dataframe ['open_15m' ] < dataframe ['ema_20_1h' ]) & (dataframe ['low_15m' ] < dataframe ['ema_20_1h' ])) |
5268+ ((dataframe ['open_15m' ] > dataframe ['ema_20_1h' ]) & (dataframe ['low_15m' ] > dataframe ['ema_20_1h' ])))
5269+ item_buy_logic .append (dataframe ['cti_15m' ] < - 0.9 )
5270+ item_buy_logic .append (dataframe ['r_14_15m' ] < - 90.0 )
5271+ item_buy_logic .append (dataframe ['r_14' ] < - 97.0 )
5272+ item_buy_logic .append (dataframe ['cti_1h' ] < 0.1 )
5273+ item_buy_logic .append (dataframe ['crsi_1h' ] > 8.0 )
5274+
52285275 item_buy_logic .append (dataframe ['volume' ] > 0 )
52295276 item_buy = reduce (lambda x , y : x & y , item_buy_logic )
52305277 dataframe .loc [item_buy , 'buy_tag' ] += f"{ index } "
0 commit comments