The tools Pull up object by object and Pull down object by object
В AutoGraf 4 application There are order tools Pull Up (9) and Pull Down (10) designed for modifying orders. These tools can change the price of the order line depending on the position of one of the standard terminal objects MetaTrader 4. These tools have the same execution algorithms; the only difference is the direction of modification of the order line. Let's consider their properties on the example of the Pull Up by Object tool.
Authorizations
The Pull Up behind object tool can be set on order lines:
— StopLoss и TakeProfit рыночного ордера любого типа;
— OpenPrice отложенного ордера любого типа.
Limitations
The tool is installed (column):
If the Object Pull Up tool is placed on an order line that already has any tools placed on it:
1 — Подтяжка вверх,
2 — Подтяжка вниз,
3 — Следование за ценой,
6 — Подтяжка не выше,
7 — Подтяжка не ниже,
10- Downward pull-up behind the object,
11 — Следование за объектом,
then the specified tools are automatically deleted.
The Pull Up by Object tool cannot be set on the StopLoss of a Sell market order if the 5 Stop 0 Sell tool is set on the order.
The tool is installed (line):
If one of the tools is installed on an order line that already has the Pull Up by Object tool installed:
1 — Подтяжка вверх,
2 — Подтяжка вниз,
3 — Следование за ценой,
10- Downward pull-up behind the object,
11 — Следование за объектом,
then the Pull Up Object tool is automatically deleted.
If the Pull Up Object tool is set on the StopLoss of a Sell market order, the 5 Stop 0 Sell tool cannot be set on this order.
Requirements
No other tools are required to install the Object Pull Up tool.
To set the Pull Up Object tool, a graphical object of one of the following types is required to be set on the price chart:
— OBJ_REGRESSION — канал линейной регрессии;
— OBJ_STDDEVCHANNEL — канал стандартных отклонений;
— OBJ_TREND — трендовая линия;
— OBJ_CHANNEL — равноудаленный канал;
— OBJ_FIBOFAN — веер Фибоначчи;
— OBJ_FIBOCHANNEL — канал Фибоначчи;
— OBJ_PITCHFORK — вилы Эндрюса.
Installing Tool Pull-up behind the object upwards satisfies the requirements for installing Tool 6 Pull-up not above.
Installing
Установка инструмента Подтяжка за объектом вверх выполняется в два этапа — сначала инструмент закрепляется на ордерной линии, а затем выполняется привязка его к графическому объекту.
1 step. Preparing the instrument Pull up behind the object.
To fix a tool on an order line, it is necessary to grab the tool icon on the Toolbar, bring it to the order line on which the tool is to be set, and release the mouse button. If the order line is selected according to the resolution rules, the tool icon will be displayed near the order line on the bar () on which the user released the icon. At that, the icon is displayed in "passive" color (white for black background and black for white background); the message that the instrument is prepared for adjustment is displayed.
Step 2. Binding of the Pull up tool behind the object to the graphical object.
Для привязки инструмента к графическому объекту необходимо взять мышью значок инструмента, закреплённого на ордерной линии, и подвести его к желаемой линии графического объекта. Когда значок инструмента оказывается в непосредственной близости от линии объекта, линия начинает «моргать» — изменяется её цвет. Это означает, что выбранная линия может быть использована в качестве объекта привязки. Привязка инструмента к объекту выполняется, если пользователь отпустит инструмент возле моргающей линии.
If the installation of the Pull Up by Object tool is performed without errors, the icon will be displayed near the order line on the bar on which the user released the icon near the blinking line. To confirm the fact of setting the tool, the icon is colored in its own color (as on the toolbar) and a message about successful completion of setting is displayed, accompanied by a confirmation sound.
Figure 1. Setting the Pull Up tool by the object up on the TakeProfit of the Sell order.
1. Подготовка инструмента — инструмент закреплён на ордерной линии. Цвет значка — чёрный. 2. Привязка инструмента к линии объекта — линия моргает, т.е. привязка допустима. Пользователь отпустил значок инструмента вблизи линии — значок вернулся на ордерную линию. Цвет значка — синий. 3. Значения параметров слева и справа от значка свидетельствует об окончании установки (после нажатия на изображение вы перейдете на сайт для просмотра видео).
If an invalid order line is selected for setting an instrument, the instrument will not be set. In this case a message about an erroneous user action is displayed, accompanied by an error sound. If in the process of binding to a graphical object the user moves the fixed icon to an object of an invalid type, the object will not respond with a blink. It means that binding of the tool to this object is impossible. An attempt to snap a tool to such an object will cause the icon to return to the order line. In this case, the tool will remain attached to the order line, but it is not attached to any object, i.e. it is not set.
It is not allowed to rearrange an installed instrument, i.e. fixed on an order line and bound to a chart object. This means that the installed tool cannot be assigned to another order line or another chart object. If you need to set up a different trade management scenario, you must remove the installed tool Pull Up by Object and install a new one.
Parameters
The Pull up tool behind the object is characterized by parameters:
Index | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
Parameter | 0/1 | d_T | Ds | St | i_O | i_Ln | |
For example: | 1.0 | 1230.0 | 0.0 | 50.0 | 3.0 | 7.0 | 32.0 |
The indices of the instrument parameters correspond to the indices of these parameters in the Instrument [or][ol][9][j] array, where:
or — текущий индекс ордера в массиве Order[][];
ol — номер ордерной линии (1 — OpenPrice, 2 — StopLoss, 3 — TakeProfit);
9 — номер инструмента Подтяжка за объектом вверх;
j — индекс параметра инструмента Подтяжка за объектом вверх.
— факт установки инструмента; изменение параметра в ручном режиме осуществляется путём установки и удаления инструмента;
— смещение по времени от момента установки инструмента в секундах; изменение параметра в ручном режиме осуществляется путём перемещения значка инструмента в пределах ценового графика (по горизонтали).
Значок инструмента отображается на том баре, который соответствует расчётному времени To + dT, где To — текущее время, dT — смещение по времени (рассматриваемый параметр). В отличие от большинства других инструментов, отображаемых на конкретном баре, значок инструмента Подтяжка за объектом вверх будет менять своё положение по горизонтали в зависимости от timeframe.
For example. В timeframe М1 на одну и ту же ордерную линию TakeProfit на одном и том же 20м баре установлены два инструмента — Торговый разворот Buy и Подтяжка за объектом вверх. Для инструмента Подтяжка за объектом вверх смещение по времени может составлять 1201 до 1259 сек (20 баров = 20*60 = 1200, +время от начала нулевого бара от 1 до 59 сек); примем, что смещение составило 1230 сек. При переключении на таймфрейм М5 инструмент Торговый разворот Buy будет по-прежнему отображаться на 20м баре. А инструмент Подтяжка за объектом вверх отобразится на 5м баре. В данном случае именно 5й бар соответствует смещению инструмента относительно текущего времени на 1230 сек (4е бара = 4*300=1200; 30 — время пребывания на 5м баре). Таким образом, инструмент Подтяжка за объектом вверх меняет своё положение по времени в зависимости от таймфрейма.
Перемещение значка инструмента по горизонтали позволяет изменять смещение по времени инструмента с шагом, равным таймфрейму. Если необходимо значение параметра с точностью до минуты, нужно указать желаемое значение на панели настроек инструмента. Для вызова панели необходимо выделить значок инструмента и правой кнопкой мыши вызвать контекстное меню (выбрать Свойства). На появившейся панели свойств объекта (Параметры — Время) можно указать желаемое время установки инструмента. После изменения настроечного параметра значок инструмента отобразится на баре, соответствующем указанному времени. Смещение по времени (рассматриваемый параметр dT) будет вычислен как разница текущего времени и времени, указанного на панели настроек значка инструмента.
Sometimes there is a shift of the object to the right at a time that does not coincide with the moment of opening bar. Это — нормальное явление, свидетельствующее лишь о том, что время смещения dT не кратно таймфрейму.
— дистанция в пунктах между линией привязки объекта и ордерной линией (дистанция преследования для ордерных линий ниже линии объекта и дистанция убегания для ордлиний выше линии объекта).
В момент установки инструмента параметр принимает значение, равное фактическому расстоянию между ордерной линией и линией объекта. Параметр может принимать как положительные, так и отрицательные значения. Положительное значение параметра означает, что линия объекта находится выше ордерной линии (в том месте, где установлен значок инструмента). Отрицательное значение — линия объекта ниже ордерной линии.
Changing the parameter in the manual mode is performed by moving the tool icon with the mouse within the price chart (vertically) and on the parameter value scale.
Перемещение значка инструмента в сторону линии объекта уменьшает дистанцию, от линии — увеличивает. Параметр изменяется пропорционально дистанции между текущим положением значка инструмента (перемещаемого пользователем) и линией объекта. Текущее значение параметра отражается слева от значка инструмента. Новое значение параметра принимается к исполнению, когда пользователь отпускает левую кнопку мыши; при этом значок инструмента возвращается на ордерную линию.
The parameter value can be changed by selecting a new value on the parameter value scale. To display the scale, move the parameter digit icon to the left of the tool icon by a small distance. The value selected by the user on the scale is accepted as the new parameter value.
Изменение параметра Ds происходит также при модификации ордерной линии вниз. Для ордерных линий, находящихся выше линии объекта, уменьшение значения параметра происходит в случае, если фактическая дистанция оказывается меньше, чем чем Ds — St. Для ордерных линий, находящихся ниже линии объекта, увеличение значения параметра происходит в случае, если фактическая дистанция оказывается больше, чем Ds + St. В указанных случаях значение параметра устанавливается равным фактической дистанции между ордерной линией и линией объекта.
— шаг модификации ордерной линии в пунктах.
When the tool is set, the parameter assumes the St setting value specified in the subwindow.
The parameter value can be changed by selecting a new value on the parameter scale. To display the scale, move the parameter digit icon to the right of the tool icon by a small distance. The value selected by the user on the scale is accepted as the new parameter value.
— индекс объекта привязки в массиве Object[].
All objects of the types supported for the Pull Up Behind Object tool are accounted for in the Object[] array.
Использование индексов объектов при ручном управлении ордерами не требуется — при установке инструмента пользователем с помощью мыши приложение AutoGraf 4 will automatically determine the object index. The user only needs to make sure that the total number of supported objects does not exceed 100.
During operation, the user can change the number of installed objects considered by AutoGraf 4. This causes AutoGraf 4 to reorder the Object[] array to remove empty rows.
For example, there are three objects of supported types with names: Channal_1, Channal_2 and My_TrandLine. These objects are accounted for in the Object[] array with indexes Object[1], Object[2] and Object[3] respectively. Suppose that the Object Pull Up tool is bound to the My_TrandLine object. In this case, the value of the i_O parameter is 3.0.
Если в дальнейшем был удалён объект с индексом 2, то массив Object[] упорядочивается — значение Object[1] остаётся без изменений, значение Object[3] переписываются в освободившийся элемент Object[2], после чего значения всех элементов ниже Object[2] обнуляются. В результате объект, ранее учтённый с индексом 3, теперь будет иметь индекс 2. Одновременно с этим автоматически изменяется значение параметра i_O в массиве Instrument [or][ol][9][5].
The specified ordering is performed automatically, without the user's participation. The necessary calculations are performed immediately before transferring control to the user function AG_AT(), i.e. updated arrays are transferred to the user function at each new iteration.
Enclosed AutoGraf 4 принята классификация линий объектов поддерживаемых типов, приближенная к способу индексирования линий в MQL 4. Использование индексов линий объектов при ручном управлении ордерами не требуется — при установке инструмента пользователем с помощью мыши приложение AutoGraf 4 автоматически определит индекс линии объекта.
Figure 2. Changing the distance Ds of the tool Pull up behind the object by moving the tool icon. 1. From the moment the icon starts moving, the anchor line marks itself with a blink. 2. Moving the icon toward the object line causes the Ds parameter to decrease (after clicking on the image you will go to the website to view the video).
Fig. 3. Moving the order line up does not change the Ds parameter of the instrument. Moving the order line downward leads to a change in the Ds parameter of the instrument (true for order lines both above and below the object line) (after clicking on the image you will go to the site to view the video).
To display a scale of values for the distance setting parameter Ds of the Object pull up tool, the user moved the number icon slightly to the left of the tool. The value selected on the scale that appears is accepted as the new distance Ds value.
Execution
To enable execution of instruments in the AutoGraf 4 application, you must enable the semi-automatic or automatic order management mode (move the AG or AT control icon to the top position).
Tool algorithm A tuck behind the facility upwards is aimed at modification of the order line upwards. Modification in the opposite direction is not provided. The installed tool tracks the change of distance between the order line and the selected object line in the place where the tool icon is installed.
Условия исполнения инструмента для ордерных линий, находящихся выше и ниже линии объекта, отличаются. Для ордерных линий, находящихся ниже линии объекта, условие исполнения инструмента наступает, если дистанция преследования равна или превышает значение Ds + St. Для ордерных линий, находящихся выше линии объекта, условие исполнения инструмента наступает, если дистанция убегания меньше или равна значению Ds — St. При достижении условия исполнения инструмент формирует указание — новое значение цены ордерной линии, отстоящее от линии объекта на величину Ds (пунктов). Все расчёты выполняются дистанции между линиями на том barYou can use the Pull Up by Object tool on which you currently have the Pull Up by Object tool installed.
When working with the Pull Up Object tool, you should be very careful when moving the tool's anchor line. Any change in the coordinates or angle of the object line may result in the formation of a trade order. If it is necessary to rebuild the order management scenario, it is recommended to disable semi-automatic or automatic management, rebuild objects and reconfigure tools, and then re-enable semi-automatic or automatic mode.
Execution of the Pull Up tool for pending orders provides for modification of the whole order. This means that StopLoss and TakeProfit orders are modified simultaneously with the order. In this case, the distance from OpenPrice to each of the stop orders of the order is preserved. The exception is the case when the tool 13 Lock on price is set on the stop order line.
Figure 4. When changing the position of the object line, the distance between the object line and the order line changes. When the semi-automatic mode is enabled (AG icon at the top), this leads to the execution of the Pull Up behind object tool according to the settings (after clicking on the image you will go to the website to view the video).
On a new bar the icon of the instrument is shifted to the right. At the new place of the icon, the distance between the object line and the order line is greater than the critical distance. When the semi-automatic order management mode is enabled (AG icon at the top), this leads to the execution of the instrument. When forming a trade order to execute an instrument instruction, AutoGraf 4 takes into account the requirements and restrictions for trading operations, as well as instructions of other instruments set for the order. If there are instructions of other instruments, the application generates a single trade order that takes into account all instructions (AutoGraf 4 does not allow setting instruments that could form contradictory instructions).
Deletion
All tools in AutoGraf 4 will execute as long as they are installed. To stop executing an installed tool, it must be deleted. A tool can be deleted manually or programmatically by the user.
Для удаления инструмента Подтяжка за объектом вверх вручную необходимо выделить значок инструмента и нажать клавишу Delete. Такое управляющее действие исполняется приложением AutoGraf 4 всегда, без отказов (в отличие от торговых приказов, исполняемых на стороне сервера). При удалении инструментов вручную необходимо следить за тем, чтобы не были выделены другие инструменты или ордерные линии. Если одновременно с удалением значка установленного инструмента удаляются другие объекты, то (в зависимости от того, что это за объекты) это может привести к удалению других инструментов, а также формированию незапланированных торговых приказов — удалению и модификации ордеров.
Tool removal Lift behind the object upward also occurs automatically when the tool 6 Pull Up Not Above is executed. If the execution price of the order line reaches the execution price of the Pull Up tool, the need for further use of the Pull Up tool is considered exhausted. In this case, the Pull Up Not Above tool deletes the Pull Up Behind Object tool and deletes itself.
The Pull Up behind Object tool is automatically deleted by AutoGraf 4 also if the snap line of a graphic object or the object itself is deleted.
Figure 5. Deleting an anchor line (object) leads to automatic deletion of the tool (after clicking on the image you will go to the site to view the video).
The following example discusses a programmatic way to manage tools:
— Подтяжка за объектом вверх (9),
— Подтяжка за объектом вниз (10),
— Тянуть объект (12).
The presented example uses functions imported from the file AG_Lib.ex4. This file contains functions serving the execution of the automatic trade function AG_AT(). In general, the use of these functions is not mandatory, but it is strongly recommended.
The AG_Magic_Number() function is used to calculate the MagicNumber. The AutoGraf 4 application has a rule that only a unique value can be assigned to each order MagicNumber. This is necessary for successful identification of orders at reopening and partial closing.
The AG_Message() function is used to record message texts into the Message[] array. The AG_Set_Instr() function is used to record the parameters of the tools to be set into the Manager[][] array. The AG_Delete_Instr() function is used to record deleted tools into the Manager[][] array.