1. Нет.
2. OrderSend().
1. Есть ли в MQL5 функция, позволяющая програмно включить TrailingStop для открытой позиции? И если позиция состоит из более чем одной сделки, как выбрать ту по которой нужно включить TrailingStop?
2. Есть ли в MQL5 функция закрытия позиции (сделки) ? Я что-то не нашёл ?
1. Нет, такой функции в MQL5 нет, как нет её и MQL4. Трейлинг-стоп надо реализовывать самостоятельно в коде. Поскольку в МТ5 по символу может существовать только одна позиция, то на ней и будет работать трейлинг. А все отдельные сделки по символу суммируются в одну позицию.
2. В MQL5 позиция закрывается путём установки ордера на совершение сделки противоположного по отношению к закрываемой позиции направления того же объёма, что имеет закрываемая позиция.
Реализуется через OrderSend() функцию или можно использовать готовую из класса CTrade стандартной библиотеки bool CTrade::PositionClose(const string symbol,ulong deviation).

- www.mql5.com
1. Есть ли в MQL5 функция, позволяющая програмно включить TrailingStop для открытой позиции? И если позиция состоит из более чем одной сделки, как выбрать ту по которой нужно включить TrailingStop?
2. Есть ли в MQL5 функция закрытия позиции (сделки) ? Я что-то не нашёл ?
1. TrailingStop позиций
На текущий момент нет. Работа с TrailingStop-ом возможна, только для этого придется отслеживать все сделки и периодическим "подтраливать" нужную позицию (если программно), примерно также осуществляется перевод в БУ.
Если позиция включает в себя несколько сделок, то любое управление ей на принципах используемых в MQL4 возможно только виртуально. С примером такой работы можно ознакомиться в статье Virtual Order Manager для управления ордерами в позициях терминала MetaTrader 5.
2. Закрытие позиций
Позиции закрываются встречной сделкой на равный объем. Функции, на прямую закрывающей позицию в самом MQL5 теперь нет (если не считать OrderSend()...), но ее можно реализовать самостоятельно.
Кроме того, реализация закрытия позиций присутствует в объектах, к примеру "CTrade" (\MQL5\Include\Trade\Trade.mqh).
Там есть такие вещи как:
//--- methods for working with positions bool PositionOpen(const string symbol,ENUM_ORDER_TYPE order_type,double volume, double price,double sl,double tp,const string comment=""); bool PositionModify(const string symbol,double sl,double tp); bool PositionClose(const string symbol,ulong deviation=ULONG_MAX);Для управления позициями можно воспользоваться этим классов, или создать свой (более продвинутый)...
Дмитрий, Валерий, Владимир - большое спасибо за просвещение! Про ‘TrailingStop’ я в принципе так и думал, но были сомнения, в которых вы помогли разобраться. А вот за закрытие позиции особая благодарность – это для меня открытие.
1. Есть ли в MQL5 функция, позволяющая програмно включить TrailingStop для открытой позиции? И если позиция состоит из более чем одной сделки, как выбрать ту по которой нужно включить TrailingStop?
2. Есть ли в MQL5 функция закрытия позиции (сделки) ? Я что-то не нашёл ?

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
1. Есть ли в MQL5 функция, позволяющая програмно включить TrailingStop для открытой позиции? И если позиция состоит из более чем одной сделки, как выбрать ту по которой нужно включить TrailingStop?
2. Есть ли в MQL5 функция закрытия позиции (сделки) ? Я что-то не нашёл ?