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
Durağı bir pip içinde takip ederseniz, komisyoncu uluyacak ve uzmanları kesecektir :)
Bence böylesi daha iyi:
if (MathAbs(CurrentStopLoss - NewStopLoss) > (Sor - Bid)*Koef) { // Zarar durdurmayı değiştir ................ }Onlar. yeni durak eskisinden belirli bir sayı farkıyla (1 - 2) farklıysa sırayı değiştirin
Sorununuz burada otomatik olarak çözülür.
Sadece burada sorun farklıdır - _to_the_same_value_'yu ayarlamaya çalışır... yani. böyle bir kontrol sizi bir hatadan kurtarmaz, sadece olasılığını azaltır =)
Büyük olasılıkla, Expert Advisor'ın metnindeki bir aksaklıktır.
Benzer bir deneyim yaşadım, nasıl düzelttiğimi hatırlamıyorum.
Ancak yukarıdaki örnek, komut dosyasındaki herhangi bir hata için
aynı değere ayarlamak için hiçbir girişimde bulunulmayacaktır.
Büyük olasılıkla, Expert Advisor'ın metnindeki bir aksaklıktır.
Benzer bir deneyim yaşadım, nasıl düzelttiğimi hatırlamıyorum.
Ancak yukarıdaki örnek, komut dosyasındaki herhangi bir hata için
aynı değere ayarlamak için hiçbir girişimde bulunulmayacaktır.
Mak, 1 satır metin var =)
Bu tür hatalardan kaçınmak için f-tion'u tam olarak bu amaç için yazdım ve kontrol her pip'in işlenmesi farkıyla aynıdır.
Ve değer aynıysa (bu durumda fiyattan durağa olan mesafe _less-eşittir_ 50'dir), takip çalışmamalıdır.
Üstelik çoğu durumda çalışmıyor =))) ve bazen bir nedenden dolayı atlıyor....
Ne yapar, atar mı yoksa yuvarlar mı?
Genel olarak, kayan türler hiçbir zaman eşitlik için karşılaştırılmamalıdır.
Tek istisna:
Bir satıra ne dersiniz...
_TrailingStop'ta birçok satır var,
ve en az 2 tane varsa, zaten hataların bir nedeni var :)
burada kendimi kısmen düzelttim: yerine
yapılmış
ve sonra iyi görünüyor:
Renat, genel olarak, ana umutlarımı sana bağlıyorum =) muhtemelen burada bir köşe gibi basit bir şey var - ama fark etmiyorum ...
Komposter, yanılıyorsun :) Kaşık büken kızın dediği gibi, "her şey göründüğü gibi değil".
Örneğin, aşağıdaki döngü 5 sayı yazdırır:
Ve sınırların 1,0 artırıldığı bir sonraki döngü ne kadar yazdıracak?
5 sayının da yazdırılması beklenir, ancak yalnızca 4 (dört) yazdırılır. harika değil mi?
Döngüden sonra bir satır daha eklersek:
Print("d=" + d + " (d <= 1.5)=" + (d <= 1.5));alacağız:
Durarak neredeyse sizinki gibi, ama daha temelde :). Sorun, ilk bilgisayar çipi kadar eski:
bilgisayarlar ikili aritmetik kullanır ve insanlar ondalık sayı kullanır. Yuvarlama sırasında eserler görünüyor.
Mak'ın önerdiği "pürüzlendirme", banal bir hata değil, yuvarlama ile ilgili temel bir sorununuz varsa yardımcı olacaktır.
Birçok kişi, finansal hesaplamalarda ondalık aritmetik için özel kitaplıklar KULLANILMASI GEREKTİĞİNİ düşünür, ancak bunlar bile bazen hatalar içerebilir.
ciddi sonuçlara yol açar. Bu arada Renat, hangi aritmetik uygulamasını kullanıyorsun?
Hızlıca baktım (henüz kazmadım), sizin için hesaplanan point'e bir itiraz buldum.
"Atmaya" ve aptalca Point koymaya çalışın. Belki de sorun şudur (MarketInfo üzerinden bir nokta her zaman ihtiyacınız olan şekilde çıkmayabilir?).