Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret 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
"If(IsNewCandle())" de çağrıldığında "int start()" işlevinden sipariş değişikliğini çağırmam gerekiyordu. Bu nedenle, HER saat kapanışında, emirdurdurma kaybı > iMA-ATR ise PENDING emrini değiştiren "Void OrderModify" buna göre değiştirilecek ve kalibre edilecektir.
Demek artık işini hakkıyla yapıyor :) Şimdi gözlerim kanayana kadar okuyayım... :)
Sorun bu. . . (OP_SELL için benzer)
. . . ve bir hata 1 aldığınızda bunun nedeni OrderStopLoss() == BuyStopPrice yani siparişi aynı StopLoss değerine sahip olacak şekilde değiştiriyorsunuz, dolayısıyla hata 1 yani şimdi bir yandan OrderStopLoss() == BuyStopPrice'ın nasıl olduğunu merak ediyorsunuz. diğer yandan OrderStopLoss() < BuyStopPrice
Yazıdaki bağlantıyı takip edip gözleriniz kanayana kadar okudunuz mu? Bahse girerim yapmadın. . . https://www.mql5.com/en/forum/146380 bu konuyu görmezden gelmeye devam ederseniz sizi yakalamaya devam edecek ve zaman kaybetmeye devam edeceksiniz. . . onunla başa çık, anla, daha fazla acı çekme, mutlu ol
sıfır dışında asla eşitlik için çiftleri karşılaştırma < WHRoeder tarafından aradığım şey bu olabilir mi?
if (a > b)
if (a >= b)
if (a != b)
sıfır dışında asla eşitlik için çiftleri karşılaştırma < WHRoeder tarafından aradığım şey bu olabilir mi?
Dürüst olmak gerekirse, hayır anlamıyorum... Yazmayı ve karşılaştırmaları yazdırmayı denedim ama yine de...
1.51234000001, 1.51234000002 ile aynı değildir, ancak bir fiyat açısından bakıldığında, ikisi de 1.51234 yani aynıdır. . . yani aynılar ama biri diğerinden daha büyük. Her şey kayan noktalı sayıların ikili olarak temsil edilme şekliyle ilgilidir, tam değildir, bu nedenle genellikle burada ve orada küçük bir hata vardır. . .
Şuna bir bakın: kayan nokta sayıları
Ama neden NormalizedDouble, Digits bunu çözmedi? Fazladan gereksiz ondalık basamaklar neden dahil edildi? NormalizeDouble'ı önceden tanımlanmış değişkenler üzerinde kullanmanıza gerek olmadığı gerçeğini takdir ediyorum, ancak NormalizeDouble'ı önceden tanımlanmamış değişkenler üzerinde kullanmanın ve sonra asla eşleşmeyecekleri zaman onları karşılaştırmaya çalışmanın anlamı nedir :s?
Yabancı!
"If(Bid > OrderOpenPrice())" yapmak isteseydim bu işe yaramaz mıydı? Her karşılaştırma ifadesinde yukarıda belirtilen kuralları uygulamam gerekir mi? yani "If(Bid - OrderOpenPrice() > Point / 2.)?
Peki ya If(Bid == OrderOpenPrice()), bu ifadeyle yapmam gereken bir şey var mı?
Ama neden NormalizedDouble, Digits bunu çözmedi? Fazladan gereksiz ondalık basamaklar neden dahil edildi? NormalizeDouble'ı önceden tanımlanmış değişkenler üzerinde kullanmanıza gerek olmadığı gerçeğini takdir ediyorum, ancak NormalizeDouble'ı önceden tanımlanmamış değişkenler üzerinde kullanmanın ve sonra asla eşleşmeyecekleri zaman onları karşılaştırmaya çalışmanın anlamı nedir :s?
NormalizeDouble sorunu çözmez, 1.51234000001'i 1.51234'e çevirmez, sadece onunla farklı bir şekilde "karar". . . bu yüzden onu kullanarak, tüm değerlerinizle aynı şekilde bulaşmasını umuyorsunuz.
"If(Bid > OrderOpenPrice())" yapmak isteseydim bu işe yaramaz mıydı? Her karşılaştırma ifadesinde yukarıda belirtilen kuralları uygulamam gerekir mi? yani "If(Bid - OrderOpenPrice() > Point / 2.)?
Evet, karşılaştırmanızın size doğru bir sonuç verdiğinden emin olmak istiyorsanız, evet.
Peki ya If(Bid == OrderOpenPrice()), bu ifadeyle yapmam gereken bir şey var mı?
Tamam teşekkürler - OrderModify 1 hatasını önemli ölçüde azalttım - ancak yine de ara sıra biraz hata alıyorum? MA_trail void gibi görünüyor? Ayrıca, "If(Bid == OrderOpenPrice())'yi nasıl doğru yazardım?
Gözlerin yeterince kanmıyor. . .
Bunun gibi bir şey yapabilirsin:
!( MathAbs (FirstPrice - SecondPrice) > HalfAPoint )
konusunda dikkatli olun !
Buradan: https://www.mql5.com/en/forum/136997/page4#781986