TF değişikliği bir sorundur - sayfa 4

 

Son tasarım bana çok yakıştı.

Herkese teşekkürler.

 
Vasyl Nosal :
Numara. Sıfırlama olmadan, ekran görüntülerinde ne varsa o olacaktır.

Bu, döngünün kendisinde boşluklarınız olduğu, sırasının ihlal edildiği anlamına gelir. Parçasını verdiğim kodda prev_calculated sıfıra ayarlandığında TÜM çubuklar yeniden hesaplanır. Ve bu, onları önceden sıfırlamanın anlamsız olduğu anlamına gelir - işlemci zamanı kaybı.

not. Bu arada, önemli bir nüansı unuttun. Muhtemelen fiyat dizilerinin bir zaman serisine dönüştürülmediği MT5'ten bahsetmiyorsunuz? Bu durumda şöyle olacak:

 int OnCalculate (...)
{
   // индекс последнего посчитанного на прошлом вызове бара
   // с которого начинаем расчёт
   int nStartBar = MathMax (prev_calculated - 1 , 0 );

   for ( int i = nStartBar; i < rates_total; i++)
   {
       // рассчитываем индикатор на всех непосчитанных барах
   }
}
 
Sergei Vladimirov :

Bu, döngünün kendisinde boşluklarınız olduğu, sırasının ihlal edildiği anlamına gelir. Parçasını verdiğim kodda prev_calculated sıfıra ayarlandığında TÜM çubuklar yeniden hesaplanır. Ve bu, onları önceden sıfırlamanın anlamsız olduğu anlamına gelir - işlemci zamanı kaybı.

not. Bu arada, önemli bir nüansı unuttun. Muhtemelen fiyat dizilerinin bir zaman serisine dönüştürülmediği MT5'ten bahsetmiyorsunuz? Bu durumda şöyle olacak:

mql4

Hayır. Tarihin olmadığı bir çift üzerinde tasarımınız ile burada.

Dosyalar:
 

İyi. Sorunun o kadar basit olmadığı ortaya çıktı.

Geliştiricilerden grafiğin güncellenip güncellenmediğinin saklandığı yeni bir bool değişkeni ve 1'den fazla çubuk yüklendiğinde arabelleklerin otomatik olarak sıfırlanmasını istiyorum.

 
Vasyl Nosal :

İyi. Sorunun o kadar basit olmadığı ortaya çıktı.

Geliştiricilerden grafiğin güncellenip güncellenmediğinin saklandığı yeni bir bool değişkeni ve 1'den fazla çubuk yüklendiğinde arabelleklerin otomatik olarak sıfırlanmasını istiyorum.

Elinizde iki değişken var: prev_calculated ve Rate_total. Geçmişin yüklenmesini kontrol ederek (prev_calculated==0 ile) gösterge arabellekleriyle ne yapacağınızı kendiniz düşünmelisiniz - bu gibi durumlarda olağan davranış, geçmişin yüklenmesini ilk yükleme olayıyla eşitlemektir. gösterge .
 
Karputov Vladimir :
Elinizde iki değişken var: prev_calculated ve Rate_total. Geçmişin yüklenmesini kontrol ederek (prev_calculated==0 ile) gösterge arabellekleriyle ne yapacağınızı kendiniz düşünmelisiniz - bu gibi durumlarda olağan davranış, geçmişin yüklenmesini ilk yükleme olayıyla eşitlemektir. gösterge .
Buradaki komut nedir? Halihazırda düşünülen 4 seçenek var ve hiçbiri çalışmıyor.
 
Vasyl Nosal :

İyi. Sorunun o kadar basit olmadığı ortaya çıktı.

Geliştiricilerden grafiğin güncellenip güncellenmediğinin saklandığı yeni bir bool değişkeni ve 1'den fazla çubuk yüklendiğinde arabelleklerin otomatik olarak sıfırlanmasını istiyorum.

Acele etmeyin lütfen.

Bu arada geliştiricilerin yanıtını bekleyeceksiniz, moderatörün yukarıda söylediklerini dinleyin. Bu konuyu en başından itibaren tekrar düşünceli bir şekilde tavsiye ediyor ve tekrar okuyorum.

Moderatör tarafından yapılan bu gönderiye dikkat edin, örneğin: https://www.mql5.com/ru/forum/68180#comment_2089395, alıntı yaptığı yer:

 if (prev_calculated== 0 )   // значит история изменилась или это первый проход

Ne de olsa, kendim de dahil olmak üzere, diğerleri gibi, iki mesajımda size bunun yanı sıra başka bir şey hakkında imalarda bulundum: https://www.mql5.com/en/forum/68180/page3#comment_2095342

Orada ortaya çıkan Belgelere bakın (yalnızca orada seçilen ifadenin bir parçası olarak değil, aynı zamanda metnin tamamında).

Acele etmeyin lütfen, o zaman bu probleminizi çözmek için her şey sizin için işe yarayacaktır. İyi şanlar!

 
Dina Paches :

Acele etmeyin lütfen.

Bu arada geliştiricilerin yanıtını bekleyeceksiniz, moderatörün yukarıda söylediklerini dinleyin. Bu konuyu tekrar okumanı tavsiye ederim.

Moderatör tarafından yazılan bu gönderiye dikkat edin, örneğin: https://www.mql5.com/ru/forum/68180#comment_2089395, alıntı yaptığı yer:

Ne de olsa, kendim de dahil olmak üzere, diğerleri gibi, iki mesajımda size bunun yanı sıra başka bir şey hakkında imalarda bulundum: https://www.mql5.com/en/forum/68180/page3#comment_2095342

Orada sonuçlanan Belgelere bakın.

Acele etmeyin lütfen, o zaman bu probleminizi çözmek için her şey sizin için işe yarayacaktır. İyi şanlar!

Çözüm kodunuz var mı?

Yoksa TF'yi değiştireceğimden ve tasarımınızın da işe yaramayacağından mı korkuyorsunuz? Sorun değil, burada GENEL bir sorunu çözüyoruz.

 
Vasyl Nosal :

Çözüm kodunuz var mı?

Yoksa TF'yi değiştireceğimden ve tasarımınızın da işe yaramayacağından mı korkuyorsunuz? Sorun değil, burada GENEL bir sorunu çözüyoruz.

Yine de bu yazıda verdiğim tavsiyeyi kullanmanızı öneririm: https://www.mql5.com/ru/forum/68180/page4#comment_2097011

Ve benim için çözümlerim var.

Kendine - bensiz devam edecek kadar kibar ol. Genel yön hakkında bir ipucu (bkz. önceki_hesaplanan ve oranlar_toplam) burada çeşitli kişiler tarafından size birçok kez verilmiştir.

Bana yöneltilen kendi varsayımınıza göre, size söylenen aşağıdakileri fark etmediğinize inanıyorum:

Uygulama, görevlere bağlı olarak farklı olabilir. Nüanslar farklı olabilir. Başkalarının bunu çeşitli koşullara bağlı olarak nasıl uyguladığını görebiliyor musunuz? Dahil olmak üzere ve bir çıktı yardımıyla, görevlere bağlı olarak sizin için kabul edilebilir olan seçenekleri belirleyin, karar verin, biçimlendirin?

Muhtemelen Victor Nikolaev'in gönderisini fark etmemişsinizdir: https://www.mql5.com/ru/forum/68180/page2#comment_2091839

kafan var mı Orada.

Sorununuzla ilgilenmek ister misiniz? Bir şeye benziyor.

Yani isterseniz ve ihtiyaç duyarsanız, farklı programlar için çözümlerinizi kendiniz görüntüleyebilir ve çıktısını alabilirsiniz.

Ben veya bu başlıktaki herhangi biri size daha ayrıntılı bir şey sağlamak zorunda mıyım? Numara.


 
Dina Paches :

...


Çözüm kodunuz var mı?