MG4 komut dosyalarını ve Uzman Danışmanları destekleyen test cihazı - sayfa 11

 
Renat :

CopyXXX, iClose/iOpen/iXXXX işlevleriyle aynı hıza sahiptir. CopyXXX bir küme döndürür ve bu nedenle daha verimli ve performanslıdır .

Muhtemelen MT4'te yerel grafiğin _all_ geçmişinin , tick işleyicisinin her başlatılmasından önce EA'nın yerel (önbellek) pazar ortamına zorla kopyalandığını dikkate almıyorsunuz. Bu bilgiyi ekonomik olarak güncelleme yöntemimiz olmasına rağmen bu çok pahalı. MQL4'ten gelen RefreshRates özel işlevi, yerel grafiğin önbelleklerinin ve geçmişinin zorunlu olarak güncellenmesine neden olur.

CopyXXX'i çağırmak çok daha verimlidir ve geliştiriciler, önceden istenen verileri önbelleğe almak için çok doğru ve doğru bir mekanizmaya sahiptir. Örneğin, derin geçmişi her tıklamada yeniden talep etmeniz gerekmez, ancak yerel olarak depolayın/ekleyin ve ona en hızlı erişimi elde edin.

Eski "doğrudan" (aslında, doğrudan erişim yoktur) erişim Açık/Yüksek/Düşük/Kapalı yöntemlerini karşılaştırırsak ve double local[xxxx] yerel dizisiyle çalışırsak, ikincisi çok daha hızlıdır. Bu nedenle, yerel olarak kendinize kopyalamak ve ardından tekrar tekrar istenen verilere hızlı yerel erişime sahip olmak daha iyidir.

"Kene işleyici" ile ne kastedilmektedir - OnTick gibi özel işlevler? Neden sadece ortaya çıkan verileri değil de tüm geçmişi kopyalamak gerekiyor?
 
Vinin :
Bu bir gösterge değil
Burada OOP göstergesine bir bağlantı verdim.
 
C-4 :
"Kene işleyici" ile ne kastedilmektedir - OnTick gibi özel işlevler? Neden sadece ortaya çıkan verileri değil de tüm geçmişi kopyalamak gerekiyor?

Evet, OnTick/OnStart.

Anladığım kadarıyla, birçokları için MT4'teki yerel haritaya doğrudan erişimin tamamen doğrudan olmadığı bir vahiydi. Çift hafıza tüketimi ve senkronizasyon kayıpları var.

Neyse ki, tutumlu bir önbellek güncellememiz var, ancak bu yine de sisteme bir maliyet getiriyor. MT5'te, yerel önbellekten tamamen kurtulduk ve OnTick/OnStart'ı çağırmadan önce sistem ek yükü daha az.

 
Renat :

Evet, OnTick/OnStart.

Anladığım kadarıyla, birçokları için MT4'teki yerel haritaya doğrudan erişimin tamamen doğrudan olmadığı bir vahiydi. Çift hafıza tüketimi ve senkronizasyon kayıpları var.

Neyse ki, tutumlu bir önbellek güncellememiz var, ancak bu yine de sisteme bir maliyet getiriyor. MT5'te, yerel önbellekten tamamen kurtulduk ve OnTick/OnStart'ı çağırmadan önce sistem ek yükü daha az.

Bir yıl önce MT4/MT5 test cihazlarının performansını tartışmıştık . MT4'teki standart Uzman Danışman "MovingAverage", benzer test koşulları altında dakikada tek bir çalıştırma gerçekleştirirken MT5'te 2:34 sürdü. Neden böyle bir zaman farkını açıklayabilirsin? Akla gelen ilk şey, MT5'in "modülerliği" ve MT5'in çalışırken çekmek zorunda olduğu büyük miktarda ticaret ortamıdır.
 
C-4 :
Bir yıl önce MT4/MT5 test cihazlarının performansını tartışmıştık . MT4'teki standart Uzman Danışman "MovingAverage", benzer test koşulları altında dakikada tek bir çalıştırma gerçekleştirirken MT5'te 2:34 sürdü. Neden böyle bir zaman farkını açıklayabilirsin? Akla gelen ilk şey, MT5'in "modülerliği" ve MT5'in çalışırken çekmek zorunda olduğu büyük miktarda ticaret ortamıdır.

Modülerlik, harici süreç ve daha iyi ortam modellemesi, çoklu para birimi yürütme için geliştirildi.