Это условный приказ. Он находится на брокере. Он не выводится на биржу. Работает он следующим образом: когда вы производите
SellIfLess(bar + 1, Количество лотов, СтопЦена, "Sh_ReversEnter")
то ваша СтопЦена это цена активации приказа. Как только цена на рынке станет равна или меньше, приказ активируется. После активации брокер выводит на рынок лимитный приказ на продажу с ценой равной СтопЦена - проскальзывание, которое у вас равно 0. Следовательно, будет лимитный приказ по цене СтопЦена.
Далее, данный приказ может быть исполнен биржей ТОЛЬКО если цена инструмента равна СтопЦена или выше ее. Почему? Вопросы к бирже.
Отсюда, если цена пошла резко вниз, то ваш приказ не будет исполнен. Потому что цена ушла ниже СтопЦена и не может быть исполнена ваша лимитная заявка. А это ситуация вполне естественная. Пошел прорыв и без отката. У вас, следовательно, должен быть пропущенный вход и сообщение об этом. Если сообщения нет, то значит условия if как то не сработали и вообще не было даже сигнала на условный ордер.
Побольше бы таких комментариев - никакой справки не нужно было бы - серьезно! К сожалению (или к счастью) это мне и так понятно. Проблема в том, что не было даже заявок
Если вы хотите знать точно, сработали или нет, используйте элементарные логи в виде ctx.Log()
Сегодня буду разбираться с вопросом