Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Следи за новостями. Заходи на официальный канал нашей компании!
alp
156
alp 2011.11.11 13:14 

есть у меня такая строчка OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-40*Point,Digits),NormalizeDouble(Ask+70*Point,Digits),0,Blue);

Но иногда стопы не устанавливаются (ошибка 130 " не правильные стопы"). Я засунул эту строку в цикл, это решило проблему, но иногда программы под зависает.

Есть два выхода из этой ситуации. Это вставить оператор ожидания в 100 миллисекунд или ожидать пока не поменяется Bid или Ask.

Как это реализовать?

alp
156
alp 2011.11.11 13:38  
Наверно я искать не умею потому что не нашел ((((
alp
156
alp 2011.11.11 13:51  
Этот компилятор оператора wait не знает, break не подходит.
alp
156
alp 2011.11.11 13:53  
О тут оказывается Sleep есть )))
Владимир Тезис
4271
Владимир Тезис 2011.11.11 14:07  

Alp

NormalizeDouble(Bid-40*Point,Digits),NormalizeDouble(Ask+70*Point,Digits)

Это не правильно. Уровни стоп-приказов нужно готовить заранее, а не вписываnь в OrderModify(). И не просто готовить, а при этом так же проверять, а ни является ли полученный новый тейк или стоп-лосс менее минимально-допустимого. Вот тогда не будет глюков в программе (читай не будет ошибки 130)

alp
156
alp 2011.11.13 08:23  
drknn И как это проверить?
Vladyslav Goshkov
1960
Vladyslav Goshkov 2011.11.13 11:56  
Alp:
drknn И как это проверить?
MarketInfo().
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий