Estrategia del índice de volatilidad de la DEMA

El autor:¿ Qué pasa?, Fecha: 2023-10-24 16:04:37
Las etiquetas:

img

Resumen general

Esta estrategia utiliza la media móvil exponencial doble (DEMA) para calcular la volatilidad de los precios y suaviza aún más la volatilidad para detectar tendencias en las fluctuaciones de precios, yendo largo cuando la volatilidad aumenta y corto cuando la volatilidad cae.

Estrategia lógica

  1. Calcular la media móvil exponencial doble (DEMA) del precio, fórmula: DEMA = 2*EMA (precio, N) - EMA (precio, N), N)

  2. Calcular la volatilidad de los precios en relación con DEMA: Volatilidad = (precio - DEMA) / precio * 100%

  3. Aplicar el suavizado DEMA en la volatilidad de nuevo para obtener la señal de tendencia de la volatilidad

  4. Cuando la volatilidad suavizada cruza por encima de un nivel, vaya largo.

  5. Se puede establecer para el comercio sólo durante un período de tiempo específico.

Ventajas

  1. DEMA detecta los cambios de tendencia más rápido que los promedios móviles simples.

  2. La volatilidad refleja el sentimiento del mercado, el aumento de la volatilidad representa el dominio de los toros, la caída representa los osos.

  3. La suavización de la volatilidad filtra el ruido a corto plazo y capta la tendencia principal.

  4. La negociación en períodos de tiempo específicos evita costos innecesarios de deslizamiento.

  5. Las estrategias de stop loss y salida controlan el riesgo.

Los riesgos

  1. DEMA puede retrasarse durante las tendencias fuertes, perdiendo los mejores puntos de entrada.

  2. El índice de volatilidad puede dar señales falsas, debe combinarse con otros indicadores.

  3. Debería poner un stop loss para evitar pérdidas ampliadas.

  4. Oportunidades perdidas fuera del período de negociación.

  5. El período de tiempo de negociación necesita pruebas en datos históricos, un tiempo inadecuado puede reducir las ganancias.

Gestión de riesgos

  1. Optimiza los parámetros de DEMA, usa valores N más pequeños.

  2. Combine otros indicadores como RSI, MACD para confirmar.

  3. Establecer un stop loss basado en datos históricos y pérdida máxima tolerable.

  4. Optimizar la selección del período de tiempo de negociación.

  5. Prueba los tiempos óptimos de negociación por separado para diferentes productos.

Oportunidades de mejora

  1. Prueba diferentes combinaciones de parámetros DEMA para obtener el mejor suavizado.

  2. Prueba otras medias móviles como EMA, SMA.

  3. La volatilidad se suavizará con otros parámetros.

  4. Añadir otros indicadores para la verificación multifactorial.

  5. Utilice el aprendizaje automático para optimizar automáticamente los parámetros de entrada y salida.

  6. Los parámetros óptimos se ensayarán por separado para los diferentes productos.

  7. Añadir estrategias de stop loss y salida para controlar el riesgo.

Resumen de las actividades

Esta estrategia captura los cambios de tendencia en el sentimiento del mercado mediante el cálculo de la volatilidad suavizada de DEMA, yendo largo cuando la volatilidad aumenta y corto cuando cae. Pero el retraso de DEMA y las señales falsas son riesgos. Los parámetros deben optimizarse, implementarse un estricto stop loss y otros indicadores combinados para la confirmación. Si se usa correctamente, esta estrategia puede detectar inversiones de tendencia y proporcionar buenos retornos de inversión.


/*backtest
start: 2022-10-17 00:00:00
end: 2023-10-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version= 2
strategy("DEMA of DPD Strategy ",shorttitle="DPD% DEMA " ,overlay=false)

buyper =input(-2)
sellper=input(2)

demalen = input(50,title="Dema Length")

e1= ema(close,demalen)
e2=ema(e1,demalen)
demaprice  =   2 * e1 - e2

price=close
demadifper =  ((price-demaprice)/price)*100


OverDemaPer = input(1, title="Band for OverBought")
UnderDemaPer= input(-1,title="Band for OverSold")

band1 = hline(OverDemaPer)
band0 = hline(UnderDemaPer)
zeroline=0
fill(band1, band0, color=green, transp=90)


demalen2 = input(21,title="DEMA to Calculate dema of DPD")
demaofdpd =ema(demadifper,demalen2)
demaofdpd2 =ema(demaofdpd,demalen2)
resultstrategy = 2*demaofdpd - demaofdpd2

plot(resultstrategy,color=blue)


yearfrom = input(2018)
yearuntil =input(2019)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  crossover(resultstrategy,buyper)  ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( crossunder(resultstrategy,sellper) ) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND",  comment="SELL")
else
    strategy.cancel(id="SELL")
    
    
    

Más.