Estrategia de negociación de inversión basada en el rango de media móvil

El autor:¿ Qué pasa?, Fecha: 2024-01-25 14:16:28
Las etiquetas:

img

Resumen general

Esta estrategia se llama Reversión del rango de promedio móvil. Identifica las oportunidades de inversión del mercado mediante el cálculo de cruces entre promedios móviles de diferentes marcos de tiempo y toma posiciones largas / cortas apropiadas.

Estrategia lógica

La estrategia calcula 3 medias móviles simultáneamente:

  1. Variación de las tasas de interés de los activos en el mercado
  2. MMA lento (longitud): refleja las tendencias de los precios a medio plazo
  3. El MA más lento (length): refleja las tendencias de los precios a largo plazo

Cuando el MA rápido cruza por encima del MA lento, indica una inversión de tendencia a corto plazo hacia el alza.

Para evitar señales falsas, se introduce un 4to MA como el filtro a largo plazo (longitud). Solo por encima de este filtro se consideran señales largas. Solo por debajo de este filtro se consideran señales cortas.

Las reglas específicas para el comercio son:

  1. Cuando el MA rápido cruza por encima del MA lento, y el MA lento también cruza por encima del MA más lento (bullish a corto plazo), mientras que el precio está por encima del filtro a largo plazo, vaya largo.

  2. Cuando el MA rápido cruza por debajo del MA lento, y el MA lento también cruza por debajo del MA más lento (bajista a corto plazo), mientras que el precio está por debajo del filtro a largo plazo, vaya corto.

Análisis de ventajas

Las ventajas de esta estrategia incluyen:

  1. Utilizando múltiples marcos de tiempo para identificar los cambios de tendencia con mayor precisión y reducir las señales falsas.
  2. El filtro a largo plazo evita operaciones mal posicionadas antes de una inversión de tendencia importante.
  3. Reglas simples y claras, fáciles de entender y automatizar.
  4. Las estrategias de reversión se benefician de un sesgo positivo en los rendimientos y las ganancias.
  5. Los buenos resultados de las pruebas de retroceso en la simulación de operaciones en vivo con respecto a los rendimientos y el factor de ganancia.

Análisis de riesgos

Los riesgos de la estrategia incluyen:

  1. Las estrategias de MA son sensibles a los parámetros. Diferentes parámetros conducen a resultados diferentes.
  2. La falsa ruptura de las señales de inversión puede causar pérdidas.
  3. Las inversiones laterales prolongadas pueden anular las ganancias de inversiones repetidas.
  4. El precio puede revertirse y acelerarse con fuerza, al no haber un stop loss oportuno.

Soluciones:

  1. Optimice los parámetros para encontrar la mejor combinación.
  2. Aumentar el tiempo de confirmación de la señal para evitar señales falsas.
  3. Ampliar el rango de pérdida para controlar la cantidad de pérdida.

Direcciones de optimización

La estrategia puede mejorarse en los siguientes aspectos:

  1. Prueba más conjuntos de parámetros para encontrar valores óptimos.
  2. Añadir un filtro de volumen para evitar señales falsas en condiciones de bajo volumen.
  3. Incorporar otros indicadores para confirmar las señales de entrada.
  4. Implementar el ajuste dinámico de la pérdida de parada para un mejor control de salida.
  5. Optimizar la gestión de riesgos para un control de riesgos más estricto.

Conclusión

Esta estrategia negocia las reversiones del mercado identificadas por los cruces de MA, con orientación de dirección desde el filtro a largo plazo. Captura de manera efectiva las oportunidades en los puntos de inflexión. Los resultados positivos de las pruebas de retroceso muestran una buena rentabilidad para la aplicación en vivo.


/*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=5

strategy("Moving Average Trap", overlay=true)

flenght = input.int(title="Fast MA Period", minval=1, maxval=2000, defval=3)
llenght = input.int(title="Slower MA Period", minval=1, maxval=2000, defval=5)
sslenght = input.int(title="Slowest MA Period", minval=1, maxval=2000, defval=8)
tlenght = input.int(title="Trend Filter MA Period", minval=1, maxval=2000, defval=200)

ssma = ta.sma(close, sslenght)
fma = ta.sma(close, flenght)
sma = ta.sma(close, llenght)
tma = ta.sma(close, tlenght)

plot(fma, color=color.red)
plot(sma, color=color.white)
plot(ssma, color=color.green)
plot(tma, color=color.maroon, linewidth=2)

short =  (fma > sma and sma > ssma) and close < tma
long = (fma < sma and sma < ssma) and close > tma
closeshort = fma < sma and sma < ssma
closelong = fma > sma and sma > ssma

if long
	strategy.entry("long", strategy.long)
if closelong
	strategy.close("long")
if short
	strategy.entry("short", strategy.short)
if closeshort
	strategy.close("short")

//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)

Más.