La estrategia comercial CMARSI es una estrategia de seguimiento de tendencias que combina el indicador RSI y las medias móviles. Utiliza un indicador RSI mejorado para identificar tendencias y medias móviles como señales para entradas y salidas.
La estrategia CMARSI utiliza un indicador RSI mejorado llamado RSI de Connors.
El RSI de Connors = (RSI + RSI hacia arriba/abajo + ROC percentil) / 3
Cuando el RSI utiliza un período de 3 días, el RSI Up/Down utiliza 2 días y el percentil ROC utiliza 100 días.
La ventaja de Connors RSI es que combina múltiples indicadores y puede identificar con mayor precisión los cambios de tendencia.
La estrategia CMARSI introduce además un factor promedio móvil encima del RSI de Connors. Cálcula un promedio móvil de 2 días y utiliza cruces del RSI de Connors y el MA como señales comerciales. Las reglas específicas son:
Ingrese largo cuando el RSI de Connors cruce por encima de 40 y tiene una cruz dorada de MA de 2 días.
Salida cuando el RSI de Connors cruce por debajo de 70 y tiene una cruz de muerte de 2 días MA.
El uso del filtro MA puede evitar algunas señales falsas de Connors RSI y mejorar la estabilidad de la estrategia.
La mayor ventaja de la estrategia CMARSI es la combinación de múltiples indicadores para identificar tendencias, evitando las limitaciones de los indicadores individuales de RSI.
El RSI de Connors es más estable que el RSI clásico para identificar los puntos de inflexión de la tendencia.
La introducción de medias móviles filtra efectivamente algo de ruido y evita perseguir máximos y vender mínimos.
La combinación de múltiples indicadores puede mejorar la tasa de ganancia siguiendo las tendencias.
Las reglas comerciales son simples y fáciles de aplicar.
Siendo una estrategia de seguimiento de tendencias, puede captar plenamente los beneficios de las tendencias a medio y largo plazo.
Los principales riesgos de la estrategia CMARSI provienen de un juicio de tendencia incorrecto y de la colocación de stop loss.
Connors RSI da señales incorrectas, causando entradas innecesarias.
La colocación de stop loss es irrazonable, lo que puede causar un stop out prematuro o un stop loss demasiado grande.
Los filtros de media móvil pueden no funcionar bien en los mercados variados.
El uso prolongado puede dar lugar a un sobreajuste, por lo que es necesario realizar pruebas de retroceso y ajustar los parámetros en función de las condiciones del mercado.
La estrategia CMARSI puede optimizarse en los siguientes aspectos:
Optimizar los parámetros del RSI de Connors para diferentes períodos y productos.
Pruebe diferentes tipos de medias móviles para mejorar aún más el efecto de filtrado.
Añadir otros indicadores como MACD, Bandas de Bollinger para la confirmación de la operación.
Optimizar las estrategias de stop loss, como las de stop loss de seguimiento o las de stop loss escalonadas.
Seleccionar los productos que mejor se ajusten a la estrategia a través de la selección.
Utilice el análisis de marcha adelante para optimizar regularmente los parámetros y evitar el sobreajuste.
La estrategia CMARSI combina Connors RSI y promedios móviles para seguir las tendencias para el comercio a medio y largo plazo. Es estable, fácil de implementar y puede capturar efectivamente las ganancias de la tendencia. Debemos optimizar continuamente los parámetros basados en las condiciones del mercado, gestionar los riesgos y generar una buena rentabilidad. En general, CMARSI es una estrategia de trading de tendencia recomendada.
/*backtest start: 2022-09-19 00:00:00 end: 2023-09-25 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 src = close, lenrsi = 3, lenupdown = 2, lenroc = 100, malengt = 2, low = 40, high = 70, a = 1 updown(s) => isEqual = s == s[1] isGrowing = s > s[1] ud = 0.0 ud := isEqual ? 0 : isGrowing ? (nz(ud[1]) <= 0 ? 1 : nz(ud[1])+1) : (nz(ud[1]) >= 0 ? -1 : nz(ud[1])-1) ud rsi = rsi(src, lenrsi) updownrsi = rsi(updown(src), lenupdown) percentrank = percentrank(roc(src, 1), lenroc) crsi = avg(rsi, updownrsi, percentrank) MA = sma(crsi, malengt) band1 = 70 band0 = 40 ColorMA = MA>=band0 ? lime : red p1 = plot(MA, title="BuyNiggers", style=line, linewidth=4, color=ColorMA) p2 = plot(low, title="idk", style=line, linewidth=2, color=blue) p3 = plot(high, title="idk2", style=line, linewidth=2, color=orange) //@version=2 strategy("CMARSI") if crossover(MA,band0) strategy.entry("buy", strategy.long, when=strategy.position_size <= 0) if crossunder(MA,band1) strategy.exit("sell", "buy", profit=1000000, stop=10000000) plot(strategy.equity)