MT5 ve iş başında hız - sayfa 24

 
Artyom Trishkin :

Büyük olasılıkla - bir sonraki sürüm sürümünün yayınlanmasından sonra (şimdi beta)

teşekkürler
 
Artyom Trishkin :

Büyük olasılıkla - bir sonraki sürüm sürümünün yayınlanmasından sonra (şimdi beta)

Ve işlem dizisi olmayacak mı?

 

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

MT5 ve iş başında hız

fxsaber , 2020.08.13 04:36

  1. Nispeten geniş bir ticaret geçmişine sahip bir MetaQuotes-Demo demo hesabına giriş yapın.
    1. Demo hesabının küçük bir ticaret geçmişi varsa, otomatik ticareti etkinleştirin ve OrderSend-Test2.ex5 komut dosyasını paralel olarak çalıştırın (uygulamada, kaynak ).

Bu eski komut dosyası, bir MQ-Demo grafiğinde çalıştırırsanız ve Piyasa İzleme'ye daha fazla ticaret sembolü eklerseniz (100'üm vardı) birçok fren gösterecektir.

Terminal günlüğü.

2020.09.04 17:51:33.112 Trades  '34510052': cancel order #702851395 buy stop 0.01 EURCAD at 1.55852
2020.09.04 17:51:33.512 Trades  '34510052': accepted cancel order #702851395 buy stop 0.01 EURCAD at 1.55852
2020.09.04 17:51:33.514 Trades  '34510052': cancel #702851395 buy stop 0.01 EURCAD at market done in 401.845 ms

Depozito 401 ms'de kaldırıldı. Geliştiriciler, ticaret sunucusu günlüklerine erişebilir ve yürütmenin orada ne kadar sürdüğünü görebilir. Örneğin .

Herkes çoğalabilir.


Her ihtimale karşı, sonuçla birlikte ticaret emri böyle görünüyor.

 2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Alert : EURCAD 702851395 Request executed 401.915 + 0.003 ( 0 ) ms.
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.action = TRADE_ACTION_REMOVE ( 8 )
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.magic = 0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.order = 702851395
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.symbol = EURCAD
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.volume = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.price = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.stoplimit = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.sl = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.tp = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.deviation = 0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.type = ORDER_TYPE_BUY ( 0 )
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.type_filling = ORDER_FILLING_FOK ( 0 )
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.type_time = ORDER_TIME_GTC ( 0 )
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.expiration = 1970.01 . 01 00 : 00 : 00
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.comment = 
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.position = 0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Request.position_by = 0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.retcode = 10009
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.deal = 0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.order = 702851395
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.volume = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.price = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.bid = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.ask = 0.0
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.comment = Request executed 401.915 + 0.003 ( 0 ) ms.
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.request_id = 6133
2020.09 . 04 17 : 51 : 33.514 OrderSend -Test2 (EURUSD,M1)     Result.retcode_external = 0


Ping.

 2020.09 . 04 17 : 51 : 57.567 AccountInfoString ( ACCOUNT_SERVER ) = MetaQuotes-Demo
2020.09 . 04 17 : 51 : 57.567 TerminalInfoInteger ( TERMINAL_PING_LAST ) = 74808


Senaryo yaklaşık 10 dakika çalıştı.


Bu frenler beni rahatsız etmiyor. Sadece durumu iyileştirmek için nerede ve nelerin ayarlanabileceğini bilmek istiyorum. Terminal mi yoksa ticaret sunucusu mu? Genel olarak geliştiriciler, çoğaltmak ve isterlerse anlamak için tüm olanaklara sahiptir.

Особенности исполнения торговых приказов MT5
Особенности исполнения торговых приказов MT5
  • 2020.02.06
  • www.mql5.com
Анализировал с владельцем MT5-сервера тормоза торговых приказов. Запускался OrderSend-Test2.mq5 в том же месте, где MT5-сервер стоит. Т.е. нулевой пинг. Демо, все внутри. Изучались логи MT5-сервера (2170) и MT5-клиента (2280). Логи сервера не буду приводить, просто словами опишу. Думаю, результаты буду интерсны всем, т.к. это поможет раскрыть...
 
fxsaber :

Bu eski komut dosyası, bir MQ-Demo grafiğinde çalıştırırsanız ve Piyasa İzleme'ye daha fazla ticaret sembolü eklerseniz (100'üm vardı) birçok fren gösterecektir.

böyle bir durum hatırlıyorum

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

MetaTrader 5 platformunun yeni versiyonu 1880 yapımı: Sentetik enstrümanların tam geçmişinin hesaplanması

A100 , 2018.07.25 21:55

Yük her durumda dikkate alınmalıdır:

