Unisciti alla nostra fan page
- Visualizzazioni:
- 9263
- Valutazioni:
- Pubblicato:
- 2017.08.10 12:33
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
Version 1
Version 2.
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:
- customizable colors for the text on bullish and bearish bars
- customizable shift from the bar
- the text is now displayed:
- below a bar, if the bar is bullish
- above a bar in other cases
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:
About synchronization of bars and graphical objects.
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:
- removing the indicator form the chart;
- closing the terminal (if the indicator was running on the chart);
- loading a template, if the indicator is running on this chart;
- closing the chart on which the indicator was running;
- changing the profile, if the indicator is running on one of the charts of the previous profile;
- changing the symbol and/or timeframe of the chart, on which the indicator is running;
- changing the indicator inputs.
Therefore, we completely delete created graphical objects:
- in OnDeinit()
- in OnInit() (this is just in case, if there are undeleted orphan objects)
- in OnCalculate(), when prev_calculated==0.
We also clear the m_arr_names[] array:
- In OnCalculate(), when prev_calculated==0 or when prev_calculated!=rates_total
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/18483

The indicator displays Wingdings arrows when RSI crosses UP and DOWN levels.

A fractal based variation.

The EA trades based on the "Bullish and Bearish Engulfing" pattern.

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.