Как избавиться от ошибк 138
Все время выдает эту ошибку! Почему и как исправить?
A почему ты закрываешь ордер ценой его открытия? ... Это немного
странно...
cloud666:
Все время выдает эту ошибку! Почему и как исправить?
Все время выдает эту ошибку! Почему и как исправить?
Вы пытаетесь закрыть ордер по цене открытия:
OrderClose(OrderTicket(), OrderLots(), OrderOpenPrice(), 0, 0);
и лучше поставить Slippage больше ноля.
Вы закрываетесь по ценами открытия, а нужно по текущей рыночной цене. Для этого вам нужно проанализировать текущий ордер (OrderType) и если было OP_BUY - закрывайте по Bid, если OP_SELL - по Ask.
Говорять, что можно возпользоваться функции OrderClosePrice, хотя по документации она должна показывать цена закрытия уже закрытого ордеера.
Спасибо всем! Теперь рвзобрался... Как это у меня раньше асе работало???
:)