OrderClose в МТ5

 
Подскажите пожалуйста, как реализовать функицию закрытия ордера OrderClose(была в МТ4) в новой МТ5. Только недавно начал осваивать MQL5. Третьи сутки сижу на форуме, ищу наглядный пример и не могу найти. Если можна краткий пример как закрыть сделку, если условия торговли изменились. Зарание благодарен!
 
sergey250581: Подскажите пожалуйста, как реализовать функицию закрытия ордера OrderClose(была в МТ4) в новой МТ5. Только недавно начал осваивать MQL5. Третьи сутки сижу на форуме, ищу наглядный пример и не могу найти. Если можна краткий пример как закрыть сделку, если условия торговли изменились. Зарание благодарен!
В МТ5 закрываются не ордера, а позиции. Для закрытия позиции необходимо выставить противоположнонаправленные ордера с совокупным объёмом, равным объёму закрываемой позиции. Отдельной функции нет. В торговом классе Ctrade предусмотрен метод закрытия позиции - работает по указанному выше принципу. Если нужны примеры работы с таким методом - посмотрите поиском по форуму слово "PositionClose".
 
Yedelkin:
В МТ5 закрываются не ордера, а позиции. Для закрытия позиции необходимо выставить противоположнонаправленные ордера с совокупным объёмом, равным объёму закрываемой позиции. Отдельной функции нет. В торговом классе Ctrade предусмотрен метод закрытия позиции - работает по указанному выше принципу. Если нужны примеры работы с таким методом - посмотрите поиском по форуму слово "PositionClose".
Спасибо за ответ. Буду пробовать реализовать это в своем коде.
 
sergey250581: Буду пробовать реализовать это в своем коде.
Должно быть достаточно просто. Например, отправляем торговый запрос на покупку 1 лота по рынку. Затем - ещё один аналогичный запрос. Сформируется BUY-позиция по символу размером 2 лота. Затем отправляем торговы запрос на продажу 2 лотов по рынку. Позиция должна закрыться.
 
Yedelkin:
Должно быть достаточно просто. Например, отправляем торговый запрос на покупку 1 лота по рынку. Затем - ещё один аналогичный запрос. Сформируется BUY-позиция по символу размером 2 лота. Затем отправляем торговы запрос на продажу 2 лотов по рынку. Позиция должна закрыться.
А как быть с разнонаправлеными позициями? На одном ТФ  - купил, на другом продал - они закроются друг о друга?
 
TraderFin1:
А как быть с разнонаправлеными позициями? На одном ТФ  - купил, на другом продал - они закроются друг о друга?

Есть разница при работе на хеджевом и неттинговом счетах. На хеджевом можно открыть разнонаправленные позиции по одному символу, на неттинговом - нельзя - там можно иметь лишь одну позицию на символе. Соответственно меняется и логика поведения позиции(позиций) на неттинговом и хеджевом счетах. С этим стоит разобраться, чтобы вопросов было меньше по тому как и что происходит с позициями на разных счетах. А вот в быстром разборе на примерах вам может помочь торговый класс CTrade, который можете использовать в своих экспериментах:

Документация по MQL5: Стандартная библиотека / Торговые классы / CTrade
Документация по MQL5: Стандартная библиотека / Торговые классы / CTrade
  • www.mql5.com
Стандартная библиотека / Торговые классы / CTrade - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Сергей Попов:
Подскажите пожалуйста, как реализовать функицию закрытия ордера OrderClose(была в МТ4) в новой МТ5. Только недавно начал осваивать MQL5. Третьи сутки сижу на форуме, ищу наглядный пример и не могу найти. Если можна краткий пример как закрыть сделку, если условия торговли изменились. Зарание благодарен!

Используйте библиотеку MT4Orders, отличная вещь, я на ней делаю мультиплатформенные советники

Причина обращения: