Download MetaTrader 5

Watch how to download trading robots for free

Interesting script?
So post a link to it -
let others appraise it

You liked the script? Try it in the MetaTrader 5 terminal

2011.12.29 09:57

IncEROnArray - library for MetaTrader 5

| English Русский 中文 Español Deutsch 日本語 Português

votes: 18

CEROnArray class is designed to calculate the Efficiency Ratio (ER) used in the Adaptive Moving Average (AMA).


Init() method with the following parameter is called in the OnInit() function:

  • int aPeriod - efficiency ratio calculation period.

Solve() method with the following parameters is called in the OnCalculate() function:

  • const int aRatesTotal - is a rates_total variable from the OnCalculate() function parameters;
  • const int aPrevCalc - prev_calculated variable from the OnCalculate() function;
  • double aData[] -  data buffer for the indicator calculation;
  • double aER[] - the buffer with the calculated value.

Additional methods:

  • int BarsRequired() - returns the minimum number of bars for the indicator calculation;
  • string Name() - returns the line with the indicator name.

Test_EROnArray.mq5 is a sample indicator showing CEROnArray class application. IncEROnArray file must be placed to MQL5\Include\IncOnArray of the terminal data folder (IncOnArray folder must be created).

Test_EROnArray - example of use of the CEROnArray class

Translated from Russian by MetaQuotes Software Corp.
Original code:

ZigZag based on VininI_FractalsTrend ZigZag based on VininI_FractalsTrend

ZigZag based on fractals. Due to the use of Fractals indicator, it works much faster than conventional ZigZag indicator.

StochasticExpansion StochasticExpansion

Good old stochastic oscillator. The difference from the standard one is that it shows overbought and oversold areas in a more visually convenient fashion.

IncERDOnArray IncERDOnArray

CERDOnArray class is designed to calculate the Efficiency Ratio (ER) used in the Adaptive Moving Average (AMA) considering price movement direction. When the price is moving upwards the indicator has positive values, when it is moving downwards, - negative ones.

XdinMA XdinMA

The moving average, calculated by using the simplest algebraic combination of two other moving averages with different periods. Smoothing algorithms can be selected out of ten possible versions.