Únete hoy
Indicadores/probuilder · probacktest · proorder · proscreener

DivergenceMACD

DivergenceMACD en ProBuilder detecta divergencias alcistas y bajistas entre el precio y el MACD, devolviendo +1, -1 o 0. Sintaxis, parámetros y ejemplos.

Sintaxis

probuilder
DivergenceMACD[FastPeriod, SlowPeriod, SignalPeriod, Bars](price)

Parámetros

NombreTipoPor defectoDescripción
FastPeriodentero12Periodo de la EMA rápida en el cálculo subyacente del MACD.
SlowPeriodentero26Periodo de la EMA lenta en el cálculo subyacente del MACD.
SignalPeriodentero9Periodo de la EMA de la línea de señal aplicada a la línea MACD.
Barsentero20Número de bars recientes examinados en busca de un patrón de divergencia.
pricefuente de preciocloseSerie usada tanto para el cálculo del MACD como para los extremos de precio.

Fórmula

El detector compara la dirección de los extremos del precio con la dirección de los extremos del MACD en los últimos Bars barras:

código
Bullish divergence: price makes lower lows while the MACD makes higher lows  -> +1
Bearish divergence: price makes higher highs while the MACD makes lower highs -> -1
No divergence detected                                                        -> 0

El MACD subyacente es la construcción estándar: EMA rápida menos EMA lenta, con una EMA de línea de señal sobre el resultado.

Cómo funciona

El MACD va por detrás del momentum del precio, así que cuando el precio empuja hasta un nuevo extremo que el MACD se niega a confirmar, el movimiento avanza con menos momentum que antes. DivergenceMACD automatiza esa comparación. En cada bar calcula el MACD a partir de los periodos dados, localiza los swings relevantes de precio e indicador dentro de la ventana de detección, e informa del resultado como una señal discreta: +1, -1 o 0.

Como la salida es una serie de señal escalonada en lugar de una línea continua, suele representarse como un histograma o usarse directamente en condiciones de estrategia y de screener.

Para la verificación manual en un gráfico, fíjate en cómo se corresponden las instrucciones MACD relacionadas con los componentes del indicador: MACD[FastPeriod, SlowPeriod, SignalPeriod](price) devuelve el histograma (línea menos señal), MACDLine devuelve la propia línea MACD, y MACDsignal devuelve la línea de señal. Comparar la salida del detector con un panel del gráfico solo tiene sentido cuando el panel usa los mismos tres periodos y la misma fuente de precio.

Ejemplos

Ejemplo 1, Histograma de señales de divergencia (Indicador)

probuilder
// Standard 12/26/9 MACD settings, 20-bar detection window on the close
i = DivergenceMACD[12,26,9,20](close)
return i style(histogram)

Dibuja la salida bruta del detector como un histograma: las barras en +1 marcan divergencias alcistas, las barras en -1 marcan divergencias bajistas, y cero significa que no hay divergencia dentro de la ventana.

Ejemplo 2, Búsqueda de divergencias bajistas (ProScreener)

probuilder
// List instruments printing a bearish MACD divergence on the current bar
d = DivergenceMACD[12, 26, 9, 20](close)
hist = MACD[12, 26, 9](close)
SCREENER[d = -1](hist AS "MACD hist")

Devuelve los instrumentos en los que el precio marcó máximos más altos frente a un MACD que se debilita, con el valor actual del histograma MACD mostrado como contexto.

Ejemplo 3, Entrada por divergencia confirmada por el histograma (ProOrder)

probuilder
// Buy a bullish divergence once the MACD histogram turns positive
signal = DivergenceMACD[12, 26, 9, 20](close)
hist = MACD[12, 26, 9](close)

IF NOT LongOnMarket AND signal = 1 AND hist CROSSES OVER 0 THEN
  BUY 1 CONTRACT AT MARKET
  SET STOP %LOSS 2
ENDIF
IF LongOnMarket AND signal = -1 THEN
  SELL AT MARKET
ENDIF

La divergencia señala el setup y el cruce del histograma MACD por encima de cero, lo que significa que la línea MACD volvió a situarse por encima de su línea de señal, confirma el giro antes de entrar.

Interpretación

  • +1, divergencia alcista. El precio marcó un mínimo más bajo mientras el MACD marcaba un mínimo más alto. El momentum descendente se está debilitando; a veces precede a un giro al alza.
  • -1, divergencia bajista. El precio marcó un máximo más alto mientras el MACD marcaba un máximo más bajo. El momentum ascendente se está debilitando.
  • 0, sin señal. Ninguna divergencia válida dentro de la ventana de detección.

La divergencia marca un momentum que se debilita, no un giro confirmado. Las tendencias fuertes pueden imprimir divergencias repetidas mientras continúan, por lo que la mayoría de los flujos de trabajo combinan la señal con un disparador de confirmación o un filtro de tendencia de marco temporal superior.

Errores y trampas habituales

  • Olvidar el argumento de precio. A diferencia de DivergenceCCI, esta instrucción acepta una fuente de precio entre paréntesis después de los corchetes: DivergenceMACD[12,26,9,20](close). Omitirlo provoca un error de sintaxis.
  • Comparar con la salida equivocada del MACD. MACD[12,26,9](close) devuelve el histograma, no la línea MACD. Al comprobar las señales del detector frente a un gráfico, usa MACDLine para la línea y MACDsignal para la línea de señal, y mantén los tres periodos idénticos a los del detector.
  • Orden de los parámetros. El orden es fast, slow, signal, bars. Intercambiar SlowPeriod y Bars, por ejemplo DivergenceMACD[12,20,9,26](close), compila y detecta silenciosamente sobre un indicador distinto.
  • Actuar en cada divergencia dentro de una tendencia. Las divergencias bajistas en una tendencia alcista persistente fallan repetidamente. Filtra por dirección de la tendencia o exige confirmación, como en el Ejemplo 3.
  • DivergenceCCI, el mismo detector construido sobre el CCI.
  • DivergenceRSI, el mismo detector construido sobre el RSI.
  • MACD, histograma MACD, línea menos señal.
  • MACDLine, la línea MACD, EMA rápida menos EMA lenta.
  • MACDsignal, la línea de señal, una EMA de la línea MACD.
  • CCI, oscilador basado en la desviación también usado para trabajar con divergencias.
  • RSI, oscilador de momentum acotado con una lógica de divergencia comparable.
  • ExponentialAverage, el método de suavizado que subyace a todos los componentes del MACD.