MetaTrader 5 Strateji Test Cihazı: Hatalar, Hatalar, İyileştirme Önerileri - sayfa 21

 

Artık Test Cihazında, limit emirleri yerleştirme/değiştirme onay işaretinde kabul için kontrol edilmiyor.

Bu nedenle, piyasa kurallarına aykırı olarak, cari fiyattan limit emri verilirken gerçekleşmez.


Bu durum için Tester'da değişiklik olacak mı?

 

Test cihazı 27 saattir 12 iş parçacığında çalışıyor. Hafızadan garip bir resim. Burada uygulamanın çok fazla bellek yemediğini görebilirsiniz.


Ayrıca, acentelerin durumu ücretsiz olmaktan daha fazlasıdır.



Ayrıca 1 iş parçacığında çalışmayı bitirmiş bir örnek var. Takas belleği tahsis edildi.


Çalışan örneği kapatın:

Derhal 26 GB serbest bırakıldı. İş parçacıklarının belleği ayrılmış durumda tuttuğunu mu düşünüyorsunuz? İşlem Gezgini sadece gösterir. Her örnek 4 GB tutar (biri hariç). Aynı zamanda, biri uçtu (12 olmalıdır).


Sorun şu ki, özel belleğin kullanılmamasına rağmen, disk belleği dosyası tamamen dolduğunda, aynı Chrome bellek eksikliğine yemin etmeye başlıyor. RAM yarı boş...


İkinci soru şu. Genetik optimizasyon neden iş parçacıklarının boşta olduğu ve bir iş parçacığının tamamlanmasını beklediği durumlara neden olur? Beklenen iş parçacığının çeşitli sonuçlarını belirledikten sonra, onları bir tahmin hesaplamasıyla puanlamak mantıklı olabilir mi? Veya birkaç parametreyi tekrar "sallamayı" deneyip başka çözümler mi arıyorsunuz?

not. Aracıları devre dışı bıraktım ve sonra tekrar etkinleştirdim - hafızayı yemeyi bıraktılar. Ama bana öyle geliyor ki, disk önbelleği de başlangıçta yeniden oluşturulacak mı?
 

Para sıkıntısı olayında bekleyen bir siparişi iptal etmek için zaman hatası.

İptal süresi yerine sıfır süre (ekranda vurgulanmıştır) vardır.

Peki, devlet iptal yerine yerleştirilir.

 

Şimdi seçilen parçadaki durumu analiz etmek için


imleci hareket ettirmeniz, açılır tarihi hatırlamanız, çalıştırma tablosunu açmanız, İşlem Geçmişinde istediğiniz yere gitmeniz ve tablodaki ilgili satıra çift tıklamanız gerekir.


Tüm bunlar, grafikte daha yüksek olan bir yere çift tıklayarak değiştirilebilir mi?

 
fxsaber :

Tüm bunlar, grafikte daha yüksek olan bir yere çift tıklayarak değiştirilebilir mi?

Bence bu, fantezi dünyasından, çok gerekli bir "özellik" - destekliyorum !!!

 

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

MetaTrader 5 Strateji Test Cihazı: Hatalar, Hatalar, İyileştirme Önerileri

fxsaber , 2019.10.14 23:32

MT5'te bir pozisyonu kapatabilir ve zarar alabilirsiniz (açılmadan önceki bakiye, kapanıştan sonraki bakiyeden daha azdır). Ancak aynı zamanda, MT5-Tester (Terminal kontrol etmedi) bu ticareti karlı olarak değerlendirecektir.

Oynatma için bir danışman çizdi

 #include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

#define Ask SymbolInfoDouble ( _Symbol , SYMBOL_ASK )

void OnTick ()
{
   if (! OrderSelect ( 0 , SELECT_BY_POS))
     OrderSend ( _Symbol , OP_BUY, 1 , Ask, 0 , 0 , 0 );
   else if ((OrderProfit() > -OrderCommission()) &&
           (OrderProfit() < -OrderCommission() * 2 ) &&
           OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), 0 ))
     ExpertRemove ();
}


Test Cihazında bir komisyonun olduğu bir ticaret sunucusundan çalıştırın (bunda başlatıldı: ForexTimeFXTM-Demo01 ).

Resimlerde sonuç.


Ekran görüntüsü, toplam zararla kapatılan bir SATIN AL pozisyonu olduğunu gösteriyor - ilk bakiye azaldı.


Ve burada sol sütunda, danışmanın bir kayıp aldığı vurgulanıyor.

Ve şimdi ikinci sütundaki seçime bakıyoruz. Ve orada her şey harika: pozitif mat. bekliyor, %100 karlı işlemler!


Danışmanın kârsız olduğu ve göstergelerin kârlı olanla aynı olduğu bu şekilde ortaya çıkıyor. Dolayısıyla PF hesaplamasındaki bozulmalar.


ZY Bir dakikalığına bir örnek yazdı. Saf MQL5 veya SB'de ne kadar yazacağımı korkuyla düşündüm. Kime tembellik değil - deneyin.

 

Test Cihazında, Genel Bakış sekmesinde, etkileşimli bir filtreyle önceki eylemlerin çok uygun bir listesi vardır.

Bu listede danışman isimleri yolsuz olarak görüntülenir. Bu nedenle, aynı isimde fakat farklı klasörlerde iki Expert Advisor bulunduğunda, listede hangi Expert Advisor'ın girdiye karşılık geldiğini anlamak (ve filtrelemek) imkansızdır.


Bu önceki eylemler listesinde Uzmanlar klasöründeki yollarıyla Uzman Danışmanların adlarını görüntülemek mümkün müdür?

Göstergeler kullanmıyorum, ancak muhtemelen onlar için de aynısını yapmanız tavsiye edilir.

 
İşlem sayısını hesaplarken, test eden kişi CloseBy anlaşmalarının her iki tarafını da hesaba katar. Bu nedenle, yanlış sayıda işlem, mat. beklemek vb.
 
danışman
 #include <MT4Orders.mqh> // https://www.mql5.com/ru/code/16006

#define Bid SymbolInfoDouble ( _Symbol , SYMBOL_BID )
#define Ask SymbolInfoDouble ( _Symbol , SYMBOL_ASK )

int OnInit ()
{
   return (OrderCloseBy( OrderSend ( _Symbol , OP_BUY, 1 , Ask, 0 , 0 , 0 ), OrderSend ( _Symbol , OP_SELL, 
2, Bid, 0 , 0 , 0 )));
}


raporda yalnızca sıfırlara neden olur. Ticaret olmasına rağmen.


Neden = 1 de net değil. Kaynakta yok.

 
fxsaber :
danışman


raporda yalnızca sıfırlara neden olur. Ticaret olmasına rağmen.


Neden OnTester == 1 de açık değil. Kaynakta yok.

OnInit'te alım satım yapıldığından emin misiniz? GetLastError'u kodunuzla nasıl kullanacaksınız? Ve başka bir soru. İşlev argümanlarının değerlendirildiği sırayla emin misiniz?