This strategy mainly utilizes the intraday renko low point retracement characteristics of stocks to determine the new trend direction, and thus establishes an intraday trading strategy. When there is an obvious pullback of the renko intraday low point, it is judged as a new bullish signal and a long position will be taken. When there is a significant decline in the renko closing price, it is regarded as a bearish signal and existing position will be closed.
The main criteria of this strategy are: the intraday renko low point retracement exceeds the upper rail and lower rail. The upper rail is calculated as the 20-day average + 2 standard deviations of the renko intraday low point retracement over the past 20 days; The lower rail is calculated as 85% of the highest point of the renko intraday low point retracement over the past 50 days. When the renko intraday low point retracement exceeds the upper rail or lower rail, it is regarded as a buy signal, otherwise the position will be cleared. The specific process is as follows:
The above is the main judgment rules and trading logic of this strategy.
Risk Mitigations:
The overall idea of this strategy is clear and easy to implement. It utilizes the renko intraday low point retracement to determine the new trend direction. The advantages of this strategy are that it uses renko characteristics for filtration to avoid misjudgment, and adopts double rail judgment to improve accuracy. At the same time, there are also some rooms for improvement of this strategy. The keys are parameter optimization, stop loss setting, and integration of multiple indicator judgments. In general, this is an easy to understand and effective intraday trading strategy for stocks.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // @version=2 strategy("Renko Stock Daily") Rango1 = input(false, title="Rango 1") Rango2 = input(false, title="Rango 2") Situacion = ((highest(close, 22)-low)/(highest(close, 22)))*100 DesviaccionTipica = 2 * stdev(Situacion, 20) Media = sma(Situacion, 20) Rango11 = Media + DesviaccionTipica Rango22 = (highest(Situacion, 50)) * 0.85 advertir = Situacion >= Rango11 or Situacion >= Rango22 ? green : red if (Situacion[1] >= Rango11[1] or Situacion[1] >= Rango22[1]) and (Situacion[0] < Rango11[0] and Situacion[0] < Rango22[0])and (close>open) strategy.entry("Entrar", strategy.long,comment= "Entrar",when=strategy.position_size <= 0) strategy.close_all(when=close<open) plot(Rango1 and Rango22 ? Rango22 : na, title="Rango22", style=line, linewidth=4, color=orange) plot(Situacion, title="Rengo Stock Daily", style=histogram, linewidth = 4, color=advertir) plot(Rango2 and Rango11 ? Rango11 : na, title="Upper Band", style=line, linewidth = 3, color=aqua)