Real author:
Igor V. Kim aka KimIV.
The indicator is a version of a technical ATR with the possibility to change a smoothing method.
ATR always has SMA, while this indicator implements all standard methods – SMA, EMA, SMMA and LWMA, as well as non-standard ones. Besides, horizontal shift of the indicator values has been provided.
This indicator was first implemented in MQL4 and published 26.05.2007 (in Russian).
Indicator input parameters:
//+-----------------------------------+ //| Input parameters of the indicator | //+-----------------------------------+ input Smooth_Method XMA_Method=MODE_SMA; // Averaging method input int XLength=10; // Smoothing depth                    input int XPhase=15; // Smoothing parameter input int Shift=0; // horizontal shift of the indicator in bars
Full list of possible smoothing methods:
- SMA – simple moving average;
- EMA – exponential moving average;
- SMMA – smoothed moving average;
- LWMA – linear weighted moving average;
- JJMA – JMA adaptive average;
- JurX – ultralinear smoothing;
- ParMA – parabolic smoothing;
- T3 – Tillson’s multiple exponential smoothing;
- VIDYA – smoothing with the use of Tushar Chande’s algorithm;
- AMA – smoothing with the use of Perry Kaufman’s algorithm.
It should be noted that Phase parameter has completely different meaning for different smoothing algorithms. For JMA it is an external Phase variable changing from -100 to +100. For T3 it is a smoothing ratio multiplied by 100 for better visualization, for VIDYA it is a CMO oscillator period and for AMA it is a slow EMA period. In other algorithms these parameters do not affect smoothing. For AMA fast EMA period is a fixed value and is equal to 2 by default. The ratio of raising to the power is also equal to 2 for AMA.
The indicator uses SmoothAlgorithms.mqh library classes (must be copied to the terminal_data_folder\MQL5\Include). The use of the classes was thoroughly described in the article “Averaging Price Series for Intermediate Calculations Without Using Additional Buffers”.
AverageSizeBar