> For the complete documentation index, see [llms.txt](https://help.quantower.com/quantower/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.quantower.com/quantower/analytics-panels/chart/technical-indicators/trend/directional-movement-index-dmi-indicator.md).

# Directional Movement Index (DMI) Indicator

### What is the Directional Movement Index (DMI) Indicator?

**Directional Movement Index (DMI)** assists in determining if an asset is trending and attempts to measure the strength of the trend. The DMI disregards the direction of the asset. It only attempts to determine if there is a trend and that trends strength.

The indicator is made up of 2 indicator lines:

1. **Positive Directional Indicator (+DMI)** shows the difference between today’s high price and yesterday’s high price. These values are then added up from the past 14 periods and then plotted.
2. **Negative Directional Indicator (–DMI)** shows the difference between today’s low price and yesterday’s low price. These values are then summed up from the past 14 periods and plotted.

![](/files/-MIf9erPjx0o9d2aJh_J)

### How the Directional Movement Index (DMI) indicator works

A buy signal is given when DMI+ crosses above DMI-. A sell signal is given when DMI- crosses above DMI+. The ADX and ADXR lines are then used to measure the strength of these signals.

### Calculation of the Directional Movement Index (DMI) indicator

1. Calculate the True Range, +DI, and –DI for each period:\
   True Range is the greater of:\
   Current High – Current Low\
   Absolute value of Current High – Previous Close\
   Absolute value of Current Low – Previous Close\
   \
   +DI\
   IF Current High – Previous High > Previous Low – Current Low\
   THEN +DI = the greater of Current High – Previous High OR 0\
   &#x20; \
   -DI\
   IF Previous Low – Current Low > Current High – Previous High\
   THEN –DI = the greater of Previous Low – Current Low OR 0\
   \
   IF +DI AND -DI are both negative\
   THEN both +DI and –DI = 0\
   \
   IF +DI AND -DI are both positive AND +DI > -DI\
   THEN +DI = Current High – Previous High AND –DI = 0\
   Else IF +DI < -DI\
   THEN +DI = 0 AND –DI = Previous Low – Current Low<br>
2. Smooth the True Range, +DI, and –DI using Wilder’s smoothing technique.
3. Divide the smoothed +DI by the smoothed True Range and multiply by 100 (this is the +DI that is plotted for the specified period).
4. Divide the smoothed –DI by the smoothed True Range and multiply by 100 (this is the –DI that is plotted for the specified period).
5. Next, calculate the Directional Movement Index (DX), which equals the (absolute value of the smoothed +DI – the smoothed –DI) / (the sum of the smoothed +DI and smoothed –DI )and multiply by 100.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.quantower.com/quantower/analytics-panels/chart/technical-indicators/trend/directional-movement-index-dmi-indicator.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
