FORTS. Yürütme soruları - sayfa 99

 
Dennis Kirichenko :

Birçoğu yine bende kusur bulacak, ama ben fikrimde kalıyorum. Evet yukarıda duygusal konuştum, kırdıysam özür dilerim...

uzaktan geleceğim.

Açılmadan önce bir Sovyet mağazası hayal edin, sabah 9:00'da olsun. Bir sürü insan var, kıtlığa hasret, girişin önüne itiyor. Tam 9:00'da mağazanın kapısını içeriden açan herhangi bir yükleyici, gelen kalabalık tarafından ezilme riskiyle karşı karşıyadır. Kalabalık nihayet mağazaya girer ve ilk dakikalarda mağaza kaotik değilse de hareketlidir. Gürültü, azarlama. Bazı haydutların alıcıların ön saflarında olduğu görülür. Burada kalabalık kendini daha da kışkırtır ve gürültü yapar...

Böyle. Şimdi tüccar monitörün önünde oturuyor, herhangi bir kalabalık görmüyor, "dükkan" açılmadan önce her şey sessiz. Yaygara ve kaos hissi, bir Sovyet alıcısı olarak onu rahatsız etmiyor. Ancak bu, değişim sistemi başladığında durumu iptal etmiyor ve başvurularda bir artış var. Dar boyun ilkesi ortadan kalkmaz ve yürürlükte kalır.

Soru. Brokerin müşterilerini rastgele mi yoksa bir algoritmaya göre mi mağazaya soktuğunu düşünüyorsunuz? Bana öyle geliyor ki, büyük alıcılara öncelik veriliyor. Onlarla, komisyoncu ödül olarak daha fazlasını alacaktır. Peki, komisyoncunun itibarı sorunu. Büyük bir alıcının memnuniyetsizliği, küçük bir alıcının memnuniyetsizliğinden daha tehlikelidir. Onlar. Büyük müşterilerden gelen siparişlerin açılışta daha hızlı karşılandığını varsayıyorum.

Soru. Komisyoncunun "mağazanın" küçük alıcısının acı çektiğini anlamadığını mı düşünüyorsunuz? Bence anlar. Toplu olarak "orada" aptal olmadığını öğrendik. O zaman komisyoncu ne yapmalı? Muhtemelen bir şekilde küçük bir alıcının memnuniyetsizliğini en aza indirir. Tam olarak nasıl? Başvuruyu iptal edemezsiniz, o zaman küçük şey şöyle diyecektir: “Çok saygın, küçük de olsa bir tüccar, komisyoncudan kapıdan nasıl bir dönüş aldım?” Muhtemelen, hırsızlar stoklanana kadar küçük şeylerin uygulamalarını başvuru kuyruğunda tutabilirsiniz ... Peki ya da ana uygulamaları kabul edin - satın alın veya satın alın ve değişikliği tutun ...

Şimdi borsada bu tür birçok broker olduğunu hayal edin: seansın başında bir Sovyet mağazasında olduğundan daha fazla yaygara var.

Düşünceler bunlar.  

PS Metnimdeki tüm eşleşmeler rastgele ve açıklayıcıdır.

FORTS ağ geçidinin nasıl çalıştığını bilmediğiniz gerçeğinden çok fazla "su" var.

Giriş kısıtlamaları var, yani saniyede sadece 30 işlem gönderebiliyorum.

Daha önce Tearaway'in 3 MT5 sunucusu vardı ve şimdi 8'i var ve gecikmeler azalmadı,

ama muazzam bir şekilde arttılar, ancak FORTS'ta başka MT5 kullanıcısı yoktu!

 
fxsaber :

Bu, olayın yaşanmadığının kanıtı olacaktır.

Olmayacak!

Kullanıcının yaptığı her şey kanıt değildir, yalnızca terminal günlükleri kanıt olacaktır!

 
prostotrader :

Olmayacak!

Kullanıcının yaptığı her şey kanıt değildir, yalnızca terminal günlükleri kanıt olacaktır!

Ancak OnTradeTransaction() içindeki tüm olayların kullanıcı tarafından günlüğe kaydedilmesi, nedenlerin anlaşılmasına yardımcı olacaktır.

 
Vladimir Karputov :

Ancak OnTradeTransaction() içindeki tüm olayların kullanıcı tarafından günlüğe kaydedilmesi, nedenlerin anlaşılmasına yardımcı olacaktır.

Güzel...

Günde 4000 işlemim var, her işlem en az 5-6 kez OnTradeTransaction "çekiyor"

Bu "ayak bezleri"ni kim anlayacak :) Sonuçta, günlüklere ve bir terminale ve ayrıca MT5 Sunucusunun günlüklerine ihtiyaçları var.

Katma

Yeni yapının yayınlanmasına kadar her şey yolunda gitti.

Evet ve şimdi çalışıyor, ancak bazen Aracı Sunucularında hatalar olabiliyor.

Katma

Bir sipariş verirken, değiştirirken ve silerken ona bir durum ( state ) atar ve kurulum zamanını not ederim.

 //+------------------------------------------------------------------+
//| Place order                                                      |
//+------------------------------------------------------------------+
void COrder::Place( const double price, const double volume, const bool buy_sell)
{
   MqlTradeRequest request = { 0 };
   MqlTradeResult   result  = { 0 };
  ticket = 0 ;
  req_id = 0 ;
  mem_magic = magic_storage + 1 ;
  check_count = 0 ;
   if (magic_storage >= (magic_number + 65530 )) mem_magic = magic_number;
//--- Fill structure
  request.action = TRADE_ACTION_PENDING ;
  request.magic  = mem_magic;
  request.symbol = a_symbol;
  request.volume = volume;
  request.price  = price;
   if (buy_sell)
  {
    request.type = ORDER_TYPE_BUY_LIMIT ;
  }
   else
  {
    request.type = ORDER_TYPE_SELL_LIMIT ;
  } 
  request.comment = "Отложенный ордер..." ;      
  request.type_filling = ORDER_FILLING_RETURN ;
  request.type_time = ORDER_TIME_DAY ;
//--- Send order
   if ( OrderSendAsync (request, result))
  {
     if ((result.retcode == TRADE_RETCODE_PLACED ) || (result.retcode == TRADE_RETCODE_DONE )) 
    {
      req_id = result.request_id;
      magic_storage = mem_magic;
      state = ORD_DO_SET;
      mem_time = GetMicrosecondCount ();
      mem_start_time = TimeCurrent ();
      SetTransCount();
    }
     else
    {
      mem_magic = 0 ;
      mem_time = 0 ;
      mem_start_time = 0 ;
      CheckError(result.retcode, "Place: Ордер не установлен! Причина: " , order_status, ticket);
    }
  }
   else
  {
    mem_magic = 0 ;
    mem_time = 0 ;
    mem_start_time = 0 ;
    CheckError(result.retcode, "Place: Ордер не отослан! Причина: " , order_status, ticket);
  }
}

Burada

 if ((result.retcode == TRADE_RETCODE_PLACED ) || (result.retcode == TRADE_RETCODE_DONE )) 
    {
      req_id = result.request_id;
      magic_storage = mem_magic;
      state = ORD_DO_SET;
      mem_time = GetMicrosecondCount ();
      mem_start_time = TimeCurrent ();
      SetTransCount();
    }

Ve OntradeTransaction'da bu bayrak ( ORD_DO_SET ) sıfırlanır

Zamanlayıcı (1 saniye), OnTradeTransaction'a hiçbir şey ulaşmadıysa, bu siparişin durumunu kontrol eder.

Ve yeni bir zaman algılar, günlüğe kaydeder

 2018.02 . 28 10 : 54 : 40.162 trader (ALRS- 3.18 ,M1)   ProcessOrders: Билет sell ордера = 84718482 Cост. ордера = ORD_DO_SET

Günlüğü görüntülemeden önce, bu fonksiyon siparişe ne olduğunu kontrol eder.

 //+------------------------------------------------------------------+
