думаю так, что позиция по инструменту едина. либо закрываем А а потом открываем Б. либо усредняем/наращиваем - к А добавляем Б. возможно использовать стоп ордера или открыть контр-позиции для закрытия (части) позиции А или АБ.
Идеология торговли на МТ5 - это возможность существования только одной открытой позиции по выбранному инструменту. Т.е. некорректно говорить, что на одном символе открыто несколько позиций. Позиция всегда должна быть одна. При наличии позиции срабатывание дополнительных ордеров на том же символе будет приводить (а) к увеличению или уменьшению объёма этой позиции и (б) возможному изменению стоп-уровней позиции. В частности, увеличение объёма позиции можно трактовать, по Вашей терминологии, как "долив".
Более того, при открытии у позиции появляется свой уникальный идентификатор, который не меняется даже при развороте позиции.
Если необходимо закрыть позицию, надо выставить один или несколько противоположнонаправленных ордеров с суммарным объёмом, равным объёму позиции. Идентификатор у этой позиции будет ровно тот, который она получила при своём открытии.
Да, можно. Речь будет идти о частичном закрытии позиции. Когда наступят "условия для А", просто выставляйте противоположнонаправленный ордер с объёмом, необходимым для закрытия части позиции. Когда наступят "условия для Б", выставляйте противоположнонаправленный ордер с объёмом, достаточным для закрытия оставшейся позиции.
"Когда они открыты единовременно" - по сути, речь идёт о том, что имеется одна открытая позиция, объём которой равен сумме объёмов двух ордеров. Не совсем понятно, как Вы закрываете позицию, а именно: при наступлении условий Вы отправляете два противоположнонаправленных ордера, или же отправляете только один ордер при наступлении события А, а потом просто ждёте, когда позиция закроется по своим стоп-уровням?
Идеология торговли на МТ5 - это возможность существования только одной открытой позиции по выбранному инструменту. Т.е. некорректно говорить, что на одном символе открыто несколько позиций. Позиция всегда должна быть одна. При наличии позиции срабатывание дополнительных ордеров на том же символе будет приводить (а) к увеличению или уменьшению объёма этой позиции и (б) возможному изменению стоп-уровней позиции. В частности, увеличение объёма позиции можно трактовать, по Вашей терминологии, как "долив".
Более того, при открытии у позиции появляется свой уникальный идентификатор, который не меняется даже при развороте позиции.
Если необходимо закрыть позицию, надо выставить один или несколько противоположнонаправленных ордеров с суммарным объёмом, равным объёму позиции. Идентификатор у этой позиции будет ровно тот, который она получила при своём открытии.
Да, можно. Речь будет идти о частичном закрытии позиции. Когда наступят "условия для А", просто выставляйте противоположнонаправленный ордер с объёмом, необходимым для закрытия части позиции. Когда наступят "условия для Б", выставляйте противоположнонаправленный ордер с объёмом, достаточным для закрытия оставшейся позиции.
"Когда они открыты единовременно" - по сути, речь идёт о том, что имеется одна открытая позиция, объём которой равен сумме объёмов двух ордеров. Не совсем понятно, как Вы закрываете позицию, а именно: при наступлении условий Вы отправляете два противоположнонаправленных ордера, или же отправляете только один ордер при наступлении события А, а потом просто ждёте, когда позиция закроется по своим стоп-уровням?
If (событие) {Закрываем А, лотом открытым А;}
If (событие) {Закрываем Б, лотом открытым Б;}
идентификатор - цена открытия позы. Т.е. перебираем открытые и если условие для закрытия выполнено и цена открытия соответсвует (нет мейджика больше, приходится искать альтернативные идентификаторы) закрываемому лоту, то закрываем позу лотом открытия. Так вот когда А и Б не пересекаются, то все гуд. А вот когда пересекаются, то первая закрывается по условиям а вторая по тп/сл. Полагаю, что когда открывается последовательная сделка (например Б), то видимо она распознается как долив А и все идентификаторы становятся свойственными для А. Может поэтому, когда перебор открытых поз и идентификация их по цене открытия, то компьюча распознает только одну А и индивидуальной цены открытия Б нет?.... Вот может поэтому?
А как определяете цену открытия единственной позиции на символе, если эта позиция является результатом срабатывания двух однонаправленных ордеров с разными ценами исполнения?
Нет, ну всё-таки, каким именно образом определяете цену открытия единственной позиции, с помощью каких функций? :)
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Коллеги, подскажите, пжлст, правильно ли я понимаю, что
Если открыты последовательно поза А и поза Б (после), то она (Б) идентифицируется терминалом как А (долив)? И закрывать надо позиции по идентификатору А? А можно ли закрыть позу А по условиям для А, а Б - для Б? Или я что-то не догоняю?