Estrategia de tendencia de cruce de medias móviles RSI


Fecha de creación: 2023-11-28 17:03:56 Última modificación: 2023-11-28 17:03:56
Copiar: 1 Número de Visitas: 776
1
Seguir
1619
Seguidores

Estrategia de tendencia de cruce de medias móviles RSI

Descripción general

La estrategia RSI Moving Average Crossover Trend es una estrategia que utiliza la señal de cruce de la media del RSI para determinar la tendencia y emitir una señal de compra. La estrategia combina al mismo tiempo con la EMA del precio y emite una señal de compra solo cuando el precio está por encima de la EMA.

Principio de estrategia

El indicador central de la estrategia es el RSI, y se calcula el RSI en las líneas medias de EMA y SMA. Se emite una señal de compra solo cuando la línea EMA del RSI es superior a la línea SMA y el precio es superior a la EMA; cuando la línea EMA del RSI es inferior a la línea SMA, se emite una señal de venta para implementar el seguimiento de la tendencia.

El indicador RSI puede reflejar eficazmente el fenómeno de sobrecompra y sobreventa en el mercado. Una ruptura de 70 en el indicador RSI se considera una sobrecompra en el mercado, mientras que una ruptura de 30 se considera una sobreventa. La estrategia utiliza dos medias móviles EMA y SMA para descubrir la tendencia y el punto de inflexión del indicador RSI.

Cuando el EMA del RSI comienza a subir, indicando que el mercado muestra signos de estabilización, se utiliza el SMA para verificar su dirección; cuando el SMA también comienza a subir, indicando que el RSI está claramente en una tendencia alcista, la estrategia emite una señal de compra, siguiendo la tendencia, suponiendo que el precio sea superior al EMA.

Análisis de las ventajas

Se trata de una estrategia de seguimiento de tendencias que permite aprovechar de manera efectiva las oportunidades de tendencia en la línea media y larga. En comparación con un solo indicador, la estrategia utiliza EMA y SMA del RSI para formar una verificación cruzada que reduce las señales erróneas y aumenta la estabilidad.

La estrategia también combina los EMA de los precios para asegurar que las compras se realicen sólo en la tendencia de los precios al alza, evitando el riesgo de una situación de choque, lo que mejora la probabilidad de ganancias.

Análisis de riesgos

La estrategia se basa principalmente en el indicador RSI, que también emite una señal errónea cuando el RSI produce una señal errónea. Además, el indicador RSI es más adecuado para juzgar el fenómeno de sobreventa y sobreventa, y tiene un cierto atraso en juzgar la tendencia de la línea media y larga.

La estrategia también tiene un cierto retraso de tiempo, especialmente cuando los EMA y SMA del RSI se equilibran, lo que provoca un retraso de la señal. También existe un cierto riesgo de pérdidas durante este período.

Dirección de optimización

  1. Se puede considerar la optimización del RSI para seleccionar los parámetros más adecuados y mejorar su eficacia.

  2. Se puede considerar la inclusión de la lógica de stop loss, para que el riesgo sea controlado de manera efectiva.

  3. Se puede probar la configuración de los parámetros en diferentes períodos de tiempo, optimizar los parámetros para que la estrategia funcione de manera estable en más variedades y más períodos.

Resumir

La estrategia de tendencia cruzada de línea media RSI, es una estrategia simple que utiliza el indicador RSI para determinar la dirección de la tendencia y la verificación cruzada. Combinada con la EMA de precios, puede aprovechar las oportunidades de dirección en la tendencia alcista.

Código Fuente de la Estrategia
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Created by Sv3nla 5-Jan-2021
strategy(title="Sv3nla RSI EMA SMA Strat", shorttitle="Sv3nla RSI EMA SMA Strat", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// === BACKTEST RANGE ===
FromMonth = input(defval = 5, title = "From Month", minval = 1)
FromDay   = input(defval = 1, title = "From Day", minval = 1)
FromYear  = input(defval = 2015, title = "From Year", minval = 2015)
ToMonth   = input(defval = 1, title = "To Month", minval = 1)
ToDay     = input(defval = 1, title = "To Day", minval = 1)
ToYear    = input(defval = 9999, title = "To Year", minval = 2022) 
// syminfo.mintick = 0.01$ for BTCUSDT

testPeriod() => true

//INPUTS
rsilen = input(defval = 16, minval=1, title="RSILength")
RSIemaLen = input(defval = 12, minval=1, title="RSI EMA Length")
RSIsmaLen2 = input(defval = 29, minval=1, title="RSI SMA Length2")
length = input(defval = 8, minval=1, title="EMA price Length")

// RSI
RSIsrc = close
RSIup = rma(max(change(RSIsrc), 0), rsilen)
RSIdown = rma(-min(change(RSIsrc), 0), rsilen)
rsi = RSIdown == 0 ? 100 : RSIup == 0 ? 0 : 100 - 100 / (1 + RSIup / RSIdown)
emavalue=ema(rsi,RSIemaLen)
smavalue=sma(rsi,RSIsmaLen2)

//EMA
ema=ema(close,length)

//PLOT
plot(ema(rsi, RSIemaLen), color=color.yellow, linewidth=2, title="EMA", transp=0)
plot(sma(rsi, RSIsmaLen2), color=color.aqua, linewidth=2, title="SMA", transp=0)

//ORDERS
if (testPeriod())
    strategy.entry("long",strategy.long, comment="RSIEMA", when=(emavalue > smavalue and close>ema))
    strategy.close(id="long", when=(emavalue < smavalue))

// Colour background when in a trade and 50 horizontal line
backgroundColour = (strategy.position_size > 0) ? color.green : na    
bgcolor(color=backgroundColour, transp=85)
hline(50, color=color.yellow)