Estrategia de cruce de la media móvil

El autor:¿ Qué pasa?, Fecha: 2024-01-23 15:20:16
Las etiquetas:

img

Resumen general

Esta es una estrategia de negociación basada en señales de cruce de promedio móvil. Utiliza una línea de promedio móvil de 45 días como el principal indicador técnico y genera señales de compra y venta cuando el precio rompe la línea de promedio móvil.

Estrategia lógica

Cuando el precio sube y se rompe por encima de la línea de la media móvil de 45 días, se genera una señal de compra. Después de mantener la posición durante 8 días, se genera una señal de venta. Después, si el precio sube y se rompe por encima de la línea de la media móvil de 45 días de nuevo, se activará una nueva señal de compra, y así sucesivamente.

Los principios lógicos específicos son:

  1. Calcule la línea de la media móvil de 45 días.
  2. Cuando el precio de cierre se rompe por debajo y por encima de la línea de media móvil, se genera una señal de compra para ir largo.
  3. Mantener la posición durante 8 días de negociación después de entrar en el mercado.
  4. Cierre la posición larga después de 8 días y genere una señal de venta.
  5. Si más tarde el precio de cierre vuelve a romper por debajo y por encima de la línea de la media móvil, regenerar una señal de compra para reabrir una posición larga.

Lo anterior constituye la lógica comercial central de esta estrategia.

Ventajas

Esta estrategia tiene las siguientes ventajas:

  1. Las normas comerciales son simples y claras, fáciles de entender y aplicar.
  2. Utiliza la característica de seguimiento de tendencias de las medias móviles para capturar eficazmente las tendencias a medio y largo plazo.
  3. El período de retención de 8 días es adecuadamente lo suficientemente largo como para realizar un seguimiento de las tendencias y lo suficientemente corto como para reducir las pérdidas a tiempo.
  4. Las reglas para volver a entrar en el mercado son claras, lo que ayuda a restringir la frecuencia de las operaciones.

Los riesgos

Hay algunos riesgos con esta estrategia:

  1. La naturaleza tardía de las medias móviles podría conducir a entradas tardías y salidas prematuras.
  2. El período de retención fijo y los parámetros del MA pueden no adaptarse a las condiciones cambiantes del mercado.
  3. La frecuencia de negociación puede ser demasiado alta, aumentando los costos y el deslizamiento.
  4. Las señales de ruptura pueden producir señales falsas que resultan en algunos latigazos.

Soluciones:

  1. Optimice los parámetros de MA para reducir el retraso.
  2. Aumentar el período de retención o utilizar paradas de seguimiento para rastrear mejor las tendencias.
  3. Añadir filtros que utilicen otros indicadores como MACD o KDJ para confirmar las señales.
  4. Refine las reglas de reingreso para controlar la frecuencia.

Áreas de mejora

Las principales áreas de mejora son:

  1. Optimizar los parámetros de la MA para encontrar las mejores combinaciones, por ejemplo, las MA de 15 días, 30 días o 60 días.

  2. Optimizar el período de retención para determinar la duración óptima, por ejemplo, 5 días, 10 días, 15 días.

  3. Se añadirán paradas posteriores para rastrear las tendencias y controlar los riesgos, por ejemplo, paradas de ensayo o paradas ATR.

  4. Añadir filtros utilizando otros indicadores como MACD, KDJ para reducir las señales falsas.

  5. Refinar las normas de reentrada para evitar el exceso de negociación, por ejemplo, imponer períodos de reflexión.

  6. La eficacia de las pruebas en diferentes mercados e instrumentos.

Resumen de las actividades

En resumen, esta estrategia de cruce de MA es un sistema de seguimiento de tendencias simple y práctico. Se aprovecha de la capacidad de seguimiento de tendencias de los MA y combina las rupturas de precios para generar señales comerciales.


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Moving Average Crossover Strategy", overlay=true)

// Calculate the 45-day moving average
ma_length = 45
ma = ta.sma(close, ma_length)

// Track position entry and entry bar
var bool in_long_position = na
var int entry_bar = na
var int exit_bar = na

// Entry condition: Close price crosses above the 45-day moving average to enter the position
if (not in_long_position and ta.crossover(close, ma) and not na(ma[1]) and close > ma and close[1] < ma[1])
    in_long_position := true
    entry_bar := bar_index

// Exit condition: Close the position after holding for 8 trading days
if (in_long_position and bar_index - entry_bar >= 8)
    in_long_position := false
    exit_bar := bar_index

// Re-entry condition: Wait for price to cross over the 45-day moving average again
if (not in_long_position and ta.crossover(close, ma) and not na(ma[1]) and close > ma and close[1] > ma[1] and (na(exit_bar) or bar_index - exit_bar >= 8))
    in_long_position := true
    entry_bar := bar_index

// Execute long entry and exit
if (in_long_position)
    strategy.entry("Long", strategy.long)

if (not in_long_position)
    strategy.close("Long")

Más.