Yavaş bir bilgisayarım var... ve çok yavaş bir bilgisayarım var... ve bu yüzden... Piyasa İzleme'ye çok yavaş bir şekilde 63 sembol eklerseniz ve bundan sonra F10'a basarsanız, MetaTrader tamamen donar (yeniden başlatma gerekli)... Diğer tüm modlar sırasında gayet iyi çalışmasına rağmen.

ancak bundan sonra en az bir yıl boyunca asılı kaldı - hala 32 bit sürümde olmasına rağmen

 
A100 :

böyle bir durum hatırlıyorum

Piyasa İzleme'deki karakter sayısı, frenlerin çoğaltılması için temel bir öneme sahip değildir. Ben sadece kendim yaptım.

Kolayca oynar.
 2020.09 . 04 18 : 25 : 06.131 Trades   '34510052' : buy limit 0.01 USDPLN at 3.77653
2020.09 . 04 18 : 25 : 06.202 Trades   '34510052' : accepted buy limit 0.01 USDPLN at 3.77653
2020.09 . 04 18 : 25 : 06.202 Trades   '34510052' : order # 702911224 buy limit 0.01 / 0.01 USDPLN at 3.77653 done in 70.966 ms
2020.09 . 04 18 : 25 : 06.202 Trades   '34510052' : cancel order # 702911224 buy limit 0.01 USDPLN at 3.77653
2020.09 . 04 18 : 25 : 06.274 Trades   '34510052' : accepted cancel order # 702911224 buy limit 0.01 USDPLN at 3.77653
2020.09 . 04 18 : 25 : 06.274 Trades   '34510052' : cancel # 702911224 buy limit 0.01 USDPLN at market done in 71.859 ms
2020.09 . 04 18 : 25 : 06.274 Trades   '34510052' : buy stop 0.01 USDPLN at 3.79653
2020.09 . 04 18 : 25 : 06.481 Trades   '34510052' : instant sell 0.1 NZDSGD at 0.91421 , close # 702903930 buy 0.1 NZDSGD 0.91462
2020.09 . 04 18 : 25 : 06.982 Trades   '34510052' : accepted buy stop 0.01 USDPLN at 3.79653
2020.09 . 04 18 : 25 : 07.030 Trades   '34510052' : order # 702911229 buy stop 0.01 / 0.01 USDPLN at 3.79653 done in 755.302 ms
2020.09 . 04 18 : 25 : 07.030 Trades   '34510052' : accepted instant sell 0.1 NZDSGD at 0.91421 , close # 702903930 buy 0.1 NZDSGD 0.91462
2020.09 . 04 18 : 25 : 07.030 Trades   '34510052' : deal # 681898561 sell 0.1 NZDSGD at 0.91421 done (based on order # 702911234 )
2020.09 . 04 18 : 25 : 07.031 Trades   '34510052' : cancel order # 702911229 buy stop 0.01 USDPLN at 3.79653
2020.09 . 04 18 : 25 : 07.031 Trades   '34510052' : order # 702911234 sell 0.1 / 0.1 NZDSGD at 0.91421 done in 550.273 ms
2020.09 . 04 18 : 25 : 07.103 Trades   '34510052' : accepted cancel order # 702911229 buy stop 0.01 USDPLN at 3.79653
2020.09 . 04 18 : 25 : 07.103 Trades   '34510052' : cancel # 702911229 buy stop 0.01 USDPLN at market done in 72.558 ms
2020.09 . 04 18 : 25 : 07.103 Trades   '34510052' : instant buy 0.01 USDHUF at 297.871 (deviation: 100 )
2020.09 . 04 18 : 25 : 07.130 Trades   '34510052' : instant sell 0.01 GBPCAD at 1.73255 , close # 702904086 buy 0.01 GBPCAD 1.73271
2020.09 . 04 18 : 25 : 07.174 Trades   '34510052' : accepted instant buy 0.01 USDHUF at 297.871 (deviation: 100 )
2020.09 . 04 18 : 25 : 07.174 Trades   '34510052' : deal # 681898572 buy 0.01 USDHUF at 297.871 done (based on order # 702911246 )
2020.09 . 04 18 : 25 : 07.175 Trades   '34510052' : order # 702911246 buy 0.01 / 0.01 USDHUF at 297.871 done in 72.051 ms
Yerel saatin iki kırmızı zamanı arasında sadece 1 ms vardır ve aslında 550 ms olmalıdır (sıralı OrderSend). Görünüşe göre, Print-anlık görüntüleri de burayı etkiliyor.
 
Renat Fatkhullin :

Konumunuzun hatırına, konuyla ilgili herhangi bir tatar yayı var mı?

 // Демонстрация тормозов HistorySelect.
