Estrategia de seguimiento de tendencia promedio de doble suavizado: basada en la línea K mejorada de Ping An Jiang


Fecha de creación: 2024-11-29 15:03:37 Última modificación: 2024-11-29 15:03:37
Copiar: 1 Número de Visitas: 491
1
Seguir
1617
Seguidores

Estrategia de seguimiento de tendencia promedio de doble suavizado: basada en la línea K mejorada de Ping An Jiang

Descripción general

Esta estrategia es un sistema de seguimiento de tendencias basado en la línea K de Heikin-Ashi. Se reduce el ruido del mercado y se proporciona una señal de tendencia más clara mediante el suavizado de la media móvil de doble índice de Heikin-Ashi. La estrategia opera de varias maneras, manteniendo posiciones en tendencias alcistas y posiciones estacionadas en tendencias bajas, para obtener ganancias del mercado mediante la captura de tendencias eficiente.

Principio de estrategia

La lógica central de la estrategia incluye los siguientes pasos clave:

  1. Primero EMA para el procesamiento de datos de precios de OHLC
  2. Utilizando el precio de cálculo después de la suavización de la línea K de Pingyang
  3. Se hace un segundo suavizado del EMA en la línea K de Pingyang
  4. El cambio de color de la línea K se determina comparando el precio de apertura con el precio de cierre después de la suavización
  5. En la línea K, la señal de compra se genera cuando el rojo se convierte en verde, y la señal de venta se genera cuando el verde se convierte en rojo
  6. Las operaciones se realizan con posiciones del 100% del valor total de la cuenta.

Ventajas estratégicas

  1. La doble suavización reduce significativamente las señales falsas
  2. El simple hecho de hacer varias estrategias reduce el riesgo de caer en la banca.
  3. En el caso de los juegos de azar, los jugadores deben tener una tendencia establecida para ganar.
  4. Un sistema de señales completo para el comercio automatizado
  5. Opciones de ciclo de tiempo flexibles para satisfacer diferentes necesidades de transacción
  6. Reglas de entrada y salida claras y fáciles de cumplir
  7. Apoyar la gestión de fondos en diferentes condiciones de mercado

Riesgo estratégico

  1. La reversión de la tendencia podría dar lugar a una mayor retirada
  2. Las señales falsas pueden ser repetidas en mercados convulsionados
  3. El comercio de posición completa aumenta el riesgo de capital
  4. El retraso en la señal de entrada puede haber perdido parte de la subida
  5. Diferencias en el desempeño en diferentes períodos de tiempo

Dirección de optimización de la estrategia

  1. Introducción de filtros de intensidad de tendencia para reducir las señales falsas de los mercados convulsivos
  2. Aumentar la gestión dinámica de las tenencias y optimizar el uso de los fondos
  3. Añadido el Stop Loss móvil para controlar el riesgo de retiro
  4. Eficacia de la señal confirmada en combinación con otros indicadores técnicos
  5. Desarrollar un sistema de parámetros de adaptación para mejorar la estabilidad de la estrategia

Resumir

La estrategia tiene como núcleo un sólido sistema de seguimiento de tendencias a través de un doble proceso de suavización y una línea K de Ping-Yang, de tipo mejorado. La estrategia está diseñada de manera concisa, fácil de entender y ejecutar, y ofrece varias direcciones de optimización para adaptarse a diferentes entornos de mercado. Aunque existe cierto riesgo de retraso y retirada, la estrategia puede proporcionar a los inversores una herramienta de seguimiento de tendencias confiable a través de medidas razonables de gestión de fondos y control de riesgos.

Código Fuente de la Estrategia
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Smoothed Heiken Ashi Strategy Long Only", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

len = input.int(10, title="EMA Length")
len2 = input.int(10, title="Smoothing Length")
start_date = input(defval=timestamp("2020-01-01"), title="Backtest Start Date")

o = ta.ema(open, len)
c = ta.ema(close, len)
h = ta.ema(high, len)
l = ta.ema(low, len)

haclose = (o + h + l + c) / 4
var float haopen = na
haopen := na(haopen[1]) ? (o + c) / 2 : (haopen[1] + haclose[1]) / 2
hahigh = math.max(h, math.max(haopen, haclose))
halow = math.min(l, math.min(haopen, haclose))

o2 = ta.ema(haopen, len2)
c2 = ta.ema(haclose, len2)
h2 = ta.ema(hahigh, len2)
l2 = ta.ema(halow, len2)

col = o2 > c2 ? color.red : color.lime

// Plot candles without visible wicks
plotcandle(o2, o2, c2, c2, title="Heikin Smoothed", color=col, wickcolor=color.new(col, 100))

// Delayed Buy and Sell signals
colorChange = col != col[1]
buySignal = colorChange[1] and col[1] == color.lime
sellSignal = colorChange[1] and col[1] == color.red

plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Strategy entry and exit
if (true)
    if (buySignal)
        strategy.entry("Long", strategy.long)
    if (sellSignal)
        strategy.close("Long")

// Add a vertical line at the start date
// if (time == start_date)
//     line.new(x1=bar_index, y1=low, x2=bar_index, y2=high, color=color.blue, width=2)

// Alert conditions
alertcondition(colorChange[1], title="Color Change Alert", message="Heiken Ashi Candle Color Changed")
alertcondition(buySignal, title="Buy Signal Alert", message="Buy Signal: Color changed from Red to Green")
alertcondition(sellSignal, title="Sell Signal Alert", message="Sell Signal: Color changed from Green to Red")