// Expert Order Real Select function                                 |
//+------------------------------------------------------------------+
ENUM_ORD_SELECT OrderRealSelect( const ulong ticket, ORDER_DATA &ord_data, const bool get_data)
{
   double init_vol = 0 ;
   double cur_vol = 0 ;
   ZeroMemory (ord_data);
  ord_data.real_state = ORDER_NOT_SPECIFIED;
  ord_data.error_code = ERR_SUCCESS ;
   ResetLastError ();
   if (ticket > 0 )
  {
     if ( HistoryOrderSelect (ticket))
    {
       if (get_data)
      {
        ord_data.comment = HistoryOrderGetString (ticket, ORDER_COMMENT );
        ord_data.expiration = datetime ( HistoryOrderGetInteger (ticket, ORDER_TIME_EXPIRATION )); 
        ord_data.magic = HistoryOrderGetInteger (ticket, ORDER_MAGIC );
        ord_data.pos_id = HistoryOrderGetInteger (ticket, ORDER_POSITION_ID );
        ord_data.price_cur = HistoryOrderGetDouble (ticket, ORDER_PRICE_CURRENT );
        ord_data.price_open = HistoryOrderGetDouble (ticket, ORDER_PRICE_OPEN );
        ord_data.price_stlim = HistoryOrderGetDouble (ticket, ORDER_PRICE_STOPLIMIT );
        ord_data.sl = HistoryOrderGetDouble (ticket, ORDER_SL );
        ord_data.state = ENUM_ORDER_STATE ( HistoryOrderGetInteger (ticket, ORDER_STATE ));
        ord_data.symbol = HistoryOrderGetString (ticket, ORDER_SYMBOL );
        ord_data.t_done_msc = datetime ( HistoryOrderGetInteger (ticket, ORDER_TIME_DONE_MSC ));
        ord_data.t_set_msc = datetime ( HistoryOrderGetInteger (ticket, ORDER_TIME_SETUP_MSC ));
        ord_data.time_done = datetime ( HistoryOrderGetInteger (ticket, ORDER_TIME_DONE ));
        ord_data.time_setup = datetime ( HistoryOrderGetInteger (ticket, ORDER_TIME_SETUP ));
        ord_data.tp = HistoryOrderGetDouble (ticket, ORDER_TP );
        ord_data.type = ENUM_ORDER_TYPE ( HistoryOrderGetInteger (ticket, ORDER_TYPE ));
        ord_data.type_filling = ENUM_ORDER_TYPE_FILLING ( HistoryOrderGetInteger (ticket, ORDER_TYPE_FILLING ));
        ord_data.type_time = ENUM_ORDER_TYPE_TIME ( HistoryOrderGetInteger (ticket, ORDER_TYPE_TIME ));
        ord_data.vol_cur = HistoryOrderGetDouble (ticket, ORDER_VOLUME_CURRENT );
        ord_data.vol_init = HistoryOrderGetDouble (ticket, ORDER_VOLUME_INITIAL );
        ord_data.ext_id = HistoryOrderGetString (ticket, ORDER_EXTERNAL_ID );
        ord_data.reason = ENUM_ORDER_REASON ( HistoryOrderGetInteger (ticket, ORDER_REASON ));
      }
       else
      {
        ord_data.state = ENUM_ORDER_STATE ( HistoryOrderGetInteger (ticket, ORDER_STATE ));
        cur_vol = HistoryOrderGetDouble (ticket, ORDER_VOLUME_CURRENT );
        init_vol = HistoryOrderGetDouble (ticket, ORDER_VOLUME_INITIAL );
      }   
//---
       switch (ord_data.state)
      { 
         case ORDER_STATE_CANCELED :
           if (get_data)
          {
             if (ord_data.vol_init == ord_data.vol_cur)
            {
              ord_data.real_state = ORDER_NONE_CANCELED;
            }
             else
            {
              ord_data.real_state = ORDER_NONE_PARTIAL_CANCELED;
            }
          }
           else
          {
             if (init_vol == cur_vol)
            {
              ord_data.real_state = ORDER_NONE_CANCELED;
            }
             else
            {
              ord_data.real_state = ORDER_NONE_PARTIAL_CANCELED;
            }
          }    
         break ;
         
         case ORDER_STATE_PARTIAL :
          ord_data.real_state = ORDER_NONE_PARTIAL;
         break ;
                                         
         case ORDER_STATE_EXPIRED :
          ord_data.real_state = ORDER_NONE_EXPIRED;
         break ;
                                                                              
         case ORDER_STATE_FILLED :
          ord_data.real_state = ORDER_NONE_FILLED;
         break ;
                                         
         case ORDER_STATE_REJECTED :
          ord_data.real_state = ORDER_NONE_REJECTED;
         break ;  
      }
    }
     else
     if ( OrderSelect (ticket))
    {
       if (get_data)
      {
        ord_data.comment = OrderGetString ( ORDER_COMMENT );
        ord_data.expiration = datetime ( OrderGetInteger ( ORDER_TIME_EXPIRATION )); 
        ord_data.magic = OrderGetInteger ( ORDER_MAGIC );
        ord_data.pos_id = OrderGetInteger ( ORDER_POSITION_ID );
        ord_data.price_cur = OrderGetDouble ( ORDER_PRICE_CURRENT );
        ord_data.price_open = OrderGetDouble ( ORDER_PRICE_OPEN );
        ord_data.price_stlim = OrderGetDouble ( ORDER_PRICE_STOPLIMIT );
        ord_data.sl = OrderGetDouble ( ORDER_SL );
        ord_data.state = ENUM_ORDER_STATE ( OrderGetInteger ( ORDER_STATE ));
        ord_data.symbol = OrderGetString ( ORDER_SYMBOL );
        ord_data.t_done_msc = datetime ( OrderGetInteger ( ORDER_TIME_DONE_MSC ));
        ord_data.t_set_msc = datetime ( OrderGetInteger ( ORDER_TIME_SETUP_MSC ));
        ord_data.time_done = datetime ( OrderGetInteger ( ORDER_TIME_DONE ));
        ord_data.time_setup = datetime ( OrderGetInteger ( ORDER_TIME_SETUP ));
        ord_data.tp = OrderGetDouble ( ORDER_TP );
        ord_data.type = ENUM_ORDER_TYPE ( OrderGetInteger ( ORDER_TYPE ));
        ord_data.type_filling = ENUM_ORDER_TYPE_FILLING ( OrderGetInteger ( ORDER_TYPE_FILLING ));
        ord_data.type_time = ENUM_ORDER_TYPE_TIME ( OrderGetInteger ( ORDER_TYPE_TIME ));
        ord_data.vol_cur = OrderGetDouble ( ORDER_VOLUME_CURRENT );
        ord_data.vol_init = OrderGetDouble ( ORDER_VOLUME_INITIAL );
        ord_data.ext_id = OrderGetString ( ORDER_EXTERNAL_ID );
        ord_data.reason = ENUM_ORDER_REASON ( OrderGetInteger ( ORDER_REASON ));
      }
       else ord_data.state = ENUM_ORDER_STATE ( OrderGetInteger ( ORDER_STATE ));
       switch (ord_data.state)
      { 
         case ORDER_STATE_STARTED :
         case ORDER_STATE_REQUEST_ADD :
         case ORDER_STATE_REQUEST_MODIFY :
         case ORDER_STATE_REQUEST_CANCEL :
          ord_data.real_state = ORDER_BUSY;
         break ; 
         case ORDER_STATE_PARTIAL :
          ord_data.real_state = ORDER_EXIST_PARTIAL;
         break ;
         case ORDER_STATE_PLACED :
          ord_data.real_state = ORDER_EXIST;
         break ;
      }
    }
     else ord_data.error_code = GetLastError ();
     if ((ord_data.error_code != ERR_SUCCESS ) ||
       (ord_data.real_state == ORDER_NOT_SPECIFIED))
    {
       return (SELECT_ERROR);
    }
     else
    {
       switch (ord_data.real_state)
      {
         case ORDER_BUSY:
           return (SELECT_BUSY);
         break ;
         case ORDER_EXIST:   
         case ORDER_EXIST_PARTIAL:
           return (SELECT_TRUE);
         break ;
         default :   
           return (SELECT_FALSE);
         break ;                                             
      }
    }
  } 
   else
  {
    ord_data.error_code = ERR_ZERO_TICKET; 
     return (SELECT_ERROR);
  }
}

