MQL4 Reference Object Functions ObjectGetDouble

ObjectGetDouble

The function returns the value of the corresponding object property. The object property must be of the double type. There are 2 variants of the function.

1. Immediately returns the property value.

double  ObjectGetDouble(
   long     chart_id,         // chart identifier
   string   object_name,      // object name
   int      prop_id,          // property identifier
   int      prop_modifier=0   // property modifier, if required
   );

2. Returns true or false, depending on the success of the function. If successful, the property value is placed to a receiving variable passed by reference by the last parameter.

bool  ObjectGetDouble(
   long      chart_id,        // chart identifier
   string    object_name,     // object name
   int       prop_id,         // property identifier
   int       prop_modifier,   // property modifier
   double&   double_var       // here we accept the property value
   );

Parameters

chart_id

[in]  Chart identifier. 0 means the current chart.

object_name

[in]  Name of the object.

prop_id

[in]  ID of the object property. The value can be one of the values of the ENUM_OBJECT_PROPERTY_DOUBLE enumeration.

prop_modifier

[in]  Modifier of the specified property. For the first variant, the default modifier value is equal to 0. Most properties do not require a modifier.  It denotes the number of the level in Fibonacci tools and in the graphical object Andrew's pitchfork. The numeration of levels starts from zero.

double_var

[out]  Variable of the double type that received the value of the requested property.

Return Value

Value of the double type for the first calling variant.

For the second variant the function returns true, if this property is maintained and the value has been placed into the double_var variable, otherwise returns false. To read more about the error call GetLastError().

Note

When this function is used on the current chart, this chart is accessed directly, while in order to receive the properties of an object on a different chart, a synchronous call is used. The synchronous call means that the function waits for the execution of all commands that have been enqueued for this chart prior to its call, that is why this function can be time consuming. This feature should be taken into account when working with a large number of objects on a chart.