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
Sonuç:
Ya yanlış bir şey yapıyorum (lütfen beni düzeltin) ya da saygıdeğer MetaDriver teoride bir hata yaptı (algoritmayı tasarlarken).
:)
Algoritmanın "tasarımının" yaklaşık 3 dakika (ve uygulanması 7 dakika) sürdüğü gerçeği göz önüne alındığında, iyi bir iş çıkardım :) Amaç, çalışan bir fikir göstermek ve problem ifadesini netleştirmekti.
Ve sonunda tüm bunların faydalı olduğu ortaya çıktı - geliştiricilerin MathFloor () işlevini akla getirmek için gerçek bir nedenleri vardı - açıkçası her şey tamamen uygulanmadı.
Sonunda, devam etmek zorunda kaldım. Eğlenceliydi. Kararlı bir işlev (CountSignedDigits(double x) hakkında konuşuyorum) ancak neredeyse bir saatlik deneylerden sonra elde edildi.
Ve sonra - şimdi bile tüm girdi değerleri için tam olarak neyin işe yarayacağından emin değilim. Otomatik stres testi geliştirmedim, manuel olarak yaptım. Lütfen test edin.
Kayan noktadan sonra 10 ondalık basamağa kadar kararlı çalışma bekliyorum.
Stres testi eklendi. // Bazı ara uygulamaları koddan kaldırmadı. Denemek / yansıtmak için yorumlarda kaldı. Geliştiriciler dahil.1. Parti için dig tanımlamanıza gerek yoktur, sadece istenen adıma göre normalize edin:
2. Bir ticaret talebinin transferi sırasında lot değişkenine (onbirinci ondalık basamakta) çöp girse bile, terminalin kendisi tarafından filtrelenmesi gerekecektir.
3. En azından, bu tasarımı kullandığım birkaç yıldır herhangi bir sorun yaşamadım.
4. Ve güvenli oynamak istiyorsanız, normalleştirmeyi 8. (bir kenar boşluğu ile) ondalık basamağa kadar yapıştırabilirsiniz - "doğru" normalleştirme çöpünden sonra ortaya çıkarsa, o zaman çok daha fazla olacaktır.
İlk fikir doğru, gerisi şüpheli. :)
Uygulama, uygulama için çalışıyor, ancak "sorun başlatıcı" (c) tarafından tanımlanan yapay koşullar için yanlış. Ayrık adımlar için lot_min'e göre değil, sıfıra göre üretir. :)
Ancak, fark ederseniz düzeltmek kolaydır.
// Bu incilerden tüm bunları çok ciddiye almamalarını istiyorum. Açıklamalar beyin eğitimi için tamamen teoriktir, çünkü pratikte lot_step'in örneğin 0.0231'e eşit olduğunu hiç görmedim....
;)
seçenek doğru. NL()'mde olduğu gibi lot_min için doğru bir şekilde hesaplandı.
Bir yığın seçeneğim. Lütfen bazı enstrümanlar için fiyat değişikliği adımının bir noktadan daha fazla olduğunu unutmayın.
Adımların sıfırdan değil, minimum lottan "gittiğini" bir aksiyom olarak alırsak, doğru algoritma aşağıdaki gibidir:
Composter versiyonunda adımlar sıfırdan "gidiyor". Ki bu bana doğru gelmiyor.
MetaDriver türevinde kod, negatif değeri atlar. =P
...
MetaDriver türevinde kod, negatif değeri atlar. =P
:)) ..... Eh işte! Evet, vapche sizin için çalışmayacak !! ;-P ;-b ;-P
Eh, o zaman, o zaman en kısa ve aynı zamanda "kesin gibi" seçeneği şudur:
Ve bu, lot_step , lot_min ve lot_max'ın geçersizliğini ve olumsuzluğunu kontrol etmeden yapılır !!......
:))))
Yyy ... bir sinire dokundu. :)) Bir forum gönderisindeki manuel kuralların son satırı, bu yüzden affedilebilir. =)
Bu arada, kodunuz da derlenmiyor (son satırdaki kapanış parantezini unuttum). :-R
Ayrıca 2-3 kat daha yavaş çalışıyor (şimdi senaryoda ölçtüm) ve kontrolün kalitesi aynı. :-R
Genel olarak, anlamlı en az anlamlı basamağı belirlemek için yetkili bir kod olmamasına rağmen, Composter'ın tavsiyesini kullanacağım: hacmi 8. ondalık basamağa normalleştirin.
Umarım tuzaklar yoktur.
Yardımlarınız için hepinize teşekkür ederim.
gördüğüm kadarıyla komiksiniz.
ilk mesajında NL() vermiş, daha sonra sadece iki sayfa alabilmişsiniz;)
Guruya bir soru daha vardı. Çok para birimli bir ticaret platformunu test ederken hatalar meydana geliyor (ekran görüntüsü ekli).
Cevabını aldığım bir ticaret operasyonu yapmaya çalışıyorum: fiyat yok. Test cihazı, bu çift için fiyatların 2011.01.03 01 :00:00'da gelmeye başladığını gösterirken, bu hatayı gidermek için EURUSD de 2011.01.03 00:00:00'dan alıntılanıyor mu?
Guruya bir soru daha vardı. Çok para birimli bir ticaret platformunu test ederken hatalar meydana geliyor (ekran görüntüsü ekli).
Cevabını aldığım bir ticaret operasyonu yapmaya çalışıyorum: fiyat yok. Test cihazı, bu çift için fiyatların 2011.01.03 01 :00:00'da gelmeye başladığını, EURUSD de 2011.01.03 00:00:00'dan alıntılandığını gösteriyor bu hata nasıl aşılır?