Evet, neler oluyor??? - sayfa 6

 
Сергей Таболин :

optimizasyonu birkaç kez yaparsanız, danışmanın aynı parametreleriyle, farklı optimizasyonların sonuçları aynı mı? eşleşirlerse, sorun optimize edicinin çalışması ile tek geçiş arasındaki farktadır. eşleşmiyorlarsa, sorun açıkça danışman kodundadır.

 

Açıklayacağım - buradaki modaya uygun yazım tarzı:

if (condition) {

} else if (!condition) {

}

görünüşte artan okunabilirlik ve kodun anlaşılması, aslında şeytani kötülük

ve ayrıca, double ile çok, çok dikkatli çalışmanız gerekir.

 
Andrey Dik :

Expert Advisor'ın global değişkeninin , optimize edicinin önceki lansmanları sırasında değerini koruduğunu ve sonrakilere aktarıldığını düşünüyor musunuz? danunah.

Evet böyle bir şey. Koştu.

Sadece Ch değildi. değişken veya sınıfın statik bir üyesi veya Ch. terminal değişkeni veya başka bir şey.


Ayrıca, terminali başlattıktan hemen sonra tek bir test ve aynı ajan üzerinde tekrarlanan bir test farklılık gösterebilir. Aynı sebepten.

Genel olarak, her şeyi başlatmanız ve bunu dikkatlice izlemeniz gerekir.


ps: hayır, hatırladım. Başlatma işlemimde her şey yolundaydı, bu başlatılan buggy statiklerinden biri. Derhal düzeltildi.

 
Andrey Dik :

EA değişkenlerinin içeriğinin bir çalıştırmadan diğerine aktarımı, terminalin global değişkenleriyle ilgili olsa bile, testçi hatası olarak düşünülmelidir.

bir Expert Advisor'ın birkaç kopyası gerçek zamanlı olarak çizelgelerde başlatılırsa, kullanıcı sihir veya diğer tanımlama yöntemlerini kullanır ve optimizasyon süreci, durum böyle değilse, aynı sihirle bir Expert Advisor'ın birden çok ve bağımsız başlatılması anlamına gelir. , o zaman sadece optimizasyonla ilgili ideolojik bir bakış açısıyla yanlış olmakla kalmaz, aynı zamanda optimizasyonu etkileme ve onu pazar ürünlerinde kötüye kullanma, alıcıyı yanıltma olasılığını da açar.

Bununla birlikte, TS'nin basılı işlemlerle ilgili raporunu bekliyoruz, entrika.

Kutsal hırsıza ayarlı değil.

Anlamı, her zaman olduğu gibi basittir - danışman, optimizasyonun daha hızlı ilerlemesi için boşaltılmaz. EX dosyaları büyük olabilir.

 

Sadece bugün sorunla ciddi olarak ilgilenmek için zaman vardı. Küçük başlamaya karar verdi. Sırayla. Açık dosyaları kontrol etmek dahil. Kod şöyle:

       int       h     = FileOpen (filename, FILE_BIN | FILE_READ | FILE_COMMON );
       if (h == INVALID_HANDLE )
      {
         Print ( "Ошибка открытия файла обученной сети по индикатору >>> " ,name);
         writeErrorFile(program_name,program_version, "======= " + IntegerToString (bars_count- 1 )+ " === Ошибка открытия файла обученной сети по индикатору >>> " +name);
         writeOptTestFile(file_Opt_Tst, "======= " + IntegerToString (bars_count- 1 )+ " === Ошибка открытия файла обученной сети по индикатору >>> " +name+ "\n" );
         FileClose (h);
         return (TRADESIGNAL_NO);
      }

Bir optimizasyon ve ardından tek bir test çalıştırın. Sonuç iki dosyadır:

 1 _100_100_300_300_.opt
1 _100_100_300_300_.tst

Bu iki dosyayı WinMerge programında açtım. Ve orada gördüğüm şey

Optimize edicinin açılmasıyla ilgili bir sorunu var . Test cihazında böyle tek bir hata olmadığını unutmayın!

 
Сергей Таболин :

Optimize edicinin açılmasıyla ilgili bir sorunu var . Test cihazında böyle tek bir hata olmadığını unutmayın!

Birden çok çekirdek aynı anda bir dosyayı açar. Biri açılır, diğerleri kırılır.
Beklenti veya en azından FILE_SHARE_READ bayrağı ile koda ihtiyacınız var

 

Eğer sen:

  • uzmandan ortak bölgede aynı dosyaya erişin
  • erişim hataları alıyorum
  • Kendinizi birden fazla paralel işlemle paylaşmaktan korumayın, zaman aşımı ile tekrar etmeye çalışmayın
Elbette optimize edici ve tek geçişte farkı elde edeceksiniz. Bu bir mantık hatasıdır.
 
Andrey Khatimlianskii :

Birden çok çekirdek aynı anda bir dosyayı açar. Biri açılır, diğerleri kırılır.
Beklenti veya en azından FILE_SHARE_READ bayrağı ile koda ihtiyacınız var

Eh, özellikle optimize edici için kod yazmadım. Optimize edicinin bu tür nüansları zaten izlemesi bekleniyordu. Bir bayrak eklemeye çalışacağım, daha kötüye gitmeyecek. )))

Renat Fatkhullin'in fotoğrafı.

Eğer sen:

  • uzmandan ortak bölgede aynı dosyaya erişin
  • erişim hataları alıyorum
  • Kendinizi birden fazla paralel işlemle paylaşmaktan korumayın, zaman aşımı ile tekrar etmeye çalışmayın
Elbette optimize edici ve tek geçişte farkı elde edeceksiniz. Bu bir mantık hatasıdır.

  1. Ortak bölgeyi yalnızca dosya bulma kolaylığı için ekliyorum.
  2. ....
  3. Paylaşılan erişimim yok. Bu dosyalara yalnızca bir Uzman Danışman erişir.
 

Hala kod olmadığı için, test koşulları hiçbir şekilde açıklanmıyor ve açıkça hatalı ifadeler veriyorsunuz, sonra kendiniz bulun.

Dosyaları bile açamıyorsanız, Expert Advisor'da çok fazla sorun var demektir.

Bu dosyaların isimlerini bile sakladınız.

 
Renat Fatkhullin :

Hala kod olmadığı için, test koşulları hiçbir şekilde açıklanmıyor ve açıkça hatalı ifadeler veriyorsunuz, sonra kendiniz bulun.

Dosyaları bile açamıyorsanız, Expert Advisor'da çok fazla sorun var demektir.

Bu dosyaların isimlerini bile sakladınız.

Kod yok çünkü topları eklemek sorunu gerçekten çözdü. Artık optimizasyon sonuçları ve tekli çalıştırmalar tamamen tutarlı.

Sadece daha önce Expert Advisors'da neredeyse hiç dosya kullanmamıştım (en azından optimizasyon / test sırasında tüm yazma / okuma devre dışı bırakıldı), ancak bir Expert Advisor'dan erişim sorununun optimize edicide çözüldüğünü düşündüm.

Neden: