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

2012.01.05 13:17

IncCMOOnArray - library for MetaTrader 5

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

votes: 21

CMOOnArray class is designed for calculation of CMO (Chande Momentum Oscillator) values on indicator buffers.


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

  • int aPeriod - indicator 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 & aCMO[] - indicator 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_CMOOnArray.mq5 is a sample indicator showing CCMOOnArray class application. IncCMOOnArray file must be placed to MQL5\Include\IncOnArray of the terminal data folder (IncOnArray folder must be created).

The Chande Momentum Oscillator (CMO) was developed by Tushar Chande and is a technical indicator that attempts to capture the Momentum. Chande discussed this and many other indicators in his book "The New Technical Trader: Boost Your Profit by Plugging into the Latest Indicators". Тhe range of CMO is from -1 to 1. The values +0.5 and -0.5 are assumed as ovebought and oversold states of the market.

Test_CMOOnArray - example of use of the CMOOnArray class

Translated from Russian by MetaQuotes Software Corp.
Original code:

GetFontName GetFontName

Function module for more convenient font selection display in the indicator input parameters. To free the indicator user from the necessity to manually enter a font name some changes to the code should be inserted.

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.

X2MA_HTF_Signal X2MA_HTF_Signal

X2MA_HTF_Signal displays trend directions from three last bars of the X2MA indicator as three graphical objects, colors of which determine a trend direction.

SpreadInfo SpreadInfo

SpreadInfo displays current spread, its average value and their ratio in one of the chart corners.