Estrategia adaptativa de seguimiento de tendencias basada en la media móvil

SMA MA RR
Fecha de creación: 2025-02-18 14:23:08 Última modificación: 2025-02-18 14:23:08
Copiar: 0 Número de Visitas: 322
1
Seguir
1617
Seguidores

Estrategia adaptativa de seguimiento de tendencias basada en la media móvil

Descripción general

La estrategia es un sistema de seguimiento de tendencias basado en el cruce de dos líneas de equilibrio, que capta las tendencias del mercado a través de la cruz de las medias móviles a corto y largo plazo y gestiona el riesgo de negociación con una relación de riesgo-beneficio de 1: 3. La estrategia utiliza objetivos de pérdidas y ganancias fijos, mientras que combina un mecanismo de pérdidas móviles para proteger las ganancias.

Principio de estrategia

La estrategia utiliza un promedio móvil corto de 74 períodos (SMA corto) y un promedio móvil largo de 70 períodos (SMA largo) como indicadores principales. Cuando el promedio corto cruza hacia arriba el promedio largo, el sistema genera una señal de más; cuando el promedio corto cruza hacia abajo el promedio largo, el sistema genera una señal de vacío. El tamaño de la posición por transacción se fija en 0.002 dólares, el stop loss se establece en 353 dólares y el objetivo de ganancia es 3 veces el stop loss (USD 1059).

Ventajas estratégicas

  1. Gestión de riesgos perfecta: la adopción de un ratio de riesgo/beneficio fijo de 1:3 ayuda a obtener beneficios estables en operaciones a largo plazo
  2. Claridad de la señal: utilizando la clásica estrategia de cruce de línea uniforme, las señales de negociación son claras, fáciles de entender y ejecutar
  3. Alto grado de automatización: incluye una lógica de entrada y salida completa, sin intervención humana
  4. Protección de pérdidas móviles: con el mecanismo de pérdidas móviles, se puede bloquear efectivamente los beneficios obtenidos
  5. Estricto control de la posición: fijar el tamaño de la posición para evitar riesgos excesivos

Riesgo estratégico

  1. Lagresión de la media: la media móvil es esencialmente un indicador de retraso, y puede generar señales de retraso en mercados que fluctúan rápidamente
  2. No es aplicable a los mercados de oscilación: en los mercados de oscilación horizontal puede producirse frecuentemente falsas señales que causan pérdidas continuas
  3. Riesgo de pérdidas fijas: las pérdidas fijas en dólares pueden no ser lo suficientemente flexibles en caso de fluctuaciones extremas de precios
  4. Limitación del rango de tiempo: la estrategia solo funciona en un rango de tiempo específico y puede perder oportunidades de negociación importantes

Dirección de optimización de la estrategia

  1. Ciclo de mediano de ajuste dinámico: se puede ajustar automáticamente el ciclo de mediano en función de la volatilidad del mercado para mejorar la adaptabilidad de la estrategia
  2. Introducir filtros de fluctuación: agregar ATR u otros indicadores de fluctuación para ajustar el stop loss durante las altas fluctuaciones
  3. Optimización de la gestión de posiciones: realice ajustes dinámicos de posiciones basados en el valor neto de la cuenta y mejore la eficiencia de la utilización de fondos
  4. Aumentar los filtros de mercado: introducir indicadores de intensidad de tendencia para reducir automáticamente la frecuencia de las operaciones en mercados convulsionados
  5. Mejora de los mecanismos de salida: desarrollo de mecanismos de captación de ganancias más flexibles en combinación con las rupturas de precios o los indicadores de impulso

Resumir

Esta es una estrategia de seguimiento de tendencias estructurada y con claridad lógica. La estrategia de estabilidad y rentabilidad se espera que se mejore aún más a través de la introducción de la dirección de optimización recomendada, especialmente la introducción de ajustes de parámetros dinámicos y filtros de entorno de mercado.

Código Fuente de la Estrategia
/*backtest
start: 2024-02-18 00:00:00
end: 2025-02-17 00:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bitcoin Strategy by Jag", overlay=true)

// Input Parameters
shortSMALength = input.int(74, title="Short SMA Length")
longSMALength = input.int(70, title="Long SMA Length")
trailStopOffset = input.float(353, title="Trailing Stop Offset (USD)")  // Trailing Stop Loss Offset in USD
tradeSize = input.float(1, title="Trade Size")

// Automatically set Take Profit as 3 times Stop Loss
fixedTakeProfit = trailStopOffset * 3

// Backtesting Date Range
startDate = timestamp(2025, 02,13, 0, 0)
endDate = timestamp(2025, 03, 31, 23, 59)
withinDateRange = true

// Indicators
shortSMA = ta.sma(close, shortSMALength)
longSMA = ta.sma(close, longSMALength)

// Crossover Conditions
longCondition = withinDateRange and ta.crossover(shortSMA, longSMA)
shortCondition = withinDateRange and ta.crossunder(shortSMA, longSMA)

// Entry Logic
if (strategy.position_size == 0)  // Only allow new trades if no position is open
    if (longCondition)
        strategy.entry("Long", strategy.long, tradeSize)

    if (shortCondition)
        strategy.entry("Short", strategy.short, tradeSize)

// Exit Logic for Long Position
if (strategy.position_size > 0)
    strategy.exit("Long exit", "Long", stop=strategy.position_avg_price - trailStopOffset, limit=strategy.position_avg_price + fixedTakeProfit)  // Using stop and limit

// Exit Logic for Short Position
if (strategy.position_size < 0)
    strategy.exit("Short Exit", "Short", stop=strategy.position_avg_price + trailStopOffset, limit=strategy.position_avg_price - fixedTakeProfit)  // Using stop and limit

// Plot Moving Averages
plot(shortSMA, color=color.blue, title="Short SMA")
plot(longSMA, color=color.black, title="Long SMA")

// Visual Signals
plotshape(series=longCondition and strategy.position_size == 0, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", size=size.small)
plotshape(series=shortCondition and strategy.position_size == 0, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", size=size.small)