Estrategia de trading con doble media móvil y reversión del RSI


Fecha de creación: 2023-10-18 11:08:35 Última modificación: 2023-10-18 11:08:35
Copiar: 2 Número de Visitas: 630
1
Seguir
1617
Seguidores

Estrategia de trading con doble media móvil y reversión del RSI

Descripción general

Esta estrategia combina dos medias móviles y un indicador RSI relativamente fuerte para buscar oportunidades de reversión a corto plazo en una tendencia fuerte. Cuando la dirección de la tendencia es clara, utiliza el RSI para identificar sobrecompras y sobreventas y espera que la reversión de los precios entre en juego.

Principio de estrategia

  1. Calcula el SMA de 30 días y el EMA de 200 días para determinar la dirección de la tendencia general

    • SMA>EMA, para el alza
    • SMA < EMA, para una tendencia a la baja
  2. Calcula el RSI de 30 días para determinar si hay sobrecompra o sobreventa

    • RSI <= 53 es un exceso de venta
    • RSI >=60 es un exceso de compra
  3. Reglas de acceso:

    • Hacer más cuando el SMA> EMA está en tendencia alcista y el RSI <= 53
    • El SMA está en una tendencia a la baja y el RSI está en baja cuando el SMA es menor que el EMA y el RSI es mayor que 60
  4. Reglas de juego:

    • Detención de pérdidas o paradas múltiples
    • Cancelación o detención de la tarjeta en blanco

Análisis de las ventajas estratégicas

  1. Seguir las grandes tendencias y evitar operaciones contraproducentes

  2. La configuración de los parámetros RSI es más conservadora para reducir las señales falsas

  3. Combinado con un doble filtro de línea media móvil, el tiempo de entrada es más preciso.

  4. El riesgo es controlado, la retirada es pequeña.

Análisis de riesgos

  1. El mercado necesita una tendencia más clara, y la convulsión no es efectiva

  2. El RSI está ajustado de forma conservadora y podría haber perdido algunas oportunidades

  3. La posición de parada de pérdidas debe ajustarse de manera razonable para evitar una salida demasiado radical.

Dirección de optimización de la estrategia

  1. Optimización de los parámetros del RSI, reduciendo los parámetros adecuadamente para buscar más oportunidades de entrada

  2. Prueba de diferentes combinaciones de medias móviles

  3. Configurar un filtro de tendencia y operar solo cuando la tendencia es lo suficientemente obvia

  4. Optimización de las estrategias de pérdidas, control estricto de las pérdidas únicas

Resumir

Esta estrategia tiene un riesgo controlado en general y es adecuada para los operadores de posiciones de línea media y larga. La estrategia opera en función de la dirección de la gran tendencia, utiliza parámetros RSI conservadores y un filtro de línea media móvil estricto, lo que evita de manera efectiva los false breaks, lo que mejora la tasa de ganancia.

Código Fuente de la Estrategia
/*backtest
start: 2023-09-17 00:00:00
end: 2023-10-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Based on Larry Connors RSI-2 Strategy - Lower RSI
strategy(title="_CM_RSI_2_Strat_Low", shorttitle="_CM_RSI_2_Strategy_Lower", overlay=false)
src = close, 

//RSI CODE
up = rma(max(change(src), 0), 30)
down = rma(-min(change(src), 0), 30)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
//Criteria for Moving Avg rules
ma50= vwma(close,30)
ma200= vwma(close,200)

//Rule for RSI Color
col = ma50 > ma200 and rsi <=53?lime: ma50 < ma200  and rsi >= 60?red : silver
long = ma50 > ma200 and rsi <= 53
short = ma50 < ma200  and rsi >= 60
//plot(rsi, title="RSI", style=line, linewidth=1,color=col)
//plot(100, title="Upper Line 100",style=line, linewidth=3, color=aqua)
//plot(0, title="Lower Line 0",style=line, linewidth=3, color=aqua)

//band1 = plot(60, title="Upper Line 60",style=line, linewidth=1, color=aqua)
//band0 = plot(44, title="Lower Line 40",style=line, linewidth=1, color=aqua)
//fill(band1, band0, color=silver, transp=90)
strategy.entry ("buy", strategy.long, when=long)
strategy.entry ("sell", strategy.short, when=short)
plot(long,"long",color=green,linewidth=1)
plot(short,"short",color=red,linewidth=1)