atr() Built-in Study Functions
The Average True Range study (ATR) is a measure of volatility. It was introduced by Welles Wilder in his book New Concepts in Technical Trading Systems and has since been used as a component of many indicators and trading systems. Wilder has found that the high ATR values often occur at market bottoms following a "panic" sell-off. Low ATR values are often found during extended sideways periods, such as those found at tops and after consolidation periods.
Syntax
atr( nLength [, sym() | inv() ][, nBarIndex ] )
Parameters
Parameter: | Description: | Default: |
nLength | Required. Number of periods to use for calculation. | n/a |
sym() or inv() |
[Optional] Function of sym() or inv() to determine symbol/interval source for the study. | Chart's sym/inv |
nBarIndex | [Optional] Bar index of series to retrieve . | n/a |
Return Value(s)
Returns a Series Object when nBarIndex is not specified.
Returns a single value when nBarIndex is specified.
Notes
Only available in versions 7.9 or later.
Code Examples
function main() { return atr(14); }
Retrieve single values:
function main() { var nValue_0 = atr(14, 0); // Current Bar Index var nValue_1 = atr(14, -1); // Prior Bar Index return new Array(nValue_0, nValue_1); }
var xStudy = null;
function main() {
if (xStudy == null) {
xStudy = atr(14);
} // retrieve single values for conditional statements
var nValue_0 = xStudy.getValue(0); // Current Bar Index value
var nValue_1 = xStudy.getValue(-1); // Prior Bar Index value
return nValue_0; // Plot Current Bar Index Value
}
var xStudy = null; var bInit = false; // Initialization flag function main() { if (bInit == false) { xStudy = atr(14, inv(20)); // 20-min interval bInit = true; } // retrieve single values for conditional statements var nValue_0 = xStudy.getValue(0); // Current Bar Index value var nValue_1 = xStudy.getValue(-1); // Prior Bar Index value return getSeries(xStudy); // Synchronized Series plot }
var xStudy = null; var bInit = false; // Initialization flag function main() { if (bInit == false) { xStudy = atr(14, sym("IBM,20")); // IBM 20-min interval bInit = true; } // retrieve single values for conditional statements var nValue_0 = xStudy.getValue(0); // Current Bar Index value var nValue_1 = xStudy.getValue(-1); // Prior Bar Index value return getSeries(xStudy); // Synchronized Series plot }
See Also
Series Object
getSeries()
Built-in Study Functions
eSignal Forum Search Engine
Help Guides and Tutorials