Ve hepsi, IndBuff arabelleğinin Rate_total + 1'e kadar ayrılmadığı için Ve ArrayResize bunun için geçerli değil. Yapıyı kırdı. Şimdi, if-s yoluyla, her şeyi çitlemek için mi?
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi. Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi. Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
Her şey olduğu gibi kalır.
senin eklemin
İpucu - hata ayıklayıcıyı nasıl kullanacağınızı öğrenin ve bir çıktı almanıza gerek yok, ayrıca tüm sövelerinizi hemen göreceksiniz.
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi. Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
Göstergelerin hesaplanmasında bir değişiklik fark etmedim. Yukarıda Nikolai, oranlar_toplam-önceki_hesaplanmış olarak hesaplanan sınır değerlerin ne anlama geldiğini doğru bir şekilde tanımladı.
Ve yıllardır çalışıyor - dördüncü terminalden bile.
Nikolai Semko # : Eksi bir ihtiyacınız olan yer burası :))
Çıktı daha sonra boyutlarla ilgili her şeyin yolunda olduğunu gösterir.
Mantık kullan:
Limit = 0 ise, yeni bir onay işareti
Limit = 1 ise, yeni bir çubuk anlamına gelir (hızlar_toplam -1 arabelleğinin son öğesi ve oranlarınız_toplam var, dolayısıyla taşma var)
Limit > 1 ise, tüm göstergeyi yeniden hesaplamak daha iyidir
Nikolay, inşaatların olup olmadığını biliyorum ve bir tanesi için, ama ben hep bunun için çalıştım, alıştım, daha uygun. Ama uzun bir süre for ile ilgili tuhaflıkları fark ettim ve onunla uğraşmayı erteledim. Eskiden çok iyi çalışırdı.
Adım 1: 'MQL5 Sihirbazı'nı kullanarak bir boşluk oluşturun:
Adım 2: 'limit'i doğru şekilde yazın ve yakın diziyi KULLANIN - iClose'u ARAMAYIN!!!
Sonuç:
ve hiçbir hata yok.
Doğrudan i++ örneği için teşekkürler. Ama ters bir döngüm olduğu gerçeğini fark etmedin. Ve örnek olarak iClose verilirse, ileride i indeksinin başka fonksiyonlarda kullanıldığını göstermek gerekir.
Limit = 1 ise, yeni bir çubuk anlamına gelir (hızlar_toplam -1 arabelleğinin son öğesi ve oranlarınız_toplam var, dolayısıyla taşma var)
Limit > 1 ise, tüm göstergeyi yeniden hesaplamak daha iyidir
burada bir hata yaptım kullanmak daha iyi eğer limit != 1
yani tüm mantık şöyle bir şey:
limit = rates_total - prev_calculated;
if (limit == 0 ) {..} // новый тикelseif ( limit == 1 ) {..} // новый барelse {..} // полный пересчет всего индикатора
Bazılarının kızacağını anlıyorum ve limit == 2 ise neden her şeyi yeniden hesapladıklarını söylüyorlar, ancak limit 1'e ve 0'a eşit olmadığında, bu göstergenin ilk başlatılmasıdır veya bir şeyler ters gitti (örneğin, bağlantı hatası veya sunucuda hata) Ayrıca, prev_hesaplananın oranlar_toplamından büyük olduğu durumlarla bir kereden fazla karşılaştım. Belki eskiden bir tür aksaklıktı ve şimdi düzeltildi, ama o zamandan beri böyle bir tasarımı zarar vermeden kullanıyorum.
Ve hepsi, IndBuff arabelleğinin Rate_total + 1'e kadar ayrılmadığı için
Ve ArrayResize bunun için geçerli değil.
Yapıyı kırdı. Şimdi, if-s yoluyla, her şeyi çitlemek için mi?
for(int i= limit - 1 ;....
en az..
Ve hepsi, IndBuff arabelleğinin Rate_total + 1'e kadar ayrılmadığı için
Ve ArrayResize bunun için geçerli değil.
for(int i= limit - 1 ;....
en az..
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi.
Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi.
Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
En sinir bozucu olan ne biliyor musun? Herhangi bir davranışın sessizce, uyarı yapılmadan değiştirilmesi.
Ve sonra insanlar acı çekiyor. Bu metatrader'dan bıktınız.
Göstergelerin hesaplanmasında bir değişiklik fark etmedim. Yukarıda Nikolai, oranlar_toplam-önceki_hesaplanmış olarak hesaplanan sınır değerlerin ne anlama geldiğini doğru bir şekilde tanımladı.
Ve yıllardır çalışıyor - dördüncü terminalden bile.
Eksi bir ihtiyacınız olan yer burası :))
Nikolay, inşaatların olup olmadığını biliyorum ve bir tanesi için,
ama ben hep bunun için çalıştım, alıştım, daha uygun.
Ama uzun bir süre for ile ilgili tuhaflıkları fark ettim ve onunla uğraşmayı erteledim.
Eskiden çok iyi çalışırdı.
keneler için i>=0
çubuklar için i>0
Ve ne olursa olsun-ov gerekli değildi.
Adım 1: 'MQL5 Sihirbazı'nı kullanarak bir boşluk oluşturun:
Adım 2: 'limit'i doğru şekilde yazın ve yakın diziyi KULLANIN - iClose'u ARAMAYIN!!!
Sonuç:
ve hiçbir hata yok.
Adım 1: 'MQL5 Sihirbazı'nı kullanarak bir boşluk oluşturun:
Adım 2: 'limit'i doğru şekilde yazın ve yakın diziyi KULLANIN - iClose'u ARAMAYIN!!!
Sonuç:
ve hiçbir hata yok.
Doğrudan i++ örneği için teşekkürler.
Ama ters bir döngüm olduğu gerçeğini fark etmedin.
Ve örnek olarak iClose verilirse, ileride i indeksinin başka fonksiyonlarda kullanıldığını göstermek gerekir.
Nikolai, inşaatların olup olmadığını biliyorum ve bir tanesi için,
yoksa
burada bir hata yaptım
kullanmak daha iyi
eğer limit != 1
yani tüm mantık şöyle bir şey:
Bazılarının kızacağını anlıyorum ve limit == 2 ise neden her şeyi yeniden hesapladıklarını söylüyorlar,ancak limit 1'e ve 0'a eşit olmadığında, bu göstergenin ilk başlatılmasıdır veya bir şeyler ters gitti (örneğin, bağlantı hatası veya sunucuda hata)
Ayrıca, prev_hesaplananın oranlar_toplamından büyük olduğu durumlarla bir kereden fazla karşılaştım. Belki eskiden bir tür aksaklıktı ve şimdi düzeltildi, ama o zamandan beri böyle bir tasarımı zarar vermeden kullanıyorum.
eğer limit != 1