Всех приветствую! Кто знает подскажите, как сделать на mql4 чтоб время жизни второго ордера был равет первому? - страница 3
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Ордер как раз таки удаляется, а вот позиция закрывается. И это на любом рынке, даже на товарном
Если бы коллега задал вопрос на английском языке - я бы не просил уточнить.
В русском языке рыночный ордер (синоним позиция) можно только закрыть (к сожалению:)
отложенный ордер (синоним заявка) можно и удалить (к счастью:)
Ордер закрывается, а не удаляется по TP?SL. Cформулируйте точно, что вы хотите.
да, закрывается. Верно.
Думал сделать классами, но пока не реализовал
да, закрывается. Верно.
Думал сделать классами, но пока не реализовал
народ, все прочел, но а можно по существу: к примеру есть сигнал на продажу и работаем:
основной =OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,slippage,0,0,"Блок_2-OP_SELL",Magic,0,clrRed);
компенсатор=OrderSend(Symbol(),OP_BUYSTOP,LotsOptimized(),Ask+L*Point,slippage,0,0,"Блок_2-Компенсатор",Magic2,0,clrBlue); (L это расстояние от основного до компенсатора, зачем это делать? да потому что закрывать в убыток это не есть хорошо и я приверженник открыть противоположный и как тренд изменится в первоначальное мое направление тогда и раскрывать замок)
итак, цена ушла вверх и открывается компенсаторный.
Мой вопрос в том что, сначало необходимо чтоб закрылся основной, а затем и только так чтоб закрылся и компенсаторный. какой функцией это сделать? как описать?
народ, все прочел, но а можно по существу: к примеру есть сигнал на продажу и работаем:
основной =OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,slippage,0,0,"Блок_2-OP_SELL",Magic,0,clrRed);
компенсатор=OrderSend(Symbol(),OP_BUYSTOP,LotsOptimized(),Ask+L*Point,slippage,0,0,"Блок_2-Компенсатор",Magic2,0,clrBlue); (L это расстояние от основного до компенсатора, зачем это делать? да потому что закрывать в убыток это не есть хорошо и я приверженник открыть противоположный и как тренд изменится в первоначальное мое направление тогда и раскрывать замок)
итак, цена ушла вверх и открывается компенсаторный.
Мой вопрос в том что, сначало необходимо чтоб закрылся основной, а затем и только так чтоб закрылся и компенсаторный. какой функцией это сделать? как описать?
Второй ордер ставите/открываете после первого? Значит тикет первого известен. Сразу после установки/открытия второго ордера его тикет тоже известен, тут создаем глобальную переменную терминала с именем 'order_'+Ticket2 и присваиваем ей значение Ticket1. Потом, в цикле проходим по всем ордерам, если для ордера существует глобальная переменная 'order_'+OrderTicket(), берем ее значение (Ticket) и выделяем ордер по Ticket1 и смотрим что с ним, если он закрыт (его время закрытия больше 0), то удаляем или закрываем ордер с Ticket2.
Второй ордер ставите/открываете после первого? Значит тикет первого известен. Сразу после установки/открытия второго ордера его тикет тоже известен, тут создаем глобальную переменную терминала с именем 'order_'+Ticket2 и присваиваем ей значение Ticket1. Потом, в цикле проходим по всем ордерам, если для ордера существует глобальная переменная 'order_'+OrderTicket(), берем ее значение (Ticket) и выделяем ордер по Ticket1 и смотрим что с ним, если он закрыт (его время закрытия больше 0), то удаляем или закрываем ордер с Ticket2.
благодарю.
попробую
благодарю.
попробую
другой вариант - тикет первого ордера писать в комент второго. То есть использовать не глоб.переменную терминала, а ордер на сервере. И переносить советник между терминалами и VDS будет проще.
Эдакая частичная эмуляция OCO групп.
другой вариант - тикет первого ордера писать в комент второго. То есть использовать не глоб.переменную терминала, а ордер на сервере. И переносить советник между терминалами и VDS будет проще.
Эдакая частичная эмуляция OCO групп.
а вот тут работа с ордерами на сервере брокера, для меня темень.
но спасибо