Katma

 #define ERR_ZERO_TICKET - 111
   
//
enum ENUM_ORD_STATE
{
  ORD_NO_STATE   = 0 ,
  ORD_DO_SET     = 1 ,
  ORD_DO_MODIFY  = 2 ,
  ORD_WORK       = 3 ,
  ORD_DO_CANCEL  = 4
};
enum ENUM_ORD_REAL_STATE
{
  ORDER_NOT_SPECIFIED         = 0 , //Состояние ордера не определено
  ORDER_NONE_CANCELED         = 1 , //Ордера нет, отменён пользователем
  ORDER_NONE_PARTIAL_CANCELED = 2 , //Ордера нет, исполнился частично (не был залит вторым объёмом)
  ORDER_NONE_PARTIAL          = 3 , //Ордера нет, исполнился частично
  ORDER_NONE_EXPIRED          = 4 , //Ордера нет, удалён по сроку
  ORDER_NONE_FILLED           = 5 , //Ордера нет, исполнился полностью
  ORDER_NONE_REJECTED         = 6 , //Ордера нет, отклонён брокером(биржей)
  ORDER_BUSY                  = 7 , //Ордер находится в переходном состоянии
  ORDER_EXIST                 = 8 , //Ордер выставлен на биржу, возможны действия над ним
  ORDER_EXIST_PARTIAL         = 9    //Ордер выставлен на биржу, частично исполнился, возможны действия над ним
};
//---
enum ENUM_ORD_SELECT
{
  SELECT_ERROR = 0 ,
  SELECT_FALSE = 1 ,
  SELECT_TRUE  = 2 ,
  SELECT_BUSY  = 3
};
//---
struct ORDER_DATA
{
   int                      error_code;
   ulong                    ticket;
   datetime                 time_setup;
   ENUM_ORDER_TYPE          type;
   ENUM_ORDER_STATE         state;
  ENUM_ORD_REAL_STATE     real_state;
   datetime                 expiration;
   datetime                 time_done;
   long                     t_set_msc;
   long                     t_done_msc; 
   ENUM_ORDER_TYPE_FILLING type_filling;
   ENUM_ORDER_TYPE_TIME     type_time;
   long                     magic;
   ENUM_ORDER_REASON        reason;
   long                     pos_id;
   long                     pos_by_id;
   double                   vol_init;
   double                   vol_cur;
   double                   price_open;
   double                   sl;
   double                   tp;
   double                   price_cur;
   double                   price_stlim;
   string                   symbol;
   string                   comment;
   string                   ext_id;       
};
 
prostotrader :

Gerçek şu ki, geçen yıl, OnTradeTransaction GARANTİLİ oldu! :)

tabiri caizse. terminale bir olay gelirse, olay kuyruğunda OnTradeTransaction olarak yer alması garanti edilir. bu, EA tarafından işlenmesinin garanti edildiği anlamına gelmez.

soru bununla ilgili:

İşlem kuyruğunun uzunluğu 1024 elemandır. OnTradeTransaction() sonraki işlemi işlemek için çok uzun sürerse, kuyruktaki eski işlemler yenileri tarafından zorlanabilir.

ve sırayla danışmanın kendisinin olayları. kaç tane olabilir ve bir yer değiştirme olup olmadığı. (alıntı danışmanlarla ilgili değilse)

 
Комбинатор :

tabiri caizse. terminale bir olay gelirse, olay kuyruğunda OnTradeTransaction olarak yer alması garanti edilir. bu, EA tarafından işlenmesinin garanti edildiği anlamına gelmez.

soru bununla ilgili:

ve sırayla danışmanın kendisinin olayları. kaç tane olabilir ve bir yer değiştirme olup olmadığı. (alıntı danışmanlarla ilgili değilse)

Sizce uzun mu?

 case TRADE_TRANSACTION_ORDER_UPDATE :
       switch (trans.order_state)
      {
         case ORDER_STATE_PLACED :
           if ((BuyOrder.ticket > 0 ) && (trans.order == BuyOrder.ticket))
          {
             switch (BuyOrder.state)
            {
               case ORD_DO_SET:
                BuyOrder.ses_ord_count++;
                BuyOrder.CalcZalog();
                BuyOrder.state = ORD_WORK;
                BuyOrder.mem_time = GetMicrosecondCount ();
                 if (stop_trading)
                {
                   if (OrderRealSelect(BuyOrder.ticket, order_data, false ) == SELECT_TRUE)
                  {
                    BuyOrder.Remove();
                  }  
                }  
               break ; 
               case ORD_DO_MODIFY:
                BuyOrder.modify_price = 0 ;
                BuyOrder.modify_count++;
                BuyOrder.state = ORD_WORK;
                BuyOrder.mem_time = GetMicrosecondCount ();
               break ;
            }
          }
           else
           if ((SellOrder.ticket > 0 ) && (trans.order == SellOrder.ticket))
          {
             switch (SellOrder.state)
            {
               case ORD_DO_SET:
                SellOrder.ses_ord_count++;   
                SellOrder.CalcZalog();
                SellOrder.state = ORD_WORK;
                SellOrder.mem_time = GetMicrosecondCount ();
                 if (stop_trading)
                {
                   if (OrderRealSelect(SellOrder.ticket, order_data, false ) == SELECT_TRUE)
                  {
                    SellOrder.Remove();
                  }  
                }
               break ; 
               case ORD_DO_MODIFY:
                SellOrder.modify_price = 0 ;
                SellOrder.modify_count++;
                SellOrder.state = ORD_WORK;
                SellOrder.mem_time = GetMicrosecondCount ();
               break ;        
            }
          }
         break ;
         case ORDER_STATE_PARTIAL :
           if ((BuyOrder.ticket > 0 ) && (trans.order == BuyOrder.ticket))  
          {
             switch (BuyOrder.state)
            {
               case ORD_DO_MODIFY:
                BuyOrder.modify_price = 0 ;
                BuyOrder.modify_count++;
                BuyOrder.state = ORD_WORK;
                BuyOrder.mem_time = GetMicrosecondCount ();
               break ;
            }
          }
           else
           if ((SellOrder.ticket > 0 ) && (trans.order == SellOrder.ticket))
          {
             switch (SellOrder.state)
            {
               case ORD_DO_MODIFY:
                SellOrder.modify_price = 0 ;
                SellOrder.modify_count++;
                SellOrder.state = ORD_WORK;
                SellOrder.mem_time = GetMicrosecondCount ();
               break ;        
            }
          } 
         break ;                         
      } 
      EndView();
     break ;
 
