Error 138

 

Здравствуйте. Подскажите пожалуйста разницу при открытии ордера по приведенному ниже алгоритму на тайм фреймах М1 и М30 так как на М1 все хорошо, в то время как в тот же момент на М30 ошибка 138.

Спасибо

if(....){
     RefreshRates();
         Alert("Try to open Buy. Wait for answer...");
           Ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,NormalizeDouble(Bid - BuySL*Point,Digits), NormalizeDouble(Ask + BuyTP*Point,Digits),"Open by robot_Rocket_Man",Magic,0,Green);
         if (Ticket > 0)                        
           {
            Alert ("Opened order Buy ",Ticket);
            return;                            
           }
         if (Fun_Error(GetLastError())==1)      
                                      
         return;
   }
 
138 это реквоты и как можно в тот же момент открывать и на М1, и на М30?
 
evillive:
138 это реквоты и как можно в тот же момент открывать и на М1, и на М30?

Два терминала работающие параллельно на одном и том же советнике.
 

Ну разве что на разных счетах. На одном и том счёте без разницы, в двух терминалах или в том же терминале но в разных окнах. Хотя по логичней было бы видеть ошибку 146 (Подсистема торговли занята).

А нету ли в коде проверки на открытие нового бара?

 
Profit777:

Здравствуйте. Подскажите пожалуйста разницу при открытии ордера по приведенному ниже алгоритму на тайм фреймах М1 и М30 так как на М1 все хорошо, в то время как в тот же момент на М30 ошибка 138.

Спасибо


Реквоты обрабатывать нужно, чего их пугаться. Простейший алгоритм может быть такой: встретили 138 ошибку - перепроверили условие входа - если все хорошо, делаем новую попытку открыться, в противном случае выходим.

Еще добавлю, что количество реквотов сильно зависит от пинга сервера, рыночных условий и выставленного параметра slippage.

 
нормальные брокеры вообще не выдают ошибку так часто, чтоб их обрабатывать. Если ошибка часто вылетатет - надо брокера менять
 
Подскажите пожалуйста оптимальные значения пинга...
alsu:

Реквоты обрабатывать нужно, чего их пугаться. Простейший алгоритм может быть такой: встретили 138 ошибку - перепроверили условие входа - если все хорошо, делаем новую попытку открыться, в противном случае выходим.

Еще добавлю, что количество реквотов сильно зависит от пинга сервера, рыночных условий и выставленного параметра slippage.

 

Оптимальное значение - меньше 100 микросекунд но оно практически недостижимо, комп с терминалом должен находиться на том же сетевом узле что и сервер брокера или хотя бы в том же здании.

А так, если меньше 100 миллисекунд то уже прекрасно. Только вот замерить никак, только очень дурной админ оставит пинг-ответчик активным...

 
evillive:

Оптимальное значение - меньше 100 микросекунд но оно практически недостижимо, комп с терминалом должен находиться на том же сетевом узле что и сервер брокера или хотя бы в том же здании.

А так, если меньше 100 миллисекунд то уже прекрасно. Только вот замерить никак, только очень дурной админ оставит пинг-ответчик активным...


А как же при регистрации демки... там же можно проверить... то - есть увидеть пинг... у меня к примеру 39 милисекунд... думаю для реала не будет хуже...
 
Это пинг до ДЦ, а от поставщика котировок? От ДЦ пинг может быть хоть 1мс, а на практике никак не узнать с каким запозданием пришла котировка. Хотя это всё важно лишь для высокочастотного скальпинга в пределах спреда, для более-менее адекватной торговли с целями в несколько десятков пунктов и больше неважно 30мс пинг или 130. Главное обрывов связи чтобы не было.
 
Спасибо всем.
Причина обращения: