Estrategia de cruce de la media móvil

El autor:¿ Qué pasa?, Fecha: 2024-02-04 16:00:31
Las etiquetas:

img

Resumen general

La estrategia de cruce de promedios móviles es una estrategia de comercio de acciones común. Genera señales de compra y venta mediante el cálculo de promedios móviles rápidos y lentos y la detección de sus puntos de cruce. Específicamente, cuando el promedio móvil rápido cruza por encima del promedio móvil lento desde abajo, genera una señal de compra; cuando el promedio móvil rápido cruza por debajo del promedio móvil lento desde arriba, genera una señal de venta.

Estrategia lógica

La lógica central de esta estrategia es: el promedio móvil rápido representa la tendencia a corto plazo de una acción, mientras que el promedio móvil lento representa su tendencia a largo plazo.

En esta estrategia, se definen el promedio móvil rápido maFast y el promedio móvil lento maSlow. maFast tiene un período de 9 días que representa la tendencia a corto plazo de 9 días de una acción. maSlow tiene un período de 18 días que representa la tendencia a largo plazo de 18 días.

Análisis de ventajas

Las ventajas de esta estrategia son:

  1. Su lógica es sencilla y fácil de entender e implementar.
  2. Las medias móviles pueden filtrar los ruidos de precios de manera efectiva y generar señales comerciales confiables.
  3. Las MAs rápidas y lentas combinan tendencias a corto y largo plazo, lo que hace que las señales sean estables.
  4. Los parámetros del MA pueden ajustarse de forma flexible para adaptarse a las diferentes poblaciones.
  5. Las optimizaciones adicionales de los parámetros del período de MA pueden conducir a un mejor rendimiento comercial.

Análisis de riesgos

También hay algunos riesgos con esta estrategia:

  1. Cuando las fluctuaciones de precios son altas, pueden ocurrir más señales incorrectas y un comercio excesivo.
  2. La configuración incorrecta de los parámetros puede causar una negociación demasiado frecuente o un retraso de la señal.
  3. No puede realizar un seguimiento eficaz de los mercados y de las existencias individuales que cambian rápidamente.
  4. Puede haber algún retraso de tiempo, lo que puede causar la falta de puntos de entrada o salida importantes.

Estos riesgos pueden reducirse ajustando los parámetros de los MA, estableciendo estrategias de stop loss, etc.

Direcciones de optimización

Hay otros espacios de optimización para esta estrategia:

  1. Combinar otros indicadores técnicos para filtrar las señales, por ejemplo, volumen de operaciones, STOCH.
  2. Añadir un mecanismo de determinación de tendencias para evitar perder tendencias importantes.
  3. Optimice los parámetros de MA para encontrar la mejor combinación.
  4. Establecer estrategias de stop loss para controlar la pérdida de una sola operación.
  5. Incorporar modelos de aprendizaje profundo para predecir los movimientos de precios.

Conclusión

En conclusión, la estrategia de cruce de promedios móviles es una estrategia muy clásica y práctica en general. Tiene una lógica simple y amplias aplicaciones en el comercio real. Al ajustar los parámetros y combinar otros indicadores técnicos, se puede mejorar aún más para lograr mejores ratios riesgo-recompensa. En general, es una piedra angular importante del comercio cuantitativo y merece una investigación y aplicación profundas.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Moving Average Cross", overlay=true, initial_capital=10000, currency='USD')



// === GENERAL INPUTS ===
// short ma
maFastSource   = input(defval = close, title = "Fast MA Source")
maFastLength   = input(defval = 9, title = "Fast MA Period", minval = 1)
// long ma
maSlowSource   = input(defval = close, title = "Slow MA Source")
maSlowLength   = input(defval = 18, title = "Slow MA Period", minval = 1)


// === SERIES SETUP ===
/// a couple of ma's..
maFast = ema(maFastSource, maFastLength)
maSlow = ema(maSlowSource, maSlowLength)



// === PLOTTING ===
fast = plot(maFast, title = "Fast MA", color = red, linewidth = 2, style = line, transp = 30)
slow = plot(maSlow, title = "Slow MA", color = green, linewidth = 2, style = line, transp = 30)



// === LOGIC ===
enterLong = crossover(maFast, maSlow)
exitLong = crossover(maSlow, maFast)



// Entry //
strategy.entry(id="Long Entry", long=true, when=enterLong)
strategy.entry(id="Short Entry", long=false, when=exitLong)


// === FILL ====

fill(fast, slow, color = maFast > maSlow ? green : red)

Más.