prostotrader :

Sizce uzun mu?

EA'nın olay kuyruğunda (bir zamanlayıcı gibi) yalnızca bir OnTradeTransaction olayı varsa, kodunuzun hızı önemsizdir.

değilse, siparişlerle eşzamanlı mı yoksa eşzamansız olarak mı çalıştığınıza bağlı olarak.
 
Комбинатор :

EA'nın olay kuyruğunda yalnızca bir OnTradeTransaction olayı varsa (bir zamanlayıcı gibi), kodunuzun hızı önemli değildir.

değilse, siparişlerle eşzamanlı mı yoksa eşzamansız olarak mı çalıştığınıza bağlı olarak.

Eşzamansız olarak, ancak aynı anda 30'dan fazla olamaz

Bu arada, işte bir tane daha (ve her nedense 10-10'dan 14-00'e kadar her şey yolunda gitti)

2018.02.28 14:07:59.505 Trades  'xxxxx': cancel order #84736275 buy limit 3.00 LKOH-9.18 at 37312
2018.02.28 14:08:09.071 Trades  'xxxxx': accepted cancel order #84736275 buy limit 3.00 LKOH-9.18 at 37312
2018.02.28 14:08:09.107 Trades  'xxxxx': cancel #84736275 buy limit 3.00 LKOH-9.18 at market done in 9602.694 ms

2018.02.28 14:00:32.653 trader (FEES-3.18,M1)   CheckTradingTime: Сейчас 2018.02.28 14:00, если есть необходимость, можно закрыть терминал.
2018.02.28 14:08:00.522 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:01.543 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:02.553 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:03.565 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:04.593 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:05.625 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:06.654 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:07.667 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL
2018.02.28 14:08:08.680 trader (LKOH-6.18,M1)   ProcessOrders: Билет buy ордера = 84736275 Cост. ордера = ORD_DO_CANCEL

Ama burada sunucu yanıtını bekledik :)

 

Ama en son buraya yazdığımda sana garip gelmiyor mu?

prostotrader 2017.04 . 17 19 : 10 # 932    EN
Билд 1571 , реал, Открывашка

Непонятные задержки продолжаются (execution in 2106.116 ms) ...

Nisan 2017, yeni yapı 1571 çıktı

