Convenient use of indicators – library MetaTrader 5

General

Originally written for myself, when I had to work with many indicators at once.

Each class consists of the multiple fields. They can be the same for all (for example, indicator handle, timeframe, period, price) and those required by the particular indicator. The class also contains functions that set and get those fields.

How to Use

Download the archive. Files with the .mqh extension (that have “cind” in the beginning of file name) should be placed to the folder with your Expert Advisor.

Files with indicator names (*.mq5) should be placed to the \MQL5\Indicators\ folder.

Indicator parameters can be set and modified using the class functions. For example:

Macd.SetFastEma(MACD_Fast_EMA_Period); // Set the value of the fast EMA
Macd.SetSlowEma(MACD_Slow_EMA_Period); // Set the value of the slow EMA
Macd.SetSignalSma(MACD_Signal_SMA_Period); // Set the value of the signal SMA

Macd — object of the CIndMacd class.

Indicator value can be obtained by calling the corresponding function. For the “macd_histogram” indicator, it will look as follows:

Alternative:  Step Chart Separate - indicator MetaTrader 5
double valueHist = Macd.OutValueHist(1); // Histogram value at the last bar
double valueMacd = Macd.OutValueMacd(1); // Indicator value at the last bar
double valueSignal = Macd.OutValueSignal(1); // Signal line value at the last bar

One as the argument means that the value is taken for the last completed bar.

Conclusion

In short, this is all. If you have questions on usage – write in comments.


📈 ROBOTFX MetaTrader Expert Advisors and Indicators to maximize profits and minimize the risks