Помогите найти ошибку в условии советника

 
Простейший советник, но видимо где то есть ошибка так как он переодически пропускает торговые сигналы, подскажиет что можно исправить или оптимизировать в условии
Файлы:
buyusell.mq4  3 kb
 
murchel писал(а) >>
Простейший советник, но видимо где то есть ошибка так как он переодически пропускает торговые сигналы, подскажиет что можно исправить или оптимизировать в условии

1. Если Ваш ДЦ дает котировки с 5 знаками, то нужно увеличить Ваши TakeProfit_1, TakeProfit_2, StopLoss_1 и StopLoss_2 в 10 раз

Точно так же, константу 30 тогда везде следует заменить на 300 (лучше завести для нее переменную).

А еще лучше объявить все эти переменные, как

extern double ...

чтобы можно было что-то посмотреть или оптимизировать.

2. Прежде чем использовать OrderOpenPrice(), хорошо бы выбрать ордер. Для этого оператор

if (ticket_1>0)

заменить на

if (OrderSelect(ticket_1, SELECT_BY_TICKET))

То же с ticket_2

3. Возможно, основная проблема с открытием ордеров связана с отложенным ордером. Рыночный ордер может закрыться, а отложенный остается и препятствует открытию рыночных ордеров при поступлении торгового сигнала (поскольку, total = 1). Здесь Вы сами должны определиться с логикой советника. Вероятно, отложенный ордер, если закрылся рыночный, следует удалить.

Или, вообще, сначала сделать советника без отложенных ордеров.

 
murchel писал(а) >>
Котировки поступают с четырьмя знаками после зпт, отложенный ордер тоже не при делах

"if (ticket_1>0)

заменить на

if (OrderSelect(ticket_1, SELECT_BY_TICKET))

То же с ticket_2" сделал, если я вас правельно понял то условие в принципе составленно верно, осталось понять почему советник на одни сигналы срабатывае, а др. точно такие же игнорирует

Поставьте отладочную печать. Только поменяйте порядок проверки, чтобы получить больше информации в log файл. Сначала проверяете сигнал, ставите отладочную печать. Включите туда все-таки total. Потом смотрите результат в логе. Может там есть ошибки, связанные с попыткой открыть ордер.

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