Average Directional Index (ADX)

Created by J. Welles Wilder, the Directional Movement Index (DMI) and Average Directional Movement Index (ADX) is a measure of price directional movement. It includes upward and downward indicators, and is often used to measure strength of trend. [Discuss] 💬

chart for Average Directional Index (ADX)

// usage
IEnumerable<AdxResult> results =
  quotes.GetAdx(lookbackPeriods);

Parameters

lookbackPeriods int - Number of periods (N) to consider. Must be greater than 1. Default is 14.

Historical quotes requirements

You must have at least 2×N+100 periods of quotes to allow for smoothing convergence. We generally recommend you use at least 2×N+250 data points prior to the intended usage date for better precision.

quotes is a collection of generic TQuote historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See the Guide for more information.

Response

IEnumerable<AdxResult>

Convergence warning: The first 2×N+100 periods will have decreasing magnitude, convergence-related precision errors that can be as high as ~5% deviation in indicator values for earlier periods.

AdxResult

Date DateTime - Date from evaluated TQuote

Pdi double - Plus Directional Index (+DI)

Mdi double - Minus Directional Index (-DI)

Adx double - Average Directional Index (ADX)

Adxr double - Average Directional Index Rating (ADXR)

Utilities

See Utilities and helpers for more information.

Chaining

Results can be further processed on Adx with additional chain-enabled indicators.

// example
var results = quotes
    .GetAdx(..)
    .GetRsi(..);

This indicator must be generated from quotes and cannot be generated from results of another chain-enabled indicator or method.