Monday, October 31, 2011


Developed by J. Welles Wilder and introduced in his book, New Concepts in Technical Trading Systems (1978), the Average True Range (ATR) indicator measures a security's volatility. As such, the indicator does not provide an indication of price direction or duration, simply the degree of price movement or volatility.
As with most of his indicators, Wilder designed ATR with commodities and daily prices in mind. In 1978, commodities were frequently more volatile than stocks. They were (and still are) often subject to gaps and limit moves. (A limit move occurs when a commodity opens up or down its maximum allowed move and does not trade again until the next session. The resulting bar or candlestick would simply be a small dash.) In order to accurately reflect the volatility associated with commodities, Wilder sought to account for gaps, limit moves, and small high-low ranges in his calculations. A volatility formula based on only the high-low range would fail to capture the actual volatility created by the gap or limit move.
Wilder started with a concept called True Range (TR) which is defined as the greatest of the following:
  • The current High less the current Low.
  • The absolute value of the current High less the previous Close.
  • The absolute value of the current Low less the previous Close.
If the current high-low range is large, chances are it will be used as the True Range. If the current high-low range is small, it is likely that one of the other two methods would be used to calculate theTrue Range. The last two possibilities usually arise when the previous close is greater than the current high (signaling a potential gap down or limit move) or the previous close is lower than the current low (signaling a potential gap up or limit move). To ensure positive numbers, absolute values were applied to differences.
The example above shows three potential situations when the TR would not be based on the current high/low range. Notice that all three examples have small high/low ranges and two examples show a significant gap.
  1. A small high/low range formed after a gap up. The TR was found by calculating the absolute value of the difference between the current high and the previous close.
  2. A small high/low range formed after a gap down. The TR was found by calculating the absolute value of the difference between the current low and the previous close.
  3. Even though the current close is within the previous high/low range, the current high/low range is quite small. In fact, it is smaller than the absolute value of the difference between the current high and the previous close, which is used to value the TR.
Note: Because the ATR shows volatility as an absolute level, low price stocks will have lower ATR levels than high price stocks. For example, a $10 security would have a much lower ATR reading than a $200 stock. Because of this, ATR readings can be difficult to compare across a range of securities. Even for a single security, large price movements, such as a decline from 70 to 20, can make long-term ATR comparisons difficult.


Typically, the Average True Range (ATR) is based on 14 periods and can be calculated on an intraday, daily, weekly or monthly basis. For this example, the ATR will be based on daily data. Because there must be a beginning, the first TR value in a series is simply the High minus the Low, and the first 14-day ATR is the average of the daily ATR values for the last 14 days. After that, Wilder sought to smooth the data set, by incorporating the previous period's ATR value. The second and subsequent 14-day ATR value would be calculated with the following steps:
  1. Multiply the previous 14-day ATR by 13.
  2. Add the most recent day's TR value.
  3. Divide by 14.
In the Excel spread sheet example above, the first True Range value (1.9688) equals the High minus the Low. The first 14-day ATR value (3.6646) was calculated by finding the average of first 14True Range values. The second ATR value was smoothed by using the previous value.
For those trying this at home, here are a few caveats:
  • There is always a beginning, and the first calculations may not conform exactly with the formula. The first True Range value is simply the High minus the Low, and the first ATR is a simple average of the first 14 True Range values.
  • Many indicators involve a smoothing process. In this example, the current ATR calculation uses the previous period's ATR.
  • The size of the data set will affect the final outcome. This example only contains a small portion of the available historical price data. Although the difference is not likely to be huge, a data set of 33 days will produce a different ATR value than a data set of 500 days.
  • Due to rounding issues and decimal places, an exact match may not be possible.
(If you want to create an ATR from your own data, first try to duplicate the above example using the provided Open-High-Low-Close data. Once your calculations match the example's, you can then plug in your own Open-High-Low-Close data.)
The IBM chart above provides an example of the 14-day ATR in action. Extreme levels (both high and low) can mark turning points or the beginning of a move. As a volatility-based indicator like Bollinger Bands, the ATR cannot predict direction or duration, simply activity levels. Low levels indicate quiet trading (small ranges), and high levels indicate violent trading (large ranges). A prolonged period of low ATR readings might indicate consolidation and the beginning of a continuation move or reversal. High ATR readings usually result from a sharp advance or decline and are unlikely to be sustained for extended periods.

Average True Range (ATR) and SharpCharts

The ATR is on the Indicators drop-down menu, listed as "Average True Range." The Parameters box to the right of the indicator contains the default value, 14, for the number of periods used to smooth the data. To adjust the period setting, highlight the default value, and enter a new period setting. SharpCharts also allows you to position the indicator above, below, or behind the price plot.