Ve şimdi 1755, ancak o zaman 2 saniyeydi ve şimdi...

O zaman neden 9 ay boyunca bu kadar sessiz kaldım (ve danışmanlara bile dokunmadım)!

Katma

FORTS'daki enstrüman sayısı değişmedi, Opener 5 yeni MT5 sunucusu ekledi,

ticaret hacimleri azaldı, ancak sorun sadece devam etmekle kalmadı, aynı zamanda "büyüdü".

 

Ve terminalin kendisi saniyede 60'tan fazla sipariş göndermeyecek

 2018.02 . 28 15 : 30 : 15.089 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 60 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 61 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 62 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 63 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 64 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 65 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 66 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 67 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 68 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 69 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 70 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 71 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 72 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 73 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 74 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 75 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 76 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 77 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 78 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 79 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 80 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 81 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 82 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 83 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 84 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 85 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 86 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 87 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 88 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 89 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 90 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 91 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 92 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 93 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 94 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 95 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 96 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 97 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 98 Причина: 10024
2018.02 . 28 15 : 30 : 15.090 DelayTest (RTS- 3.18 ,M1) PlaceOrder: Ордер не отправлен! Порядковый номер: 99 Причина: 10024
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495897
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495898
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495899
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495900
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495901
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495902
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495903
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495904
2018.02 . 28 15 : 30 : 15.111 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495905
2018.02 . 28 15 : 30 : 15.113 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495906
2018.02 . 28 15 : 30 : 15.113 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495907
2018.02 . 28 15 : 30 : 15.113 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495908
2018.02 . 28 15 : 30 : 15.114 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495909
2018.02 . 28 15 : 30 : 15.114 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495910
2018.02 . 28 15 : 30 : 15.114 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495911
2018.02 . 28 15 : 30 : 15.114 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495912
2018.02 . 28 15 : 30 : 15.120 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495913
2018.02 . 28 15 : 30 : 15.120 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495914
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495915
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495916
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495917
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495918
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495919
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495920
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495921
2018.02 . 28 15 : 30 : 15.121 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495922
2018.02 . 28 15 : 30 : 15.126 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495923
2018.02 . 28 15 : 30 : 15.126 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495924
2018.02 . 28 15 : 30 : 15.126 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495925
2018.02 . 28 15 : 30 : 15.126 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495926
2018.02 . 28 15 : 30 : 15.126 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495927
2018.02 . 28 15 : 30 : 15.127 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495928
2018.02 . 28 15 : 30 : 15.127 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495929
2018.02 . 28 15 : 30 : 15.127 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495930
2018.02 . 28 15 : 30 : 15.127 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495931
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495932
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495933
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495934
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495935
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495936
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495937
2018.02 . 28 15 : 30 : 15.133 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер установлен. Билет = 73495938
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495897
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495898
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495899
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495900
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495902
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495903
2018.02 . 28 15 : 30 : 15.144 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495901
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495904
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495905
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495906
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495907
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495908
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495909
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495910
2018.02 . 28 15 : 30 : 15.146 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495911
2018.02 . 28 15 : 30 : 15.147 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495912
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495913
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495914
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495915
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495916
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495917
2018.02 . 28 15 : 30 : 15.151 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495918
2018.02 . 28 15 : 30 : 15.153 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495919
2018.02 . 28 15 : 30 : 15.153 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495920
2018.02 . 28 15 : 30 : 15.153 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495921
2018.02 . 28 15 : 30 : 15.153 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495922
2018.02 . 28 15 : 30 : 15.159 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495923
2018.02 . 28 15 : 30 : 15.159 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495924
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495925
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495926
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495927
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495928
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495929
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495930
2018.02 . 28 15 : 30 : 15.160 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495931
2018.02 . 28 15 : 30 : 15.162 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495932
2018.02 . 28 15 : 30 : 15.164 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495933
2018.02 . 28 15 : 30 : 15.164 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495934
2018.02 . 28 15 : 30 : 15.164 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495935
2018.02 . 28 15 : 30 : 15.164 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495936
2018.02 . 28 15 : 30 : 15.167 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495937
2018.02 . 28 15 : 30 : 15.167 DelayTest (RTS- 3.18 ,M1) OnTradeTransaction : Ордер удалён. Билет = 73495938

Neden: