Скачать MetaTrader 5

OrderSend(...) странно работает !?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Поделись программой в CodeBase. Получи доступ к миллионам трейдеров!
Forex Trader
114257
Forex Trader 2008.01.04 19:20 
Вот кусок текста

case 18782098:
ExtParam1=OrderTicket();
Comment(OrdersTotal()," ",OrderTicket()," Typ1=",OrderType()," ",cnt," Ask=",Ask," == ",OrderOpenPrice());

(2) OrderSend(Symbol(),OP_BUY,0.10,Ask,3,0,0,"Переворот Ask 1",1111,0,White);

if (Ask <= OrderOpenPrice()-0.090)
{
if (err == 0)
if (OrderClose(18782098,0.1,Ask,3,Red) == 0)
Print(" Ошибка: Ask-0 ",ErrorDescription(err));
else
{
(1) OrderSend(Symbol(),OP_BUY,0.10,Ask,3,0,0,"Переворот Ask 1",1111,0,White);
err=GetLastError();
(3) if (err!=0) Print(" Ошибка переворота: ERR Ask-1 ",ErrorDescription(err)," ",err);
}
}
break;
Если покупка стоит в точке (1), а точка (2) убрана, то в точке (3) имеем ошибку 129.
Если убираю точку (1), то в точке (2) покупка проходит норально.
Ордер закрывается нормально в обоих случаях.

Т.е. пытаюсь сделать переворот, но только после предварительного закрытия ордера.
В чем дело ? Версия 211.
Forex Trader
114257
Forex Trader 2008.01.05 08:19  
Перед OrderSend обнови данные через RefreshRates(). Закрытие ордера занимает до нескольких секунд, за это время данные по цене могут измениться.
Forex Trader
114257
Forex Trader 2008.01.05 12:04  
Спасибо. Еще я после строки (1) дополнительно поставил сразу Print("......") и тоже заработало.
Кстати, раньше в OrderSend(....) можно было задавать\изменять графические символы.
Сейчас это не работает ?
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий