"
Candle size (text)

Candle size (text)

by Dr.Hamdi Boukamcha
in MQ5

The indicator displays the size of the column. The size is calculated based on the next system: “subtracted” minus “subtraction”. “Decimal” and “Decimal” may be any of the 4 values ​​(opening value, the very best value, the bottom value or closing value).

The variety of columns that show the size may be restricted to the enter parameters ( InpNumberOfBars ). This quantity is not going to change till the brand new column is opened:

About synchronization of columns and graphic objects.

Graphic object calculation

The identify of the item is saved within the m_arr_names [] array and its size is the same as the InpNumberOfBars enter parameter. Why will we use an array as a substitute of a easy string variable? That is reserved for future functions.

The identify of the item

The identify of the item corresponds to the ‘index’ of the column, and is constructed based on the next system:

Identify [index] = m_prefix + ( "high_" or "low_" ) + TimeToString (time [index])

When you must delete all objects

Indicators are uninstalled within the following instances :

  • Take away the metric from the chart;
  • Shut the terminal (if the indicator is operating on the chart);
  • If the template is loaded when the indicator is run on the chart;
  • Shut the chart of the operational indicators;
  • If the symptoms run previously settings file and modify the settings file;
  • Modify the range and / or interval of the transaction during which the indicator runs the chart;
  • Modified index enter parameters.

On this approach, we’ll utterly delete the created graphic object:

  • In OnDeinit ()
  • In OnInit () (there is just one case, that’s, if there may be an object to be deleted)
  • In OnCalculate (), when prev_calculated == 0.

  We have now to clear m_arr_names [] array:

  • In OnCalculate (), when prev_calculated == 0 or when prev_calculated! = Rates_total

Save constants for the variety of formation objects:

When the brand new column seems, the prev_calculated! = Rates_total situation is triggered, during which case all objects are deleted, and the  m_arr_names []  array is to be cleared.

Share this article

Leave a comment