Esta estrategia utiliza una combinación de EMA de Lag Cero y Hull EMA para implementar el seguimiento de tendencias.
Primero calcule la EMA de Lag Cero:EMA1 = ema(close, Period) EMA2 = ema(EMA1, Period) Difference = EMA1 - EMA2 ZeroLagEMA = EMA1 + Difference
Donde ZeroLagEMA es la EMA de Lag Cero. Elimina el problema de retraso de la EMA regular.
Luego, calcule la curva suavizada de Hull EMA:
```
n2ma = 2*wma(ZeroLagEMA, round(S_period/2))
nma = wma(ZeroLagEMA, S_period)
n1 = wma(n2ma - nma, sqn)
```
Por último, determinar la dirección de la tendencia basada en la relación de magnitud entre la actual Hull EMA (n1) y la Hull EMA (n2) de los períodos anteriores, y formular la estrategia de negociación.
La mayor ventaja de esta estrategia es la capacidad de capturar con precisión las direcciones de tendencia.
La EMA de Lag Cero elimina el problema de retraso de la EMA regular y puede capturar los cambios de precios más rápidamente.
El doble de Hull EMA suaviza los precios y filtra el ruido para capturar las tendencias con mayor claridad.
En comparación con el uso de EMA o Hull EMA solo, la combinación aprovecha las fortalezas de ambos para una estrategia más precisa y confiable.
Los principales riesgos de esta estrategia son:
La configuración incorrecta de los parámetros Periodo y S_periodo puede hacer que la estrategia sea insensible al mercado y pierda oportunidades comerciales.
En los mercados de rango, la EMA y la EMA de Hull pueden producir más señales falsas de cruce que requieren precaución.
No puede manejar eficazmente las brechas de precios de un día para otro.
Por lo tanto, es necesario realizar pruebas cuidadosas de los parámetros, interpretar las señales de los indicadores con prudencia y evitar los riesgos de brecha de precios.
La estrategia se puede optimizar en los siguientes aspectos:
Combinaciones de parámetros de ensayo en diferentes mercados y plazos para una mejor adaptabilidad.
Añadir otros indicadores para filtrar las señales falsas de ruptura, como KDJ, MACD, etc., para mejorar la estabilidad.
Añadir stop loss para controlar la pérdida de una sola operación.
Optimizar el momento de entrada para mejorar aún más la tasa de ganancia, por ejemplo, evitando operaciones contra la tendencia.
Esta estrategia utiliza el combo de EMA de Hull de Lag Cero para capturar con precisión y sensibilidad las tendencias del mercado para la tendencia de bajo riesgo después de la negociación.
/*backtest start: 2023-08-19 00:00:00 end: 2023-09-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // Zero Lag EMA combined with Hull moving average for smoothing purposes. // author: email: sbginter@gmail.com strategy("Ujanja", overlay=true) Period = input(title="Period",defval=30, minval=1) S_period=input(title="Smoother Period",defval=176) EMA1= ema(close,Period) EMA2= ema(EMA1,Period) Difference= EMA1 - EMA2 ZeroLagEMA= EMA1 + Difference n2ma=2*wma(ZeroLagEMA,round(S_period/2)) nma=wma(ZeroLagEMA,S_period) diff=n2ma-nma sqn=round(sqrt(S_period)) n2ma1=2*wma(ZeroLagEMA[1],round(S_period/2)) nma1=wma(ZeroLagEMA[1],S_period) diff1=n2ma1-nma1 sqn1=round(sqrt(S_period)) n1=wma(diff,sqn) n2=wma(diff1,sqn) c=n1>n2?green:red ma=plot(n1,color=c) longCondition = n1>n2 if (longCondition) strategy.entry("Long", strategy.long) shortCondition = longCondition != true if (shortCondition) strategy.entry("Short", strategy.short)