- Не работает удаление отложенного ордера
- Как проверить Stop Loss
- Советник не сразу выставляет SL/TP
Вот здесь есть функция Функция ModifyOrder().
и пример её использования для вашего случая
if (OrdersTotal()!=0)//проверка наличия открытых ордеров { for (int i = 0; i < OrdersTotal(); i++) //ищем последний открытый ордер { if (OrderSelect(i, SELECT_BY_POS)==true) { if (OrderMagicNumber()== magic)//если используется магик { OrderModify(OrderTicket(), 0, stoploss, takeprofit,0);//модификация ордера if(GetLastError()==0)Print("Уровень стоп-лосс и тейк-профит модифицированы: ", "стоп-лосс: ", stoploss, "тейк-профит: ", takeprofit); } } } }
StSpirit писал(а) >>
Это как бы типовая, дальше эксперементируйте.
В таком случае модификация позы будет происходить до посинения, вне зависимости от того, установлены ли стоп и профит.
Вышеприведенную функцию нужно изменить хотя бы так:
if(OrdersTotal()!=0)//проверка наличия открытых ордеров for(int i = 0; i < OrdersTotal(); i++) //ищем последний открытый ордер if(OrderSelect(i, SELECT_BY_POS)) if(OrderMagicNumber()== magic && OrderStopLoss() == 0 && OrderTakeProfit() == 0)//если используется магик { if(OrderType() == OP_BUY) { // расчет стопа и профита для длинных поз } else { // расчет стопа и профита для коротких поз } OrderModify(OrderTicket(), 0, stoploss, takeprofit,0);//модификация ордера if(GetLastError()==0) Print("Уровень стоп-лосс и тейк-профит модифицированы: ", "стоп-лосс: ", stoploss, "тейк-профит: ", takeprofit); }
В таком случае модификация позы будет происходить до посинения, вне зависимости от того, установлены ли стоп и профит.
Совершенно верно. Я же написал что это типовая, так как считаю неправильным выкладывать ф-ции уже полностью готовые, это в плане образования в mql это сильно не поможет, я дал просто каркас, дальше можно туда и проверок напихать и прочего. Кстати, когда я появился на этом форуме, меня с первыми просьбами, что касалось кода, посылали подальше к учебникам и это правильно, я быстрее освоил язык. А если бы мне на все вопросы выкладывали полностью готовые ответы, то я бы и чаще спрашивал... Считаю что этот форум все-таки место для того, чтобы делились опытом, а не делали полностью за других :) Вот такая вот петрушка.
Совершенно верно. Я же написал что это типовая, так как считаю неправильным выкладывать ф-ции уже полностью готовые, это в плане образования в mql это сильно не поможет, я дал просто каркас, дальше можно туда и проверок напихать и прочего. Кстати, когда я появился на этом форуме, меня с первыми просьбами, что касалось кода, посылали подальше к учебникам и это правильно, я быстрее освоил язык. А если бы мне на все вопросы выкладывали полностью готовые ответы, то я бы и чаще спрашивал... Считаю что этот форум все-таки место для того, чтобы делились опытом, а не делали полностью за других :) Вот такая вот петрушка.
Не соглашусь с оппонентом. Если Вы хотите направить новичка, то и направляйте описаниями и объяснениями. Но, если Вы выкладываете код, он должен работать. В противном случае Вы еще больше запутаете товарища.
Подскажите безграммотному. Столкнулся с необходимостью в эксперте изменить код таким образом, чтобы ордер открывался без SL и TP, но сразу после открытия ордера нужно SL и TP установить. Подскажите как правильно прописать код на установку после открытия ордера.
Сделаю за 10$. mql5@yandex.ru Будет выставлять заложенные уровни Sl Tp на все ордера.
Не знаю конкретно что Вы имели ввиду, я выкладывал подобное здесь
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования