Common error 2 помогите!

 
Уже на нескольких последних билдах постоянно в тестере достает ошибка 2 (Common error) при удалении закрытии и модификации ордеров :(((

В онлайне (на демо и реале) такого нет ... только в тестере

Для того что бы хоть как то по подробнее объяснить ситуацию приведу кусок лога тестера

Здесь обратите внимание на судьбу ордера #25

15:09:25 2005.10.24 01:59  PM_v2 GBPUSD,M1: Open order
15:09:25 2005.10.24 01:59  PM_v2 GBPUSD,M1: #30 2005.10.24 01:59 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 0.0000 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:01  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:01  PM_v2 GBPUSD,M1: #30 2005.10.24 01:59 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 1.7664 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:01  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:03  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:03  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7662 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:03  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:04  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:04  PM_v2 GBPUSD,M1: #30 2005.10.24 01:59 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 1.7668 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:04  PM_v2 GBPUSD,M1: delete #30 buy stop 0.30 GBPUSD at 1.7678 sl: 1.7548 tp: 1.7688 ok
15:09:25 2005.10.24 02:05  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:05  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7662 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:05  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:08  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:08  PM_v2 GBPUSD,M1: #29 2005.10.24 01:59 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 1.7664 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:08  PM_v2 GBPUSD,M1: delete #29 buy limit 0.20 GBPUSD at 1.7656 sl: 1.7534 tp: 1.7666 ok
15:09:25 2005.10.24 02:09  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:09  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7662 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:09  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: Ask=1.7666 Bid=1.7664 Send Order: (GBPUSD,2,0.2,1.7656,8,1.7534,1.7666,buy,10,0,-1)
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: open #31 buy limit 0.20 GBPUSD at 1.7656 sl: 1.7534 tp: 1.7666 ok
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: Open order
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: #31 2005.10.24 02:14 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 0.0000 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: Ask=1.7666 Bid=1.7664 Send Order: (GBPUSD,4,0.3,1.7678,8,1.7548,1.7688,buy,10,0,-1)
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: open #32 buy stop 0.30 GBPUSD at 1.7678 sl: 1.7548 tp: 1.7688 ok
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: Open order
15:09:25 2005.10.24 02:14  PM_v2 GBPUSD,M1: #32 2005.10.24 02:14 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 0.0000 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7666 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: #32 2005.10.24 02:14 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 1.7668 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:19  PM_v2 GBPUSD,M1: delete #32 buy stop 0.30 GBPUSD at 1.7678 sl: 1.7548 tp: 1.7688 ok
15:09:25 2005.10.24 02:20  Tester: order #24, sell 0.20 GBPUSD is opened at 1.7670
15:09:25 2005.10.24 02:20  PM_v2 GBPUSD,M1: TrailStops::Error when order modify. LastError = 2
15:09:25 2005.10.24 02:20  PM_v2 GBPUSD,M1: #21 2005.10.24 01:45 sell 0.30 GBPUSD 1.7660 1.7790 1.7650 1.7673 0.00 0.00 -39.00 sell 20
15:09:25 2005.10.24 02:20  PM_v2 GBPUSD,M1: modify #21 sell 0.30 GBPUSD at 1.7660 sl: 1.7790 tp: 1.7660 ok
15:09:25 2005.10.24 02:22  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:22  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7671 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:22  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:24  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:24  PM_v2 GBPUSD,M1: #31 2005.10.24 02:14 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 1.7670 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:24  PM_v2 GBPUSD,M1: delete #31 buy limit 0.20 GBPUSD at 1.7656 sl: 1.7534 tp: 1.7666 ok
15:09:25 2005.10.24 02:25  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:25  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7666 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:25  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: Ask=1.7668 Bid=1.7666 Send Order: (GBPUSD,2,0.2,1.7656,8,1.7534,1.7666,buy,10,0,-1)
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: open #33 buy limit 0.20 GBPUSD at 1.7656 sl: 1.7534 tp: 1.7666 ok
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: Open order
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: #33 2005.10.24 02:27 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 0.0000 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: Ask=1.7668 Bid=1.7666 Send Order: (GBPUSD,4,0.3,1.7678,8,1.7548,1.7688,buy,10,0,-1)
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: open #34 buy stop 0.30 GBPUSD at 1.7678 sl: 1.7548 tp: 1.7688 ok
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: Open order
15:09:25 2005.10.24 02:27  PM_v2 GBPUSD,M1: #34 2005.10.24 02:27 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 0.0000 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:29  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:29  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7669 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:29  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: #34 2005.10.24 02:27 buy stop 0.30 GBPUSD 1.7678 1.7548 1.7688 1.7673 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: delete #34 buy stop 0.30 GBPUSD at 1.7678 sl: 1.7548 tp: 1.7688 ok
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7672 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:31  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:34  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:34  PM_v2 GBPUSD,M1: #33 2005.10.24 02:27 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 1.7672 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:34  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:38  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:38  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7668 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:38  PM_v2 GBPUSD,M1: LastError = 2
15:09:25 2005.10.24 02:41  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:41  PM_v2 GBPUSD,M1: #33 2005.10.24 02:27 buy limit 0.20 GBPUSD 1.7656 1.7534 1.7666 1.7671 0.00 0.00 0.00 buy 10
15:09:25 2005.10.24 02:41  PM_v2 GBPUSD,M1: delete #33 buy limit 0.20 GBPUSD at 1.7656 sl: 1.7534 tp: 1.7666 ok
15:09:25 2005.10.24 02:45  PM_v2 GBPUSD,M1: Delete Order 
15:09:25 2005.10.24 02:45  PM_v2 GBPUSD,M1: #25 2005.10.24 01:46 sell stop 0.30 GBPUSD 1.7648 1.7778 1.7638 1.7670 0.00 0.00 0.00 sell 20
15:09:25 2005.10.24 02:45  PM_v2 GBPUSD,M1: delete #25 sell stop 0.30 GBPUSD at 1.7648 sl: 1.7778 tp: 1.7638 ok



Т.о. ордер удалился спустя 45 минут от первой попытки удалить его.

Точно такая же ситуация с OrderModify()

Т.е. иногда ордер удаляется/модифицируется спустя несколько минут(часов) если с момента первой попытки не происходит ни каких других событий (открытие/закрытие/модификация/удаление). Если же происходят другие события с ордерами, то проблемный ордер после них порой удаляется/модифицируется.

Честно говоря "задрала" уже эта ошибка! Я понимаю, что вам будет трудно, что-либо полезное мне ответить, но хотя бы скажите, что я могу сделать для прояснения ситуации?!

 
Выложить код, может кто и глянет. Или не выкладывать - может кто-нибудь догадается о Вашем коде.
 
Выложить код, может кто и глянет. Или не выкладывать - может кто-нибудь догадается о Вашем коде.


Приведу процедуру которая удаляет такие ордера. Весь код выкладывать ... его больше 30Кб :)

//+------------------------------------------------------------------+
//| Delete Stop Orders                                               |
//+------------------------------------------------------------------+
bool DeleteAllStops(int type=-1, int nMagic = 0, string sym=""){
   int    total;
   bool   result;
   double price;
   int    cmd,error;
   //----
   total=OrdersTotal();
   if (total==0) return(true);
   if (sym == "") sym = Symbol();
   for(int i=total-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      {
         cmd=OrderType();
         if((cmd==type || (type == -1 && cmd >1) ) && sym == OrderSymbol() && OrderMagicNumber() == nMagic)
           {
            //---- print selected order
            Print("Delete Order ");OrderPrint();
            //---- delete order
            while(true)
            {
               result=OrderDelete(OrderTicket());
               if(result!=TRUE) { error=GetLastError(); Print("LastError = ",error); }
               else error=0;
               if(error==135) RefreshRates();
               else if (error==6) Sleep(500);
               else break;
            }
            //----
          }
        }
        else {
         Print( "DeleteAllStops::Error when order select ", GetLastError());
         Print("i=",i," total=",total);
       }
      }
   //----
   return(true);

}
 
очень непонятная ситуация. пришлите пожалуйста весь код эксперта на stringo at metaquotes dot ru
пожалуйста, сообщите параметры тестирования.
конфиденциальность гарантирую.
 
получил. прогнал на тестере. ни одной ошибки.
сообщите более подробную информацию:
1. с какого сервера взята история
2. размер истории
3. номер и дата билда
4. было ли в тот момент подключение, если да, то к какому серверу
5. модель тестирования (я понял, что every tick)
6. ограничивающие даты тестирования
 
1. с какого сервера взята история


с сервера alpari

2. размер истории


вся имеющаяся там с 06.2004

3. номер и дата билда


186 от 10.11.2005

4. было ли в тот момент подключение, если да, то к какому серверу


да. к серверу utgfx.com 217.74.34.253

5. модель тестирования (я понял, что every tick)


правильно поняли

6. ограничивающие даты тестирования


не зависит от того есть ли ограничение по датам или нет, также не зависит от того, тестируется ли на истории загруженой с сервера альпари или на небольшой доступной истории, что скачивает сам терминал с текущего сервера
 
скачайте с нашего сайта билд 186 от 17 ноября и попробуйте потестировать снова, пожалуйста.
 
скачайте с нашего сайта билд 186 от 17 ноября и попробуйте потестировать снова, пожалуйста.


скачал .. проверил ... все работает! ошибка исчезла !