Double Exponential Moving Average (DEMA): guía práctica y optimizada

Double Exponential Moving Average (DEMA): guía práctica y optimizada

Detalle del indicador:

Las medias móviles son indicadores básicos en el análisis técnico. Sin embargo, suelen generar retraso en sus señales. Por lo tanto, los traders necesitan herramientas más rápidas. En este contexto, surge la Double Exponential Moving Average (DEMA).

De hecho, Patrick Mulloy la desarrolló en 1994 con un objetivo claro: reducir el lag. Además, logra mayor velocidad sin perder suavidad. En consecuencia, la DEMA es útil en mercados dinámicos. En resumen, se trata de una evolución práctica de la EMA.

¿Qué es la DEMA?

Definición

La DEMA es una media móvil doblemente exponencial. En otras palabras, combina dos EMA en un cálculo único. Así pues, ofrece señales más rápidas y claras. Incluso, mantiene un nivel de suavidad suficiente para filtrar ruido. Por consiguiente, es más efectiva que la EMA clásica.

La fórmula matemática

La fórmula es simple: DEMA = 2 × EMA(n) – EMA(EMA(n)). Primero, se calcula una EMA normal. Después, se obtiene la EMA de esa misma EMA. Finalmente, se aplica la ecuación para obtener la DEMA.

Por ejemplo, al usar 20 periodos, se obtiene una curva más ágil que la EMA(20). En efecto, la DEMA reduce el retraso y reacciona con mayor rapidez. En resumen, permite detectar tendencias antes que otros promedios.

Cómo interpretar la DEMA

Tendencias principales

Si el precio está por encima de la DEMA, el mercado se considera alcista. En cambio, si se encuentra por debajo, se considera bajista. Por lo tanto, la DEMA sirve como filtro direccional claro.

Además, la pendiente añade información extra. Una línea ascendente refuerza el sesgo comprador. En efecto, una pendiente descendente confirma presión vendedora.

Cruces de medias

Es habitual combinar dos DEMA: una rápida y otra lenta. Por ejemplo, de 10 y 50 periodos. Cuando la rápida cruza hacia arriba, genera señal de compra. Sin embargo, si cruza hacia abajo, anticipa venta. En conclusión, los cruces son útiles para detectar giros.

Retrocesos o pullbacks

Los retrocesos a la DEMA pueden aprovecharse como entradas. De hecho, permiten mejores ratios riesgo-beneficio. Asimismo, muchos traders la consideran soporte dinámico. Incluso, puede usarse como trailing stop para proteger beneficios. En definitiva, es una herramienta versátil.

Estrategias con la DEMA

Estrategia 1: Cruce de medias

Comprar cuando la DEMA rápida cruza hacia arriba a la lenta. Vender cuando ocurre lo contrario. No obstante, siempre conviene confirmar la señal. Por consiguiente, lo ideal es añadir volumen o acción del precio. En resumen, los cruces son efectivos con filtros adicionales.

Estrategia 2: Retrocesos en tendencia

Esperar un retroceso a la DEMA es una técnica popular. Por ejemplo, en tendencia alcista, una vela de rechazo en la DEMA puede anticipar continuidad. Además, el stop se coloca bajo la línea. Aunque no siempre se cumple, cuando ocurre ofrece entradas claras. En conclusión, es muy usada en swing e intradía.

Estrategia 3: Confirmación con otros indicadores

La DEMA gana fuerza al combinarla con RSI o MACD. De hecho, esta unión filtra señales falsas. En efecto, aumenta la fiabilidad de las entradas. Así pues, conviene integrarla en un sistema completo. Finalmente, la confirmación es clave en trading.

Ventajas y desventajas

Ventajas

  • Reacciona más rápido que EMA y SMA. En consecuencia, anticipa movimientos.
  • Funciona en múltiples marcos temporales. De hecho, sirve para scalping, intradía y swing.
  • Genera entradas tempranas. Así pues, mejora el timing.
  • Se adapta a distintos estilos. En efecto, es útil para traders novatos y avanzados.
  • Proporciona señales claras. En resumen, es práctica y eficiente.

Desventajas

  • En mercados laterales puede fallar. Por eso, conviene usar filtros adicionales.
  • Requiere práctica constante. Asimismo, necesita backtesting.
  • No asegura éxito aislada. En conclusión, debe integrarse en un plan completo.
  • Puede generar señales falsas. En efecto, sobre todo sin tendencia definida.
  • Necesita confirmación. Por lo tanto, nunca debe usarse sola.

