Estrategia de trading de seguimiento de tendencias de volatilidad de rango adaptable

WPR RSI SMA ATR Trend
Fecha de creación: 2024-11-28 17:24:30 Última modificación: 2024-11-28 17:24:30
Copiar: 3 Número de Visitas: 135
1
Seguir
1166
Seguidores

Estrategia de trading de seguimiento de tendencias de volatilidad de rango adaptable

Descripción general

Se trata de una estrategia de seguimiento de tendencias adaptativa basada en la volatilidad combinada con el Williams Percent Range. La estrategia ajusta la sensibilidad de los juicios de tendencias mediante el cálculo del rango de fluctuación de los precios y un contador personalizado, lo que permite una mejor adaptabilidad en diferentes entornos de mercado. El núcleo de la estrategia es ajustar dinámicamente los parámetros del índice Williams observando la amplitud de las fluctuaciones de los precios para capturar con mayor precisión los puntos de cambio de las tendencias del mercado.

Principio de estrategia

La estrategia primero calcula el rango de fluctuación de los precios (Range) y su promedio móvil (AvgRange) en un ciclo. Se establecen dos contadores (TrueCount y TrueCount2) para registrar la frecuencia de ocurrencia de fluctuaciones significativas mediante la comparación de la relación entre el cambio de precios en tiempo real y el rango de fluctuación promedio. Estos contadores se utilizan para ajustar dinámicamente los parámetros de cálculo del índice de William, lo que permite a la estrategia ajustar automáticamente su sensibilidad según el estado de fluctuación del mercado.

Ventajas estratégicas

  1. Adaptabilidad - La estrategia puede mantener un rendimiento estable en diferentes entornos de mercado a través de un mecanismo de adaptación a la volatilidad
  2. Control de riesgo perfecto - Parámetros de riesgo integrados RISK permite a los comerciantes ajustar la agresividad de la estrategia de acuerdo con sus propias preferencias de riesgo
  3. La señal es clara - el uso de un claro mecanismo de señal de ruptura, para evitar falsas señales
  4. Escalabilidad: el marco de políticas permite la introducción de otros indicadores técnicos para la optimización
  5. Alta eficiencia de la computación - Utiliza métodos de computación simples y eficientes para transacciones en tiempo real

Riesgo estratégico

  1. Sensibilidad de los parámetros: la elección de los parámetros ASClength y RISK puede afectar significativamente el rendimiento de la estrategia
  2. Dependencia del entorno del mercado - puede generar demasiadas señales de negociación en un mercado convulso
  3. Retraso - El uso de las medias móviles puede provocar ciertos retrasos en las entradas y salidas
  4. Falsa ruptura - Falsa señal puede aparecer durante las altas oscilaciones Se recomienda reducir el riesgo mediante la retroevaluación de los parámetros de optimización, junto con otros indicadores de confirmación.

Dirección de optimización de la estrategia

  1. Introducción de indicadores de volumen de negocios - la eficacia de los cambios en la tendencia se confirma a través del volumen de negocios
  2. Optimización de la lógica de los contadores - se puede considerar el uso de métodos estadísticos más complejos para evaluar las fluctuaciones del mercado
  3. Añadir un mecanismo de stop loss - Se recomienda la introducción de stop loss dinámico para un mejor control del riesgo
  4. Filtrado de entornos de mercado - agregar módulos de juicio de entornos de mercado para evitar operaciones en condiciones de mercado inadecuadas
  5. Adaptabilidad de parámetros - Desarrollo de mecanismos de optimización automática de parámetros para mejorar la adaptabilidad de la estrategia

Resumir

Se trata de una estrategia innovadora que combina el análisis de la volatilidad y el seguimiento de las tendencias, lo que mejora la estabilidad y la fiabilidad de la estrategia a través de un mecanismo de adaptación. Si bien existen algunos riesgos inherentes, la estrategia se espera que mantenga un rendimiento estable en una variedad de entornos de mercado a través de la implementación de una configuración de parámetros razonable y una dirección de optimización. El diseño del marco de la estrategia permite una mayor expansión y optimización, con un buen potencial de desarrollo.

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

//@version=5
strategy("ASCTrend", shorttitle="ASCTrend", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

eternalfg = input(false, title="eternal 確定")
eternal = eternalfg ? 1 : 0
ASClength = input.int(title="ASC Length", minval=4, defval=10)
RISK = input.int(title="RISK", minval=0, defval=3)

// Custom sum function
customSum(source, length) =>
    sum = 0.0
    for i = 0 to length - 1
        sum := sum + source[i]
    sum

x1 = 67 + RISK
x2 = 33 - RISK
Range = ta.highest(ASClength) - ta.lowest(ASClength)
AvgRange = ta.sma(Range, ASClength)
CountFg = math.abs(open - close) >= AvgRange * 2.0 ? 1 : 0
TrueCount = customSum(CountFg, ASClength)
CountFg2 = math.abs(close[3] - close) >= AvgRange * 4.6 ? 1 : 0
TrueCount2 = customSum(CountFg2, ASClength - 3)
wpr3RR = ta.wpr(3 + RISK + RISK)
wpr3 = ta.wpr(3)
wpr4 = ta.wpr(4)
WprAbs = 100 + (TrueCount2 > 0 ? wpr4 : TrueCount > 0 ? wpr3 : wpr3RR)
ASC_Trend = 0
ASC_Trend := WprAbs[eternal] < x2[eternal] ? -1 : WprAbs[eternal] > x1[eternal] ? 1 : ASC_Trend[1]

if (ta.crossover(ASC_Trend, 0))
    strategy.entry("Long", strategy.long)

if (ta.crossunder(ASC_Trend, 0))
    strategy.entry("Short", strategy.short)

plotshape(ta.crossover(ASC_Trend, 0), location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small, text="B", textcolor=color.white)
plotshape(ta.crossunder(ASC_Trend, 0), location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small, text="S", textcolor=color.white)

alertcondition(ta.crossover(ASC_Trend, 0), title="ASC_Trend UP", message="ASC_Trend UP")
alertcondition(ta.crossunder(ASC_Trend, 0), title="ASC_Trend Down", message="ASC_Trend Down")