MT geliştiricileri için değil! INIT_PARAMETERS_INCORRECT nasıl değiştirilir? - sayfa 4
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Paspas için bir doğrulama danışmanı fırlattım. optimize edici modu
Geçişleri karıştırmadan tam numaralandırma modunda paralel olarak 8 Aracıda Optimizasyon grafiği böyle görünür (Rand = false)
Burada, Aracıların toplu görevler gerçekleştirdiğini açıkça görebilirsiniz.
Parametreye bağımlılığı görmek için görüntüleme modunu değiştirin
Burada tepesi (biri) GA aracılığıyla aranacak olan sevgili bir parabol.
Karıştırma modunda (Rand = true), elbette kaba kuvvet tepe noktamızı bulur.
Burada, tepesi (biri) olan ve GA aracılığıyla arayacağımız sevgili bir parabol var.
Karıştırmadan, GA ekstremumu bulamadı, ancak ona yaklaştı
179 pas geçti. Tam görev setinin 10001 geçiş olduğunu hatırlatalım. Evet, görev çok basit, ama yine de.
Şimdi karıştırma seçeneğini deneyelim (Rand = true)
Tekrar kapat. Günlük, 182 geçişin tam olarak hesaplandığını ve önbellekten 970'in alındığını açıkça gösteriyor.
İyi sonuç, o halde aralıktaki puan sayısını artırmaya çalışalım.
İyi sonuç, o halde aralıktaki puan sayısını artırmaya çalışalım.
Aralıktaki nokta sayısı bir milyondur.
Rand=yanlış
Rand = doğru (bir milyon noktadan rastgele seçilen çiftler 100 milyon kez değiştirildi)
Sonuç, kendime güvenen ifademin
Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum
MT geliştiricileri için değil! INIT_PARAMETERS_INCORRECT nasıl değiştirilir?
fxsaber , 2018.07.10 16:27
Açıkça, ayrıntılı aramayı izlerseniz y = x^2. Ardından optimizasyon dizelerini rastgele karıştırın ve karıştırmaya dayalı olarak yeni bir küme oluşturun. O zaman GA parabolün tepe noktasını bulamayacak.
doğrudan çok yanlış.
Öte yandan, uygunluk fonksiyonunun bir parabol olarak seçimi en başından beri son derece dar görüşlüydü, çünkü birliğe yakın noktaların sayısı yuvarlanır.
GA için sadece bir soru vardı, seçilen fonksiyon bunun için ideal olduğu için neden tam ekstremum karıştırılmadan bulunamadı?
Öte yandan, uygunluk fonksiyonunun bir parabol olarak seçimi, en başından beri son derece dar görüşlüydü. birliğe yakın noktaların sayısı yuvarlanır.
Keskin bir tepe noktası olan bir fonksiyon seçerseniz, karıştırdıktan sonra HA'nın hala kopacağını varsayıyorum. Ve böyle bir işlev araca çok daha yakın.
Paspas için bir doğrulama danışmanı fırlattım. optimize edici modu
Maalesef benim bilgim tüm bunları anlamaya yetmiyor)))
daha erken karar verdim Genel olarak, EA'ya meşru zincirler dosyasına bir giriş ekledim. 117649 seçenekten 1953'ün kabul edilebilir olduğu ortaya çıktı.Bu arada, 3 gün arayla tam bir arama, Sadece açılış fiyatları ve 0 anlaşma aldı.
Şimdi bir dosyam var. Optimizasyon için nasıl transfer edeceğimi henüz bilmiyorum. yarın düşüneceğim...
Ve neden daha az başarı var? Tekrar etmek zorunda kalacak mısın?Keskin bir tepe noktası olan bir fonksiyon seçerseniz, karıştırmadan sonra GA'nın hala kopacağını varsayıyorum. Ve böyle bir işlev araca çok daha yakın.
Yani genetik, zirveleri yakalamak için keskinleştirilmemiştir. Amacı, TS için tam olarak gerekli olan istikrarlı alanlar bulmaktır. Ve tepeler bir kural olarak gürültüdür.
Yanlış parametre kombinasyonlarına gelince, popülasyon oluşumu aşamasında ortadan kaldırılmalıdır. Onlar. gen değişimi veya mutasyon sonucu yanlış bir birey elde edilirse, doğru olanı elde edene kadar neslini tekrarlamak gerekir. O zaman her şey yoluna girecek.
Öte yandan, INIT_PARAMETERS_INCORRECT eleme , popülasyon oluşturulduktan sonra gerçekleşir ve böylece bu popülasyonun boyutu küçülürse, bu, doğal olarak genetik seçilimin normal mekanizmasını ihlal eder. Görünüşe göre, MQ bu seçeneğe göre uygulanmaktadır. Ve bu durumda, konu başlatıcının görevi pek çözülemez (genel durumda), teflerle dans etmek yardımcı olmaz.
Görüş için teşekkürler, burada sadece programın mimarisi tartışılmıyor. Eğer fark etmediyseniz...
Doğru yanlış.
Şimdi, probleminizin programın yanlış mimarisinde olduğunu kabul ediyorum. Maksimumu yalnızca kapsamlı arama ile elde edebileceğinizi ve son derece kararsız olacağını düşünüyorum.
Büyük olasılıkla, her onay için kapsamlı aramalar kullanılır. Ve işte kendi kendine fren yapıyor. Eğer öyleyse, o zaman sadece uzman/bar açılışının başlangıcında tam bir numaralandırma yönünde bakmaya ve ardından tamamen en son verileri kontrol etmeye değer. Bu tür bir optimizasyon, kaynak tüketimini her zaman bir büyüklük sırasına göre azaltır.
Yani genetik, zirveleri yakalamak için keskinleştirilmemiştir. Amacı, TS için tam olarak gerekli olan istikrarlı alanlar bulmaktır. Ve tepeler bir kural olarak gürültüdür.
Kesinlikle bu şekilde değil. dahası, optimizasyon uzayının kararlı alanları bile hala düşüş ve tepe noktaları olan alanlardır, FF düzgün olmaktan çok uzaktır.
genetik evrensel bir araçtır, yırtık bir FF'yi optimize etmek için keskinleştirilebilir, ancak daha sonra düzgün bir FF'yi optimize etmek daha uzun sürer. sonunda genetik adaptif hale getirilebilir.
IMHO, normal genetik, INIT_PARAMETERS_INCORRECT setlerinin yarısını bile düşünmeden sindirmelidir. Ayrıca, bu alanlar genellikle iyi bir şekilde kümelenmiştir.
ancak genel olarak en doğru çözüm, girdi parametrelerinin uzayını dönüştürmektir.
Doğru yanlış.
Şimdi, probleminizin programın yanlış mimarisinde olduğunu kabul ediyorum. Maksimumu yalnızca kapsamlı arama ile elde edebileceğinizi ve son derece kararsız olacağını düşünüyorum.
Bu mimarlıkla ilgili değil. Önemli olan, işlevler kümesi ve bunların uygulanma sırasıdır. Aslında, başlangıçta, bu işlevlerin tek bir sabit dizisi vardı. Sonra onları arama ve bazılarını aramama sırasını denemeye değer olabileceğine karar verdim. Bunu INIT_PARAMETERS_INCORRECT aracılığıyla uyguladı. İlerleme somut. Ama işte genetik optimizasyonla ilgili sorun...
Şimdi konuya. Yasal zincirlere sahip bir dosya oluşturuldu. Şimdi nasıl kullanılır? OnTester, çerçeveler aracılığıyla gerekli olduğundan şüpheleniyorum ... Belgelere baktım, ancak bir şey eklemiyor. Bununla nasıl başa çıkacağımı anlayamıyorum.
Bir diziye okumak ve ondan veri almak için bir fikir var ...