Curso de Programación. 7.2. Average Directional Index

Finalizamos el estudio del Average Directional Movement Index centrándonos en su aplicación conjunta con los índices direccionales positivo y negativo.

Estudio combinado de los indices direccionales
Como decíamos en el anterior artículo, el uso combinado de estos indicadores nos permite realizar un estudio completo para la elaboración de una estrategia, ya que:

1) La relación entre los índices direccionales positivo y negativo nos permite determinar la dirección de la tendencia.
2) La situación del ADX sirve como método de confirmación, ya que refleja la fuerza de la tendencia.

A la hora de elaborar una estrategia, las señales que debemos considerar serían las siguientes:

1) El crecimiento del DI+ sobre el DI- puede considerarse como señal de compra.
2) El crecimiento del DI- sobre el DI- puede considerarse como señal de venta.
3) El crecimiento del ADX por encima de su punto de inflexión (20/25) indica una tendencia creciente y por tanto, confirmación del impulso.
4) La caída del ADX bajo su punto de inflexión refleja agotamiento o falta de inercia, por tanto, señal de sobrecompra o sobreventa.




El Directional Movement
A fin de facilitar la labor de análisis de los índices direccionales, Visual Chart ofrece una herramienta llamada Directional Movemente Index. Este indicador lo encontrarán en la lista de indicadores públicos.

Como decimos, gracias a éste indicador podemos visualizar desde la misma ventana el conjunto de los tres indicadores implicados en la estrategia direccional vista anteriormente. Además, proporciona un cuarto instrumento llamado el ADX Promedio, con el cual se puede analizar la señal del ADX suavizada. La fórmula del ADX Promedio es la siguiente:




Donde el periodo 14 es el valor dado por defecto, pudiendo ser cualquier otro periodo definido por el usuario.

Estrategia Direccional
Vamos a utilizar el indicador Directional Movement para desarrollar esta nueva estrategia. Las reglas de operativa que seguirá dicha estrategia se basan en los fundamentos definidos anteriormente:

1) Cuando el ADX está por arriba de 25, operar en función del cruce entre el DI positivo y negativo.
2) Mantenerse mientras el ADX permanezca por encima de 20.

Como vemos, hemos definido tanto una regla para posicionarnos dentro de mercado como para deshacer la posición una vez el ADX indica pérdida de fuerza. Tendremos que añadir al sistema dos parámetros asociados a las bandas, uno que se asignará a la regla de entrada (25) y el otro a la regla de salida (20).

Veamos a continuación cómo quedaría el sistema:

Código PDV


Código VBA
'¡¡ Parameters
Dim Contratos As Integer '1
Dim PeriodoADX As Integer '14
Dim BandaADX As Double '25
Dim BandaSalida As Double '20
'Parameters !!
Dim DIRMOVData As DataIdentifier
Option Explicit
Public APP As SysUserApp
Implements System
Public Sub System_OnInitCalculate()
With APP
    DIRMOVData = .GetIndicatorIdentifier(DirectionalMov, Data, PeriodoADX, BandaADX)
End With
End Sub
Public Sub System_OnCalculateBar(ByVal Bar As Long)
With APP
    Dim ADXact As Double
    Dim DIPact As Double
    Dim DINact As Double
    DIPact = .GetIndicatorValue(DIRMOVData)
    DINact = .GetIndicatorValue(DIRMOVData, 0, 2)
    ADXact = .GetIndicatorValue(DIRMOVData, 0, 3)
    If (ADXact > BandaADX) Then
        If (DIPact > DINact) Then
            .Buy AtClose, Contratos
        ElseIf (DIPact < DINact) Then
            .Sell AtClose, Contratos
        End If
    ElseIf (ADXact < BandaSalida) Then
        If .GetMarketPosition = 1 Then
            .ExitLong AtClose, Contratos
        ElseIf .GetMarketPosition = -1 Then
            .ExitShort AtClose, Contratos
        End If
    End If
End With
End Sub

Comentarios

Entradas populares de este blog

Como consultar el GAP % de un conjunto de valores

Bollinger Volatility Oscillator N

MANEJO DE PLANTILLAS. Eliminar plantilla de un gráfico activa