Не корректная работа OrdersTotal() при рестарте аккаунта

 

В коде стоит функция: (Если у нас нет открытых ордеров - мы можем открыть ордер)

if (OrdersTotal() == 0)
{
   // Открываем ордера
   
   OrderSend ("EURUSD", OP_BUY, Order_Lots, MarketInfo ("EURUSD", MODE_ASK), Order_Slippage, 0, 0, "Plexus System " + System);

   Print (OrdersTotal());
}

На аккаунте стоят 2 ордера по фондам (рынок закрыт - ордера не активны).

Когда захожу на аккаунт - функция Print показывает, что ордеров 0, открывает ордер и следом показывает 3. Как так?

 

Надо паузу секунд 20-30 сделать после смены аккаунта, чтобы позволить терминалу обновить все данные, а уже потом начинать работать.


Ну и разделять работу на фондах и прочих не очень форексных активах от работы на форексных валютных парах.

 
evillive:

Надо паузу секунд 20-30 сделать после смены аккаунта, чтобы позволить терминалу обновить все данные, а уже потом начинать работать.


Ну и разделять работу на фондах и прочих не очень форексных активах от работы на форексных валютных парах.


Да, задержка помогла :). Спасибо. То демо счет - солянка, там все ).
 
evillive:

Надо паузу секунд 20-30 сделать после смены аккаунта, чтобы позволить терминалу обновить все данные, а уже потом начинать работать.


Ну и разделять работу на фондах и прочих не очень форексных активах от работы на форексных валютных парах.


А как понять, что аккаунт поменялся? Или что все данные загрузились. Чтобы ждать только при смене аккаунта, а не при при каждом запуске советника.
 
Проверять номер счёта, как же ещё. Хотя можно ещё много других параметров счёта проверять: Информация о счете.
 
evillive:
Проверять номер счёта, как же ещё. Хотя можно ещё много других параметров счёта проверять: Информация о счете.

А как понять, что счет сменился?
 
lelectrohardl:

А как понять, что счет сменился?

Запоминать номер текущего счета в переменную ипотом сравнивать предыдущее значение счета и актуальное.
 
RickD:

Запоминать номер текущего счета в переменную ипотом сравнивать предыдущее значение счета и актуальное.


Точно, прошу прощения :).

Спасибо еще раз, все работает.

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