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

DIplus

DIplus en ProBuilder devuelve el indicador direccional positivo (DI+) del sistema ADX, que mide la fuerza del movimiento ascendente del precio. Sintaxis y ejemplos.

Sintaxis

probuilder
DIplus[N](price)

Parámetros

NombreTipoPor defectoDescripción
Nentero14Número de periodos para el cálculo, aplicado tanto al suavizado del movimiento direccional como al ATR.
pricefuente de preciocloseArgumento de precio pasado a la instrucción, normalmente close.

Fórmula

código
+DM    = current high - previous high   (kept only when positive
                                         and greater than the downward movement, else 0)
DIplus = 100 * WilderSmoothing[N](+DM) / AverageTrueRange[N]

Dividir por el ATR expresa el movimiento ascendente como una proporción del rango total, lo que hace el valor comparable entre instrumentos y regímenes de volatilidad.

Cómo funciona

Para cada bar, el sistema mide cuánto se extendió el máximo por encima del máximo anterior. Esa distancia cuenta como movimiento direccional positivo, pero solo cuando es mayor que la extensión a la baja del bar; en caso contrario el bar aporta cero. Los movimientos positivos se suavizan con el método de Wilder sobre N bars, dividido por el ATR en la misma ventana, y escalado de 0 a 100.

La línea sube mientras el mercado sigue marcando máximos más altos y decae cuando la presión al alza se estanca. La interpretación es siempre relativa a DIminus: DI+ por encima significa que los compradores controlan el movimiento direccional, y el cruce de las dos líneas es la señal primitiva del Directional Movement System. La fuerza de la tendencia se delega en ADX, que se construye a partir de las mismas entradas.

Cambiar N ajusta la sensibilidad. Los periodos más cortos hacen que la línea reaccione a bars de breakout individuales, los más largos favorecen las tendencias sostenidas frente a expansiones aisladas.

Ejemplos

Ejemplo 1, Señales de cruce direccional (Indicador)

probuilder
// 14-period directional indicators on the open
minus = DIminus[14](open)
plus = DIplus[14](open)
// Bullish signal: DI+ crosses above DI-
IF (plus > minus AND plus[1] < minus[1]) THEN
  bull = 1
  bear = 0
ENDIF
// Bearish signal: DI+ crosses below DI-
IF (plus < minus AND plus[1] > minus[1]) THEN
  bull = 0
  bear = -1
ENDIF
RETURN bull, bear

Marca el bar en el que DI+ adelanta a DI- como alcista (1) y el bar en el que vuelve a caer por debajo como bajista (-1). El estado de la señal persiste entre cruces porque las variables conservan su último valor asignado.

Ejemplo 2, Screener de tendencia alcista con filtro de fuerza (ProScreener)

probuilder
// Instruments in a confirmed uptrend: DI+ above DI- and ADX above 25
plus = DIplus[14](close)
minus = DIminus[14](close)
trendStrength = ADX[14]
SCREENER[plus > minus AND trendStrength > 25](plus - minus AS "DI+ lead")

Devuelve los instrumentos en los que domina el movimiento ascendente y el ADX confirma un mercado con tendencia, ordenados por cuánto aventaja DI+ a DI-.

Ejemplo 3, Entrada long en un cruce alcista (ProBacktest)

probuilder
// Enter long when DI+ overtakes DI- in a trending market
plus = DIplus[14](close)
minus = DIminus[14](close)

IF NOT LongOnMarket AND ADX[14] > 20 AND plus CROSSES OVER minus THEN
  BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket AND plus CROSSES UNDER minus THEN
  SELL AT MARKET
ENDIF

La entrada clásica de Wilder: comprar en el cruce de DI+ por encima de DI- cuando el ADX confirma fuerza, salir cuando el cruce se invierte.

Interpretación

  • DI+ por encima de DI-. El movimiento direccional al alza domina la ventana. Lectura tradicional: tendencia alcista, más fiable cuando ADX supera aproximadamente 20 a 25.
  • DI+ por debajo de DI-. El movimiento descendente domina, la presión alcista es secundaria.
  • DI+ cruzando por encima de DI-. El disparador alcista estándar del sistema.
  • Ambas líneas bajas y entrelazadas. Ninguno de los dos lados controla el mercado; las señales de cruce en este estado son en su mayoría ruido.

Errores y trampas habituales

  • Usar DI+ sin DI-. Un valor alto de DI+ por sí solo no establece una tendencia alcista, ya que DI- puede ser aún mayor. Compara ambas líneas o usa el combinado DI diferencia.
  • Condiciones de cruce escritas al revés. Con dos nombres de variable parecidos, minus CROSSES OVER plus y plus CROSSES OVER minus se diferencian en una sola transposición y producen sistemas opuestos. Nombra las variables de forma explícita y verifica la dirección de cada condición.
  • Señales en mercados planos. Sin un ADX filtro, las líneas DI se cruzan con frecuencia en rangos. Exigir ADX[14] > 20, como en el Ejemplo 3, elimina muchos disparos de baja calidad.
  • Sensibilidad al periodo. Pequeño N valores permiten que un único bar amplio domine la lectura, los valores grandes retrasan las señales de cruce. Cambia el periodo en ambas líneas DI a la vez, nunca solo en un lado.
  • DIminus, la contraparte negativa que mide el movimiento descendente.
  • DI, diferencia en una sola línea de DI+ menos DI-.
  • ADX, fuerza de la tendencia derivada de las líneas DI.
  • ADXR, variante suavizada del ADX.
  • AverageTrueRange, el normalizador de volatilidad en la fórmula.
  • TR, true range de un solo bar.
  • VIplus, línea vortex positiva, una medida relacionada del movimiento ascendente.
  • VIminus, línea vortex negativa.