Esta estrategia se llama
El indicador RSI refleja los niveles de sobrecompra / sobreventa en los precios. RSI por encima de 70 sugiere estado de sobrecompra, mientras que por debajo de 30 es sobreventa. El indicador RSI de Stoch muestra si el propio RSI ha entrado en zonas de sobrecompra o sobreventa.
La lógica de negociación es:
Cuando el RSI cruza por encima de la línea de sobrecompra definida por el usuario, indica condiciones de sobrecompra para considerar operaciones cortas.
Cuando el RSI cae por debajo de la línea de sobreventa definida por el usuario, señala las condiciones de sobreventa para considerar las operaciones largas.
Mientras tanto, el Stoch RSI también necesita mostrar señales de sobrecompra o sobreventa para confirmar las señales de entrada correspondientes.
Esta doble condición se combina para filtrar señales más ambiguas y evitar fallas.
La ventaja de esta estrategia es la utilización de varios indicadores derivados del RSI para un juicio de rango sobrecomprado / sobrevendido más preciso.
En resumen, las combinaciones de indicadores necesitan un equilibrio cuidadoso. El uso razonable puede mejorar los resultados, pero también puede traer riesgos de sobreoptimización.
/*backtest start: 2023-01-01 00:00:00 end: 2023-09-12 00:00:00 period: 4d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("test1","t1",overlay=true, default_qty_type = strategy.percent_of_equity,default_qty_value=100,initial_capital=200, currency=currency.USD) //user input k_param = input(title = "k length", type = input.integer, defval = 14) d_param = input(title = "d length", type = input.integer, defval = 3) rsi_param = input(title = "RSI", type = input.integer, defval = 5) upper = input(title = "over brought", type = input.integer, defval = 80) lower = input(title = "over sold", type = input.integer, defval = 20) //calculation rsi = rsi(close,rsi_param) stochastic = 100*(rsi - lowest(rsi,k_param))/(highest(rsi,k_param)-lowest(rsi,k_param)) SMA = sma(stochastic,d_param) //DRAW plot(upper,color = color.blue,linewidth = 2, title ="超买") plot(lower,color = color.blue,linewidth = 2, title ="超卖") plot(rsi,color = rsi>upper ?color.red:rsi<lower? color.green:color.black, linewidth=2,title ="ris超买超卖") plot(stochastic,color = color.purple,title="震荡指数") plot(SMA, color = color.orange,title="移动平均") //trading shortposition = crossover(rsi,upper) longposition = crossunder(rsi,lower) strategy.entry("卖",false,when =(shortposition)) strategy.entry("买",true,when = (longposition)) strategy.exit("止盈",profit = close*0.013/syminfo.mintick)