Нужно просто удалить один отложенный ордер при срабатывании другого.
без проверок на символ и магик
//Возвращает тикет оставшегося отложенника при срабатывании первого из двух---+ int StopTicket() { int ticket= -1,i,n; for(i=0;i<OrdersTotal();i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if (OrderType()==OP_BUY || OrderType()==OP_SELL) { for(n=0;n<OrdersTotal();n++) { if (OrderSelect(n, SELECT_BY_POS, MODE_TRADES)) { if (OrderType()==OP_BUYSTOP || OrderType()==OP_SELLSTOP ||OrderType()==OP_SELLLIMIT||OrderType()==OP_BUYLIMIT){ticket=OrderTicket();} } } } } } return(ticket);

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как можно определить в советнике, что отложенный ордер сработал?