Conclusión

Valor práctico

La DEMA reduce el retraso típico de las medias móviles. En definitiva, ofrece una lectura más rápida. Sin embargo, no es una solución mágica. En efecto, requiere apoyo de otros indicadores. Por lo tanto, debe aplicarse con cautela.

Recomendación final

Finalmente, lo ideal es probar la DEMA en demo antes de usarla en real. Además, hay que adaptarla al estilo de cada trader. En consecuencia, conviene validar su eficacia con backtesting. Por otro lado, siempre debe acompañarse de gestión del riesgo. En conclusión, la DEMA aporta valor cuando se usa de forma disciplinada.

Código Pine Script Trading View

//@version=5
strategy(«Estrategia DEMA — Cruces + RSI + SL/TP», overlay=true, initial_capital=10000, pyramiding=0,
default_qty_type=strategy.percent_of_equity, default_qty_value=10, commission_type=strategy.commission.percent, commission_value=0.05)

// ===== Inputs =====
src = input.source(close, «Fuente»)
lenFast = input.int(10, «DEMA rápida», minval=1)
lenSlow = input.int(50, «DEMA lenta», minval=1)
useRSI = input.bool(true, «Usar filtro RSI (>50 largos, <50 cortos)»)
rsiLen = input.int(14, «Longitud RSI», minval=2)
slPerc = input.float(1.0, «Stop Loss (%)», minval=0.0, step=0.1)
tpPerc = input.float(2.0, «Take Profit (%)», minval=0.0, step=0.1)
allowPB = input.bool(false, «Permitir entradas por Pullback a DEMA»)

// ===== Función DEMA =====
f_dema(_src, _len) =>
ema1 = ta.ema(_src, _len)
2.0 * ema1 – ta.ema(ema1, _len)

// ===== Cálculos =====
demaFast = f_dema(src, lenFast)
demaSlow = f_dema(src, lenSlow)
rsi = ta.rsi(src, rsiLen)

trendUp = demaFast > demaSlow
trendDown = demaFast < demaSlow

crossUp = ta.crossover(demaFast, demaSlow)
crossDn = ta.crossunder(demaFast, demaSlow)

pullbackLong = trendUp and low <= demaFast and close > open
pullbackShort = trendDown and high >= demaFast and close < open

longOK = not useRSI or rsi > 50
shortOK = not useRSI or rsi < 50

// ===== Entradas =====
// Señal base: cruces
longSignal = crossUp and longOK
shortSignal = crossDn and shortOK

// Señal alternativa: pullbacks (opcional)
longSignal := allowPB ? (longSignal or (pullbackLong and longOK)) : longSignal
shortSignal := allowPB ? (shortSignal or (pullbackShort and shortOK)) : shortSignal

// ===== Gestión de órdenes =====
if (longSignal)
strategy.entry(«Long», strategy.long)
if (shortSignal)
strategy.entry(«Short», strategy.short)

// SL/TP dinámicos
if strategy.position_size > 0
longPrice = strategy.position_avg_price
longSL = longPrice * (1 – slPerc/100.0)
longTP = longPrice * (1 + tpPerc/100.0)
strategy.exit(«Long SL/TP», «Long», stop=longSL, limit=longTP)

if strategy.position_size < 0
shortPrice = strategy.position_avg_price
shortSL = shortPrice * (1 + slPerc/100.0)
shortTP = shortPrice * (1 – tpPerc/100.0)
strategy.exit(«Short SL/TP», «Short», stop=shortSL, limit=shortTP)

// ===== Plots de referencia =====
plot(demaFast, «DEMA rápida», color=color.new(color.teal, 0), linewidth=2)
plot(demaSlow, «DEMA lenta», color=color.new(color.orange, 0), linewidth=2)
bgcolor(trendUp ? color.new(color.teal, 92) : trendDown ? color.new(color.orange, 92) : na)

 

Si quieres dar un paso más en el trading, y quieres darnos sugerencias estamos abiertos a comentarios e ideas constructivas,

CONTACTA CON NOSOTROS Y CREEMOS COMUNIDAD

IR A NUESTRO CANAL DE YOUTUBE

 

IMPORTANTE:

En ningún momento queremos que lo reflejado en esta web, se considere como recomendaciones.

 

El objetivo es mostrar la veracidad de las estrategias desde un punto de vista técnico de análisis de los resultados arrojados por los algoritmos de trading, estudiando los años pasados que pueden coincidir o no con los futuros.