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).
Added in version 2:
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
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.
Translated from Russian by MetaQuotes Software Corp.
Original code: https://www.mql5.com/ru/code/18483
The indicator displays Wingdings arrows when RSI crosses UP and DOWN levels.LGP_Ivanoff_Maloma-Demark_levels
A fractal based variation.
The EA trades based on the "Bullish and Bearish Engulfing" pattern.Color_PEMA_Digit
A moving average with the five-fold EMA averaging. It displays the most recent value as a price label with the possibility to round the indicator levels up to a required number of digits.