Visual Basic (Declaration)  

Public Overloads Shared Function DirectionalMotion( _ ByVal seriesName As String, _ ByVal s As Series _ ) As Series 
Visual Basic (Usage)  Copy Code 


C#  

public static Series DirectionalMotion( string seriesName, Series s ) 
Parameters
 seriesName
 The name of the series which will be displayed on the chart, i.e. its label.
 s
 A financial series where the first element contain the prices of last trading period, the second element represents the prices of the previous periods and so on. Please note that in order to calculate this indicator the elements of the financial series must contain High, Low and Close values.
Return Value
A series with the kth term corresponds to the DM of the kth Bar. That is, where the PDM and MDM parameters where both evaluated with respect to the last two trading periods.PlusDirectionalMovement
and
MinusDirectionalMovement
indicators.
Evaluation
The Directional Movement Indicator can be summarized by the following formula:
Directional Movement Indicator = 100 * ( (PDM  MDM) / (PDM + MDM) )
,
where PDM
is the Plus Directional Movement (PDM) indicator over the last two trading
periods which can be evaluated using PlusDirectionalMovement
and
MDM
is the Minus Directional Movement (MDM) indicator over the last two trading periods
which can be evaluated using MinusDirectionalMovement
.
Interpretation
The directional indicator has a range of [0,100]
, where to higher the value
returned the stronger the trend is said to be. If a trend is reliable then the smoothed directional
lines (PDM and MDM) will diverge and the indicator will increase. If on the other hand a trend starts
to fail and price whipsaws (for example with price is within a trading range) the difference
between the smoothed direction lines will decrease and the overall index will decrease.