Estrategia de ajuste de posición dinámica adaptativa de tipo de identificación de tendencias de series de tiempo múltiples

DEMA ATR supertrend
Fecha de creación: 2025-02-24 09:48:55 Última modificación: 2025-02-27 16:49:07
Copiar: 5 Número de Visitas: 433
2
Seguir
319
Seguidores

Estrategia de ajuste de posición dinámica adaptativa de tipo de identificación de tendencias de series de tiempo múltiples Estrategia de ajuste de posición dinámica adaptativa de tipo de identificación de tendencias de series de tiempo múltiples

Descripción general

La estrategia es un sistema de seguimiento de tendencias basado en Supertrend y el doble índice de promedios móviles (DEMA). La estrategia construye un marco de decisión de comercio fiable mediante la combinación de la capacidad de identificación de la dirección de la tendencia de los indicadores de Supertrend y la función de confirmación de tendencias de DEMA.

Principio de estrategia

La lógica central de la estrategia se basa en los siguientes componentes clave:

  1. Indicador de Supertrend: utiliza el ciclo ATR establecido en 10, con un factor de 3.0, para capturar la tendencia de los precios en el punto de inflexión.
  2. Indicador DEMA: utiliza un promedio móvil de doble índice de 100 períodos para filtrar el ruido del mercado y la fiabilidad de la confirmación de tendencias.
  3. Mecanismo de generación de señales de negociación:
    • Señales múltiples: se activan cuando el precio cruza la Supertrend y el precio de cierre está por encima de DEMA
    • Señales de cabeza vacía: se activan cuando el precio cruza la Supertrend y el precio de cierre está por debajo de la DEMA
  4. Gestión de posiciones: El sistema permite ajustes de posiciones flexibles, incluida la apertura directa de posiciones, operaciones de repositorio y operaciones de repositorio.

Ventajas estratégicas

  1. Mecanismo de confirmación múltiple: mejora significativamente la fiabilidad de las señales de negociación mediante la combinación de los indicadores Supertrend y DEMA.
  2. Gestión de posiciones flexible: soporte para operaciones de dos vías múltiples, puede ajustar la dirección de la posición en función de la situación del mercado.
  3. Control de riesgos: Tiene un mecanismo de respuesta rápida en los puntos de cambio de tendencia, para detener los daños y aprovechar las oportunidades de nuevas tendencias.
  4. Los parámetros son muy ajustables: los parámetros clave como el ciclo ATR, el factor Supertrend y el ciclo DEMA se pueden optimizar según las diferentes características del mercado.

Riesgo estratégico

  1. El mercado horizontal no ha funcionado bien: en un entorno de mercado sin una tendencia obvia, puede producirse una falsa señal de ruptura frecuente.
  2. Riesgo de atraso: el uso de DEMA como filtro puede causar un pequeño retraso en el tiempo de entrada, lo que afecta a parte de la ganancia.
  3. Sensibilidad de parámetros: los efectos de la estrategia son sensibles a la configuración de parámetros, y diferentes combinaciones de parámetros pueden ser requeridas en diferentes entornos de mercado.

Dirección de optimización de la estrategia

  1. La introducción de un mecanismo de adaptación a las fluctuaciones:
    • Valores del factor Supertrend ajustados a la fluctuación del mercado
    • Aumento de la válvula de filtración durante las altas fluctuaciones y relajación adecuada durante las bajas
  2. Añadir un módulo de identificación del entorno de mercado:
    • Añadir indicadores de intensidad de tendencia y reducir la frecuencia de las operaciones en el mercado horizontal
    • Introducción de indicadores de volumen de negocios para ayudar a confirmar la efectividad de la ruptura
  3. Mejorar el mecanismo de stop loss:
    • Implementación de un stop loss dinámico basado en el ATR
    • Adición de un Stop Loss móvil para proteger el beneficio

Resumir

La estrategia, mediante la combinación ingeniosa de los indicadores Supertrend y DEMA, construye un sólido sistema de seguimiento de tendencias. Sus ventajas son la alta fiabilidad de la señal, el control de riesgos es perfecto, pero aún requiere que el comerciante optimice los parámetros de acuerdo con las características específicas del mercado.

Código Fuente de la Estrategia
/*backtest
start: 2025-02-16 00:00:00
end: 2025-02-23 00:00:00
period: 5m
basePeriod: 5m
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

//@version=6
strategy("Supertrend with DEMA Strategy (Reversal Enabled)", overlay=true)

// ===== Parameters for Supertrend =====
atrPeriod = input.int(10, "ATR Length", minval=1)
factor    = input.float(3.0, "Factor", minval=0.01, step=0.01)

// ===== Parameters for Allowing Trade Directions =====
allowLong  = input.bool(true,  "Allow LONG")
allowShort = input.bool(true,  "Allow SHORT")

// Supertrend Calculation
[supertrend, direction] = ta.supertrend(factor, atrPeriod)
// Set the value to na for the first bar to avoid false signals
supertrend := barstate.isfirst ? na : supertrend

// Plot Supertrend Lines
plot(direction < 0 ? supertrend : na, "Up Trend",   color=color.green, style=plot.style_linebr)
plot(direction < 0 ? na : supertrend, "Down Trend", color=color.red,   style=plot.style_linebr)

// ===== Parameters and Calculation for DEMA =====
demaLength = input.int(100, "DEMA Length", minval=1)
e1 = ta.ema(close, demaLength)
e2 = ta.ema(e1, demaLength)
dema = 2 * e1 - e2

// Plot DEMA
plot(dema, "DEMA", color=#43A047)

// ===== Signal Definitions =====
// Basic Supertrend Trend Change Signals
trendUp   = ta.crossover(close, supertrend)
trendDown = ta.crossunder(close, supertrend)

// Entry Signals considering DEMA
longSignal  = trendUp and (close > dema)
shortSignal = trendDown and (close < dema)

// ===== Entry/Exit Logic =====

// LONG Signal
if (longSignal)
    // If there is an open SHORT position – reverse it to LONG if allowed
    if (strategy.position_size < 0)
        if (allowLong)
            strategy.close("Short")
            strategy.entry("Long", strategy.long)
        else
            // If reversal to LONG is not allowed – just close SHORT
            strategy.close("Short")
    // If there is no position – open LONG if allowed
    else if (strategy.position_size == 0)
        if (allowLong)
            strategy.entry("Long", strategy.long)

// SHORT Signal
if (shortSignal)
    // If there is an open LONG position – reverse it to SHORT if allowed
    if (strategy.position_size > 0)
        if (allowShort)
            strategy.close("Long")
            strategy.entry("Short", strategy.short)
        else
            // If reversal to SHORT is not allowed – just close LONG
            strategy.close("Long")
    // If there is no position – open SHORT if allowed
    else if (strategy.position_size == 0)
        if (allowShort)
            strategy.entry("Short", strategy.short)

// ===== Additional Position Closure on Trend Change without Entry =====
// If Supertrend crosses (trend change) but DEMA conditions are not met,
// close the opposite position if open.
if (trendUp and not longSignal and strategy.position_size < 0)
    strategy.close("Short")

if (trendDown and not shortSignal and strategy.position_size > 0)
    strategy.close("Long")