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

 

Optimizasyondan sonra bunu buldum

Kar ve düşüşün çok yakın olduğu iki geçiş için kurtarma faktörü çok farklıdır.


Tehdit Raw modu "piplerle". Şu an için kullanmanızı tavsiye etmiyorum. Özellikle optimizasyon yapıyorsanız.

 

MT5 optimize edicide böyle bir MT4 özelliği yoktur.



Bu yüzden bunu yapmak zorundasın.

 sinput uint inMaxOrders = 0 ; // Максимальное количество ордеров.
sinput double inMaxAbsoluteDD = 0 ; // Максимальная абсолютная просадка

bool IsMaxOrders()
{
#ifdef __MT4ORDERS__
   return (inMaxOrders && MT4ORDERS::LastTradeResult.order > inMaxOrders);
#else
   return ( false );
#endif
}

bool IsMaxAbsoluteDD()
{
   static const double StartBalance = AccountInfoDouble ( ACCOUNT_BALANCE );

   return (inMaxAbsoluteDD && ((StartBalance - AccountInfoDouble ( ACCOUNT_EQUITY )) > inMaxAbsoluteDD));
}

void OnTick ()
{
   static const bool IsTester = MQLInfoInteger ( MQL_TESTER );
  
   if (IsTester && (IsMaxOrders() || IsMaxAbsoluteDD()))
  {
   #ifdef __MQL5__
     TesterStop ();
   #else // __MQL5__
     ExpertRemove ();
   #endif // __MQL5__
    
     return ;
  }
// ....


Aksi takdirde çok kötü ve uzun olur.

 

Optimizasyondan sonra, Aracılar bir süre (uygun bir sayıda dakika) boşaltılmaz ve tetikte olur. Bu gerçekten harika bir çözüm.

Bazen Aracılar, Optimizasyondan sonra gerekli olan çok fazla bellek tüketir. Bu nedenle, onları kapatarak onu serbest bırakmaya karar verdim.


Ancak boşaltmadılar.


"Devre dışı bırak" menü öğesini kullanarak bunları boşaltmak veya bir "Zorla boşaltma" menü öğesi oluşturmak mümkün müdür?

 
Testçinin raporunda "Maksimum pozisyon tutma süresi" hafta sonlarını hesaba katmıyor mu?
 

Verim.

Tek sefer
SSD
Tek sefer
RAM sürücüsü
Optimize Edici'nin ikinci geçişi
SSD/ RAM Sürücü
tek geçiş
Sanal
Optimize Edici'nin ikinci geçişi
Sanal
72 saniye 64 saniye 28 saniye 26 saniye 18 saniye


Tekli koşular "sıcak" hale getirildi - ilk tek geçişten sonra ikincisi hemen başlatıldı.

Tek yönlü frenlerle bir şeyler yapılması gerekiyor. Optimize Edici'den 2,5 kat daha yavaş.

Ve bu sadece gereksiz günlükler değil. Virtual hiçbir şeyi günlüğe kaydetmez, ancak yine de Optimize Edici'de gözle görülür şekilde daha hızlıdır.

 

Tek bir çalıştırma seçildiğinde giriş parametrelerinin aralıklarının tamamen gizlenmesi iyi bir fikir mi?


Bir set dosyası yüklediğimde, hangi optimizasyondan seçildiği hemen belli oluyordu. Şimdi yok.


Tehdit Kutuyu işaretleyene kadar menzili göremezsiniz. Çok rahatsız oldu. Ve onay kutusu açıkken varsayılan değeri görmezsiniz.

 

Çocuklar, tek geçişli günlükler tarafından zorbalığa uğradım. Onlar yüzünden RAM-Drive ile çalışmak kesinlikle imkansız. Birkaç tek geçişte gigabaytlarca çöp. Şiddetli saçmalık. RAM sürücüsü çok çabuk doluyor.

Sanal kullanıyorum. Bu konuda onunla ilgili herhangi bir sorun yok. Ama yine de bu sorunu WinAPI aracılığıyla kökten çözmek istiyorum.


İstem, Tester\Agent-127.0.0.1-300x\logs\*.log dosyalarını tek bir çalıştırmaya başlamadan önce otomatik olarak vur? Bir kez çözüm yazıp bu pisliği sonsuza kadar unutmak istiyorum.

Sorun şu ki, bu dosyalar manuel olarak bile silinemez - Terminal tarafından işgal edilirler. Bir Unlocker seçeneği var. Konsol varyantı olup olmadığına bakmak gerekiyor.


Genel olarak, bu konuda herhangi bir yardım istiyorum.


Tehdit Ve yapmaya değer olan max. günlük boyutu sınırı ....

 
fxsaber :

Çocuklar, tek geçişli günlükler tarafından zorbalığa uğradım. Onlar yüzünden RAM-Drive ile çalışmak kesinlikle imkansız. Birkaç tek geçişte gigabaytlarca çöp. Şiddetli saçmalık. RAM sürücüsü çok çabuk doluyor.

Sanal kullanıyorum. Bu konuda onunla ilgili herhangi bir sorun yok. Ama yine de bu sorunu WinAPI aracılığıyla kökten çözmek istiyorum.


İstem, Tester\Agent-127.0.0.1-300x\logs\*.log dosyalarını tek bir çalıştırmaya başlamadan önce otomatik olarak vur? Bir kez çözüm yazıp bu pisliği sonsuza kadar unutmak istiyorum.

Sorun şu ki, bu dosyalar manuel olarak bile silinemez - Terminal tarafından işgal edilirler. Bir Unlocker seçeneği var. Konsol varyantı olup olmadığına bakmak gerekiyor.


Genel olarak, bu konuda herhangi bir yardım istiyorum.


Tehdit Ve yapmaya değer olan max. günlük boyutu sınırı ....

Günlük klasörüne yazma devre dışı bırakılsın mı?

 
Andrey Khatimlianskii :

Günlük klasörüne yazma devre dışı bırakılsın mı?

Bu seçenek çalışmıyor.


Bilgisayarı yeniden başlattıktan sonra böyle bir toplu iş dosyasını Terminal klasöründe çalıştırıyorum.

 rem Создали RAM-Drive для Тестера.
imdisk -a -o awe -s 3 G -m Z: -p "/fs:ntfs /q /y /v:MT5Tester"

mkdir z:\Tester
mklink /j Tester z:\Tester

rem Кеш оптимизатора будет сохраняться на диске.
mkdir cache
mklink /j z:\Tester\cache cache

rem Временный RAM-Drive, чтобы на него можно было перенаправить log -папки.
imdisk -a -o awe -s 3 M -m Y: -p "/fs:ntfs /q /y /v:MT5Tester_Logs"

mkdir y:\logs
mklink /j Tester\logs y:\logs

mkdir y:\logs0
mkdir Tester\Agent- 127.0 . 0.1 - 3000
mklink /j Tester\Agent- 127.0 . 0.1 - 3000 \logs y:\logs0

mkdir y:\logs1
mkdir Tester\Agent- 127.0 . 0.1 - 3001
mklink /j Tester\Agent- 127.0 . 0.1 - 3001 \logs y:\logs1

mkdir y:\logs2
mkdir Tester\Agent- 127.0 . 0.1 - 3002
mklink /j Tester\Agent- 127.0 . 0.1 - 3002 \logs y:\logs2

mkdir y:\logs3
mkdir Tester\Agent- 127.0 . 0.1 - 3003
mklink /j Tester\Agent- 127.0 . 0.1 - 3003 \logs y:\logs3

mkdir y:\logs4
mkdir Tester\Agent- 127.0 . 0.1 - 3004
mklink /j Tester\Agent- 127.0 . 0.1 - 3004 \logs y:\logs4

mkdir y:\logs5
mkdir Tester\Agent- 127.0 . 0.1 - 3005
mklink /j Tester\Agent- 127.0 . 0.1 - 3005 \logs y:\logs5

mkdir y:\logs6
mkdir Tester\Agent- 127.0 . 0.1 - 3006
mklink /j Tester\Agent- 127.0 . 0.1 - 3006 \logs y:\logs6

mkdir y:\logs7
mkdir Tester\Agent- 127.0 . 0.1 - 3007
mklink /j Tester\Agent- 127.0 . 0.1 - 3007 \logs y:\logs7

rem Убили временный RAM-Drive
imdisk -D -m Y:


Bundan sonra hiçbir günlük dosyası oluşturulmaz. Gözle, Test Cihazının yanındaki frenleri henüz fark etmedim. Çalışan bir çözüm gibi görünüyor.

 
fxsaber :

Bu seçenek çalışmıyor.

Kaydı nasıl devre dışı bırakırsınız?