Estrategia de trading basada en media móvil doble


Fecha de creación: 2024-01-19 14:10:38 Última modificación: 2024-01-19 14:10:38
Copiar: 0 Número de Visitas: 574
1
Seguir
1617
Seguidores

Estrategia de trading basada en media móvil doble

Descripción general

La estrategia de comercio de la media móvil doble es una estrategia de comercio cuantitativa común. La estrategia utiliza dos promedios móviles de diferentes períodos de tiempo para generar una señal de comercio en función de su cruce. En concreto, se considera una señal de compra cuando se cruza la media móvil a corto plazo sobre la media móvil a largo plazo y se considera una señal de venta cuando se cruza la media móvil a largo plazo por debajo de la media móvil a corto plazo.

El principio

El principio central de esta estrategia es que los promedios móviles a corto plazo reflejan la tendencia a corto plazo de los precios de los activos, y los promedios móviles a largo plazo reflejan la tendencia a largo plazo de los precios de los activos. Cuando la línea corta cruza la línea larga, la tendencia a corto plazo se convierte en alza y se puede comprar; cuando la línea corta cruza la línea larga, la tendencia a corto plazo se convierte en baja y se puede vender.

En concreto, la estrategia define dos medias móviles: una media móvil a corto plazo de 5 días, utilizada para capturar tendencias de precios a corto plazo; y otra media móvil a largo plazo de 15 días, utilizada para determinar tendencias de precios a largo plazo. Cuando la línea de 5 días cruza la línea de 15 días desde abajo, indica que los precios a corto plazo han comenzado a subir, lo cual es una señal de compra; y cuando la línea de 5 días cruza la línea de 15 días desde arriba hacia abajo, indica que los precios a corto plazo han comenzado a bajar, lo cual es una señal de venta.

Análisis de las ventajas

Las ventajas de las estrategias de media móvil doble frente a otras estrategias son:

  1. La implementación es sencilla y fácil de entender, adecuada para los principiantes en el comercio cuantitativo.
  2. Por otra parte, las razones fundamentales para evitar seguir las tendencias de precios en un mercado complejo y confuso
  3. El ajuste de parámetros es flexible y se puede adaptar a diferentes entornos de mercado ajustando el ciclo de la media móvil
  4. Los puntos de inflexión en las tendencias de largo y corto plazo de Capture filtran eficazmente el ruido del mercado
  5. Frecuencia de transacción personalizable, reducción de los costos de transacción y pérdidas de puntos de deslizamiento

Análisis de riesgos

Las estrategias de medias móviles dobles también presentan algunos riesgos, que incluyen:

  1. Puede generar falsas señales, las medias móviles son esencialmente señales atrasadas
  2. Necesidad de prestar atención a dos medias móviles a la vez, el ajuste de parámetros y las pruebas de efecto son más complejas
  3. El precio de las acciones en el mercado de divisas ha aumentado considerablemente en los últimos años, y el precio de las acciones en el mercado de divisas ha aumentado considerablemente.
  4. La frecuencia de las transacciones puede ser demasiado alta o demasiado baja, por lo que se necesita una optimización de la paridad.
  5. El efecto es muy correlacionado con la situación del mercado, y no es muy efectivo en un período de desaceleración general del índice.

Resolución de las mismas:

  1. Combinación con otros indicadores para filtrar señales
  2. Optimización de los parámetros de las medias móviles, prueba de resultados
  3. Establezca un margen de pérdidas adecuado
  4. Ajuste de los parámetros de las medias móviles para optimizar la frecuencia de las operaciones
  5. Parámetros de ajuste a las diferentes condiciones del mercado

Dirección de optimización

La estrategia puede ser optimizada en las siguientes direcciones:

  1. En combinación con otros indicadores de filtración de señales, como MACD, KDJ, etc., para evitar la generación de señales falsas

  2. Introducción de promedios móviles adaptativos, ajuste dinámico de los parámetros de las promedios móviles en función de la volatilidad del mercado, mejora de la estabilidad

  3. Optimización de los parámetros de las medias móviles para encontrar la combinación óptima de parámetros y mejorar la eficacia de las estrategias

  4. Incorporación de mecanismos de detención de pérdidas para evitar la expansión de las pérdidas y mejorar la capacidad de control de riesgos

  5. Combinación de múltiples marcos de tiempo que utilizan al mismo tiempo las señales de las líneas de sol y de la circunferencia para mejorar la estabilidad

  6. Cambios de estado de Markov, con diferentes parámetros para diferentes estados de mercado, para mejorar la adaptabilidad

Resumir

La estrategia de comercio de la media móvil doble es una estrategia de comercio cuantitativa que tiene un efecto más estable en general. Su principio de comercio es simple, fácil de entender y implementar, los parámetros se ajustan con flexibilidad y puede seguir eficazmente las tendencias del mercado. También hay ciertas limitaciones, como la generación de falsas señales, la dificultad para manejar las fuertes fluctuaciones del mercado, etc. Esto requiere ser controlado mediante la introducción de otras herramientas auxiliares y la optimización de los parámetros.

Código Fuente de la Estrategia
//@version=3
strategy("CS: 2 Moving Averages Script - Strategy (Testing)", overlay=true)

// === GENERAL INPUTS ===
// short ma
ma1Source   = input(defval = close, title = "MA 1 Source")
ma1Length   = input(defval = 5, title = "MA 1 Period", minval = 1)
// long ma
ma2Source   = input(defval = close, title = "MA 2 Source")
ma2Length   = input(defval = 15, title = "MA 2 Period", minval = 1)

// === SERIES SETUP ===
/// a couple of ma's..
ma1 = ema(ma1Source, ma1Length)
ma2 = ema(ma2Source, ma2Length)

// === PLOTTING ===
fast = plot(ma1, title = "MA 1", color = red, linewidth = 2, style = line, transp = 30)
slow = plot(ma2, title = "MA 2", color = green, linewidth = 2, style = line, transp = 30)

// === LOGIC ===
enterLong = crossover(ma1, ma2)
exitLong = crossover(ma2, ma1)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2012)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2012)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"

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