The indicator reflects the size of the bar. The size is calculated by the following formula: "minuend" minus "deduction". "Minuend" and "deduction" can be any of four values (open, high, low or close).
The number of bars for which the size is displayed can be limited in the input parameters (InpNumberOfBars). This number remains unchanged even if a new bar has opened:
Graphical objects accounting
The names of objects are stored in the m_arr_names[] array, its size is equal to the InpNumberOfBars input. Why do we use an array instead of a simple string variable? This is a kind of reserve for the future.
Forming an object name
The name of the object corresponding to the 'index' bar is formed by the following formula:
name[index] = m_prefix + ("high_" or "low_") + TimeToString(time[index])
When you need to delete all objects
Indicators are unloaded in the following cases:
Therefore, we completely delete created graphical objects:
We also clear the m_arr_names[] array:
Maintaining a constant number of graphical objects:
when a new bar (bars) appears, the prev_calculated!=rates_total condition triggers. In this case, all objects are deleted, and the m_arr_names[] array is cleared.
Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/18269
All information about the symbol
All information about the current symbol (information from the CSymbolInfo class object is used) represented as a dialog panel.
RSI and Bollinger Bands
A trading strategy based on RSI and Bollinger Bands.
Automatically bring charts one by one to the top
This indicator helps to move charts one by one to the the front, just like slide show, and make your hands free.
Daily Open Line
An simple Indicator displaying daily opening line.