Estrategia de media móvil exponencial doble rápida DEMA


Fecha de creación: 2023-09-26 20:28:11 Última modificación: 2023-09-26 20:28:11
Copiar: 0 Número de Visitas: 754
1
Seguir
1617
Seguidores

Descripción general

La estrategia de promedio móvil binario rápido de DEMA es una estrategia de negociación de líneas cortas basada en DEMA. La estrategia combina la suavidad de las medias móviles y las ventajas de respuesta rápida de EMA, con el objetivo de aprovechar el cruce de las líneas DEMA para capturar tendencias de precios de líneas cortas y obtener ganancias.

Principio de estrategia

La estrategia se basa principalmente en las horquillas doradas y las horquillas muertas de las líneas rápidas y lentas de DEMA para determinar las señales de compra y venta.

En concreto, la fórmula de cálculo de la línea rápida es:

demaFast = 2 * ema(close, fastPeriod) - ema(ema(close, fastPeriod), fastPeriod)

La fórmula de cálculo de la línea lenta es:

demaSlow = 2 * ema(close, slowPeriod) - ema(ema(close, slowPeriod), slowPeriod)

Entre ellos, fastPeriod y slowPeriod representan los períodos de los parámetros de las líneas rápida y lenta respectivamente.

Cuando la línea rápida atraviesa la línea lenta genera una señal de compra, y cuando la línea rápida atraviesa la línea lenta genera una señal de venta.

buy = crossover(demaSlow, demaFast)  
sell = crossunder(demaSlow, demaFast)

La estrategia determina la dirección de las transacciones concretas en función de la intersección de las líneas DEMA.

Análisis de las ventajas

La línea DEMA es más sensible que la media móvil tradicional y puede reaccionar más rápidamente a los cambios en los precios. Esto permite a la estrategia capturar más oportunidades de negociación en la línea corta.

Además, la línea DEMA combina las propiedades de suavización de las medias móviles para filtrar parte del ruido del mercado y evitar la generación de señales erróneas.

Además, la estrategia utiliza una combinación de líneas rápidas y lentas, lo que evita el cruce virtual hasta cierto punto. Las líneas rápidas y lentas tienen una configuración de parámetros diferente, y las señales de cruce son más confiables.

Por lo tanto, la estrategia DEMA de promedio móvil rápido de doble índice tiene las ventajas de ser rápida en la respuesta, filtrar el ruido y estabilizar la señal.

Análisis de riesgos

A pesar de que las líneas DEMA son más estables que las líneas EMA, existe el riesgo de que se produzcan cruces virtuales que produzcan señales erróneas. En este sentido, se puede ajustar adecuadamente el parámetro de ciclo de las líneas rápidas y lentas para asegurar que las líneas rápidas sean lo suficientemente sensibles y las líneas lentas lo suficientemente estables.

Además, como estrategia de negociación en línea corta, es más sensible a los costos de negociación. Si las transacciones son demasiado frecuentes o si el volumen de transacciones es demasiado pequeño, los costos de transacción pueden tener un cierto impacto en las ganancias.

Por último, ninguna estrategia de indicadores técnicos puede evitar completamente la ocurrencia de pérdidas y requiere una administración de fondos razonable para controlar el riesgo.

Dirección de optimización

La estrategia aún tiene margen de mejora:

  1. Se puede probar una combinación de diferentes parámetros de ciclo para encontrar la combinación de parámetros óptima.

  2. Se pueden agregar otros indicadores técnicos para confirmar las señales de negociación, como el RSI, etc., para evitar la aparición de señales erróneas.

  3. Se puede optimizar para los paros. Por ejemplo, establecer paros móviles para bloquear ganancias.

  4. Se pueden optimizar las estrategias de gestión de fondos, por ejemplo, ajustando el volumen de operaciones en función de los fondos de la cuenta o introduciendo posiciones de ajuste de volatilidad.

Resumir

La estrategia de media móvil binaria rápida de DEMA es una estrategia de corto plazo más estable en general. Tiene una velocidad de respuesta rápida, pero también tiene cierta capacidad de filtrado suave. En comparación con indicadores como SMA, la estrategia puede capturar más oportunidades de corto plazo.

Código Fuente de la Estrategia
/*backtest
start: 2022-09-19 00:00:00
end: 2023-09-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

strategy(title = "DEMA Strategy", shorttitle = "DEMA Strategy",initial_capital=1000, commission_value=0.2, commission_type =strategy.commission.percent, default_qty_value=100 , overlay = false, pyramiding=10, default_qty_type=strategy.percent_of_equity)
//@Moneros 2017
//Based on The DEMA is a fast-acting moving average that is more responsive to market changes than a traditional moving average
// !!!!  IN ORDER TO AVOID REPAITING ISSUES !!!!
// !!!!  DO NOT VIEW IN LOWER RESOLUTIONS THAN res/2 PARAMETER  !!!!
// for example res = 120 view >= 60m  res = 60 view >= 30m
// the length of the DEMA sampling shouldn't be longer than a candle 



// Best profits tested on BTCUSD
//res = 105 slowPeriod = 2 fastPeriod = 32
//res = 125 slowPeriod = 3 fastPeriod = 21
//res = 120 slowPeriod = 2 fastPeriod = 32 
//res = 130 slowPeriod = 1 fastPeriod = 24 
//res = 40 slowPeriod = 4 fastPeriod = 93 
//res = 60 slowPeriod = 1 fastPeriod = 67 

fastPeriod    = input(defval = 32, title = "DEMA FAST Period", minval = 2)
slowPeriod = input(defval = 2, title = "DEMA SLOW Period", minval = 1)
res = input(title="Resolution  - not lower than chart", defval="120")


demaFast =  request.security(syminfo.tickerid, res, 2 * ta.ema(close, fastPeriod) - ta.ema(ta.ema(close, fastPeriod), fastPeriod)  )
demaSlow  = request.security(syminfo.tickerid,res, 2 * ta.ema(close, slowPeriod) - ta.ema(ta.ema(close, slowPeriod), slowPeriod)  )



plot(demaFast,color=color.red)
plot(demaSlow,color=color.lime)

buy = ta.crossover(demaSlow, demaFast)
sell = ta.crossunder(demaSlow, demaFast)


// value [1] for avoid repaiting bottom bars
bgcolor( buy[1] ? color.lime : na, transp=0)
bgcolor( sell[1] ? color.red : na, transp=0)


strategy.entry("BUY", strategy.long, 1, when = buy)
strategy.entry("SELL", strategy.short, 1, when = sell )