Click to Show Menu

Directional Movement System

The Directional Movement System is a technical indicator for measuring the possibility of price increases and decreases that may move the price outside the previous day's trading range. The system consists of three lines:

  • The Positive Direction Indicator (+DI) - summarizes upward trend movement (green on the screenshot below).

  • The Negative Direction Indicator (-DI) - summarizes downward trend movement (red).

  • The Average Directional Movement Index (ADX) - indicates whether the market is trending or ranging (blue).

When +DI is above -DI, there is more upward pressure in the price than the downward pressure. If -DI is above +DI, then there is more downward pressure in the price. This technique may help traders estimate the trend direction. Crossovers between the lines are also used as trade signals to buy or sell.

The Difference Between Aroon and DMS

Aroon and DMS are very similar. Both use up and down lines to show the direction of a trend. The main difference is that the Aroon indicator formulas are primarily focused on the amount of time between highs and lows. The DMS measures the price difference between current highs/lows and the prior highs/lows. Therefore, the main factor in the DMS is the price and not time.

The main advantage of the DMS indicator is that it can overcome the one basic problem of the other indicators. Most techniques can work well in either a trending or a ranging market. The Direction Movement System indicator can identify the type of market and then provide proper signals that traders can use for trading.

DMS Calculation

The Directional Movement System is calculated with the following formula:

  1. Calculating the Directional Movement for today:

+DM = Today's High - Yesterday's High (when price moves upward)

-DM = Yesterday's Low - Today's Low (when price moves downward)

You cannot have both +DM and -DM on the same day. If there is an outside day (where both calculations are positive) then the larger of the two results is taken. An inside day (where both calculations are negative) will always equal zero.

  1. Calculating the True Range for the day, which is the largest of:

Today's High - Today's Low,

Today's High - Yesterday's Close,


Yesterday's Close - Today's Low

  1. As the default Directional Movement System uses 14-day smoothing, then:

+DM14 = [Exponential Moving Average]* of +DM

-DM14 = [Exponential Moving Average]* of -DM

TR14 = [Exponential Moving Average]* of True Range

  1. Calculating the Directional Indicators:

+DI14 = +DM14/TR14

-DI14 = -DM14/TR14

  1. Calculating the components of the Average Directional Movement Index (ADX):
  • Calculate the DI Difference:

Record the difference between +DI14 and -DI14 as a positive number.

  • Calculate the Directional Index (DX):

DX = DI Difference/[+DI14 + -DI14]

  • Calculate the ADX:

ADX = [Exponential Moving Average]* of DX


The Directional Movement System is mostly used for estimating the trend direction and providing trade signals. The main trade signals in the DMS are the crossovers. When the +DI crosses above -DI and the uptrend may be underway then the long trade should be taken. When the -DI drops below -DI, then a sell signal occurs. When -DI drops below +DI, then a short trade should be initiated, because a downtrend could be underway.

The DMS is also used for trend or trade confirmation. If the +DI is above -DI, that means that the trend has enough strength to the upside, which may confirm current long trades or new long trade signals based on other entry methods. If -DI is above +DI, then this confirms the strong downtrend or short positions.

In cTrader, you can find the Directional Moving System indicator among the other built-in indicators. See the Indicators section to learn how to use them.