Estrategia de cruce de la media móvil

El autor:¿ Qué pasa?, Fecha: 2023-10-17 16:46:57
Las etiquetas:

img

Resumen general

Esta estrategia es una estrategia de seguimiento de tendencias basada en promedios móviles. Utiliza el cruce y el cruce de promedios móviles rápidos y lentos para determinar la dirección de la tendencia para el comercio de tendencias de bajo riesgo.

Estrategia lógica

La estrategia emplea un promedio móvil rápido del período 9 y un promedio móvil lento del período 21. Cuando el MA rápido cruza por encima del MA lento, indica una tendencia alcista en el mercado y se toma una posición larga.

Específicamente, la estrategia calcula los valores de los MA rápidos y lentos y compara su relación para determinar la dirección de la tendencia. En una tendencia alcista, si el MA rápido cruza por encima del MA lento, se activa una señal de entrada larga. En una tendencia bajista, si el MA rápido cruza por debajo del MA lento, se activa una señal de salida para cerrar la posición larga existente.

De esta manera, el cruce y el cruce de los MAs rápidos y lentos capturan las transiciones de tendencia para la tendencia de bajo riesgo después de la negociación.

Ventajas

  • El uso de medias móviles para determinar la tendencia filtra el ruido del mercado e identifica la dirección de la tendencia
  • El MA rápido captura los cambios de tendencia más rápido, mientras que el MA lento filtra señales falsas
  • El uso del crossover para comprar y del crossunder para vender evita perseguir los tops y vender los bottoms
  • Lógica de negociación sencilla y clara, fácil de entender e implementar

Los riesgos

  • Las medias móviles tienen retraso y pueden perder los mejores puntos de entrada/salida para las transiciones de tendencia
  • Las longitudes fijas de los MA no pueden adaptarse a los diferentes ciclos del mercado
  • Las estrategias de doble MA tienden a generar señales comerciales excesivas y sobreajuste
  • El uso de MAs sólo para determinar las operaciones es propenso a eventos repentinos y pérdidas

Los riesgos se pueden gestionar ajustando los parámetros, añadiendo filtros, deteniendo pérdidas y obteniendo beneficios.

Direcciones de mejora

  • Prueba diferentes ajustes de parámetros como las longitudes MA, los umbrales de cruce/cruce, etc.
  • Añadir indicadores de impulso como filtros para evitar falsas rupturas
  • Añadir indicadores que determinen la tendencia para distinguir los mercados de tendencia y los mercados de variación
  • Incorporar métricas de volatilidad para optimizar las paradas y obtener ganancias
  • Emplear el aprendizaje automático para optimizar dinámicamente los parámetros

Resumen de las actividades

Como una estrategia simple de seguimiento de tendencias, la idea central es usar MA rápidos y lentos para determinar la dirección de la tendencia. Los pros son la simplicidad, reglas claras y seguimiento de tendencias efectivo. Los contras son el retraso, señales falsas y operaciones excesivas. Podemos optimizarlo ajustando parámetros y agregando otros indicadores para adaptarnos mejor a las condiciones del mercado. En general, la estrategia de MA dual proporciona un enfoque simple y confiable para el comercio cuantitativo. Con mejoras continuas, su rendimiento puede mejorar aún más.


/*backtest
start: 2023-09-01 00:00:00
end: 2023-09-20 23:59:59
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Profitable Crypto Strategy", shorttitle="Profit Strategy", overlay=true)

// Define strategy parameters
fastLength = input.int(9, title="Fast MA Length", minval=1)
slowLength = input.int(21, title="Slow MA Length", minval=1)
stopLossPercent = input.float(1.0, title="Stop Loss %", step=0.1)
takeProfitPercent = input.float(1.0, title="Take Profit %", step=0.1)

// Calculate moving averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// Entry condition: Buy when fast MA crosses above slow MA
longCondition = ta.crossover(fastMA, slowMA)
// Exit condition: Sell when fast MA crosses below slow MA
shortCondition = ta.crossunder(fastMA, slowMA)

// Plot moving averages on the chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.orange, title="Slow MA")

// Strategy entry and exit logic
var stopLossPrice = 0.0
var takeProfitPrice = 0.0

if (longCondition)
    stopLossPrice := close * (1.0 - stopLossPercent / 100)
    takeProfitPrice := close * (1.0 + takeProfitPercent / 100)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.close("Long")

// Set stop loss and take profit for open positions
strategy.exit("Stop Loss/Profit", stop=stopLossPrice, limit=takeProfitPrice)


Más.