#include <fxsaber\Benchmark.mqh> // https://c.mql5.com/3/321/Benchmark.mqh

input int inAlertTime = 1 ; // Нижний порог в миллисекундах

#define _B2(A) _B(A, inAlertTime)

const bool Init = EventSetTimer ( 1 );

void OnTimer ()
{
   static MqlTradeRequest Request = { 0 };
   static MqlTradeResult Result = { 0 };

   if (Request.tp) // Если позиция выставлена - меняем тейк.
  {
     static bool Flag = false ;

    Request.action = TRADE_ACTION_SLTP ;
    Request.tp += ( 1 - ((Flag = !Flag) << 1 )) * _Point ;
        
     if (Result.order)
      Request.position = Result.order;
  }
   else // Иначе выставляем позицию.
  {
    Request.action = TRADE_ACTION_DEAL ;
    Request.symbol = _Symbol ;
    Request.volume = 0.1 ;
    Request.price = SymbolInfoDouble ( _Symbol , SYMBOL_ASK );
    Request.tp = Request.price + 1000 * _Point ;         
  }

   if ( OrderSend (Request, Result))
    _B2( HistorySelect ( 0 , INT_MAX )); // В каком месте самострел?
}


b2592 MQ-Demo'da sonuç.

 2020.09 . 04 23 : 30 : 32.661 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 33.681 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 34.655 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 35.674 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 36.657 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 37.668 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 38.661 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.
2020.09 . 04 23 : 30 : 39.666 Alert : Time[Test6.mq5 35 : HistorySelect ( 0 , INT_MAX )] = 5 ms.

Her aramada gecikme.

 
Gecikmeler için aynı.

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Hatalar, hatalar, sorular

A100 , 2020.08.31 15:55

Aylık ve haftalık bir zaman dilimine sahip bir grafikte (özellikle EURUSD), artı işareti imleçten sonra çok yavaş hareket eder - yeniden oluşturmak için imleci çapraz olarak yumuşak bir şekilde hareket ettirmek yeterlidir. Diğer zaman dilimlerinde sorun yok. Daha önce hiç böyle bir gecikme olmamıştı.

ve tüm manuel grafik yapılar (trend, Fibonacci, vb.) de yavaştır

Ayarların tümü varsayılandır:

  • Sunucu: MetaQuotes-Demo
  • Geçmiş: 01/01/1971 tarihinden itibaren mevcuttur
  • doğru zaman ölçeği: hayır
  • Pencere başına maksimum çubuk: 100000
  • Grafik türü: Japon şamdanları
  • grafik uzaklaştırma: maksimum

Sembol, nokta Barlar gecikme
EURUSD 597 orada
EURUSD Haftalık
2590 orada
EURUSD Günlük

12797

Numara

Bir tür ters ilişki: çubuklar ne kadar azsa, o kadar yavaş

Aylık ve haftalık EURGBP çizelgelerinde (bu kadar derin bir geçmişin olmadığı yerlerde) - gecikme olmaz

 
A100 :

Bir tür ters ilişki: çubuklar ne kadar azsa, o kadar yavaş

Aksine, düz bir çizgi - TF ne kadar yüksek olursa, gecikme o kadar büyük olur.

Görünüşe göre, daha genç TF'ye göre koordinatların kesin hesaplanması nedeniyle. Bir yerde, gerekli haftalık/aylık çubukta yer alan çubukların endekslerini almakla uğraştılar.

ps: benim için her şey uçuyor, çubuk sayısı aynı

 
Andrey Khatimlianskii :

Aksine, düz bir çizgi - TF ne kadar yüksek olursa, gecikme o kadar büyük olur.

Görünüşe göre, daha genç TF'ye göre koordinatların kesin hesaplanması nedeniyle. Bir yerde, gerekli haftalık/aylık çubukta yer alan çubukların endekslerini almakla uğraştılar.

ps: benim için her şey uçuyor, çubuk sayısı aynı

Doğal olarak, hiçbir Expert Advisors\indicators\scripts çalışmıyor - yalnızca manuel derlemeler. Belirtilen gecikme, herhangi bir ortalama modern 64 bit tablette yeniden üretilir. i7'de bir bilgisayarınız varsa, böyle bir gecikmeyle karşılaşmadığımı itiraf ediyorum
 
A100 :
Doğal olarak, hiçbir Expert Advisors\indicators\scripts çalışmıyor - yalnızca manuel derlemeler. Belirtilen gecikme, herhangi bir ortalama modern 64 bit tablette yeniden üretilir. i7'de bir bilgisayarınız varsa, böyle bir gecikmeyle karşılaşmadığımı itiraf ediyorum

Muhtemelen, bir tabletin kullanıldığını hemen belirtmekte fayda var.

i5'im var