[ÇÖZÜLDÜ] Göstergeler, farklı çalışma zaman çerçevesine sahip bir Göstergeden çağrıldıklarında/oluşturulduklarında düzgün şekilde başlatılmıyor. - sayfa 4

 
nicholishen :

...

Tüm yardımlarınız için özellikle teşekkür etmek istiyorum... lütufkarlığınız olmasaydı, çabalamak için motivasyonu nerede bulurdum bilmiyorum! /s

Burada senin gibi onlarca insan gördüm. Her şeyi diğerlerinden daha iyi bilirler, dinlemezler, kendi hatalarını başkalarına yüklerler (başka bir kullanıcı, moderatör, komisyoncu, platform, Metaquotes, işletim sistemi veya her neyse...).

Görünüşe göre burada hiçbir şey öğrenmiyorsun. Bu bir hata DEĞİL, geliştiriciler platformlarını böyle tasarladı. Neden bug dediğinizi anlıyorum, MT5'i ve nasıl çalıştığını yıllar önce keşfettim. Bunu aklında bulundurur ve kabul edersen, sorunun ne olduğunu çok daha erken göreceksin: yaklaşımın ve anlayışın.

Ama değil, hala bunun bir "hata" veya "büyük bir kusur" olduğunu söylemeye devam ediyorsunuz, bu çok saçma. Asenkron işlev davranışını kullanan MT5 mimarisi, bu platformu MT4'ten çok daha hızlı yapan şeydir, elbette bununla başa çıkmak her zaman kolay değildir. Buradaki ana Metaquotes hatası, eksik, anlaşılmaz veya eksik dokümantasyondur.

Bir şeyi anlamadığınızda, diğerlerini (örneğin Stanislav ve ben) dinlemeli ve size yardım etmeye çalışan insanlara kesinlikle hakaret etmemelisiniz.

 
Alain Verleyen :

Burada senin gibi onlarca insan gördüm. Her şeyi diğerlerinden daha iyi bilirler, dinlemezler, kendi hatalarını başkalarına yüklerler (başka bir kullanıcı, moderatör, komisyoncu, platform, Metaquotes, işletim sistemi veya her neyse...).

Görünüşe göre burada hiçbir şey öğrenmiyorsun. Bu bir hata DEĞİL, geliştiriciler platformlarını böyle tasarladı. Neden bug dediğinizi anlıyorum, MT5'i ve nasıl çalıştığını yıllar önce keşfettim. Bunu aklında bulundurur ve kabul edersen, sorunun ne olduğunu çok daha erken göreceksin: yaklaşımın ve anlayışın.

Ama değil, hala bunun bir "hata" veya "büyük bir kusur" olduğunu söylemeye devam ediyorsunuz, bu çok saçma. Asenkron işlev davranışını kullanan MT5 mimarisi, bu platformu MT4'ten çok daha hızlı yapan şeydir, elbette bununla başa çıkmak her zaman kolay değildir. Buradaki ana Metaquotes hatası, eksik, anlaşılmaz veya eksik dokümantasyondur.

Bir şeyi anlamadığınızda, diğerlerini (örneğin Stanislav ve ben) dinlemeli ve size yardım etmeye çalışan insanlara kesinlikle hakaret etmemelisiniz.

Tüm göstergeleri, bir zamanlayıcı ayarlamaktan başka bir sonraki yinelemeyi yinelemeli olarak çağırmak için bir yöntem olmadan tek bir iş parçacığında çalıştırmak bir kusurdur. Hız hakkında konuşmak ister misin? İşlemi tekrar sıraya koymak yerine, geçici bir çözüm için fazladan bir ms harcadım. Muhtemelen dünyanın sonu değil, ancak yine de bir geçici çözüm gerektiriyor. Geçici çözümü ve platformun kısıtlaması göz önüne alındığında bunun neden gerekli olduğunu anlamama yardımcı olanlara çok minnettarım. Yine de, tartışmaya küçümseme dışında ne getirdiğinizi anlamaya çalışıyorum.
 
nicholishen :
Tüm göstergeleri, bir zamanlayıcı ayarlamaktan başka bir sonraki yinelemeyi yinelemeli olarak çağırmak için bir yöntem olmadan tek bir iş parçacığında çalıştırmak bir kusurdur. Hız hakkında konuşmak ister misin? İşlemi tekrar sıraya koymak yerine, geçici bir çözüm için fazladan bir ms harcadım. Muhtemelen dünyanın sonu değil, ancak yine de bir geçici çözüm gerektiriyor. Geçici çözümü ve platformun kısıtlaması göz önüne alındığında bunun neden gerekli olduğunu anlamama yardımcı olanlara çok minnettarım. Yine de, tartışmaya küçümseme dışında ne getirdiğinizi anlamaya çalışıyorum.

Seni çok agresif buluyorum. En başından beri, MT5 ile yılların deneyiminden yola çıkarak size neler olduğunu açıklamaya çalışıyordum. Küçümsemiyorum, yetenekli ve deneyimliyim ve (herkes gibi) saygıyı hak ediyorum. Bu sadece 14. gönderiden, yeni bir onay işareti olmadan çalışmasını istediğinizi görüyorum, ancak aynı gönderide "öfkeyle" kelimenizin saldırısına uğradım, bu yüzden vazgeçtim.

Her neyse, konu kapandı, beni yeni bir şeyler öğrenmeye zorladığınız için teşekkürler.

 

Bunun için yıllardır kafamı kaşıyordum.

Bu sorunla karşılaşan başka biri için basit bir iş var gibi görünüyor.

OnCalculate'i ilk kez ne zaman çalıştırdığımızı belirlemek için bir modül seviyesi değişkeni (RunOnce) ekleyin. Bu ilk çalıştırmada sıfır döndürün ve daha fazla kesintiyi önlemek için değişkeni true olarak ayarlayın.


 bool RunOnce = false ;

int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[]) {
               
   if (rates_total == prev_calculated) return (rates_total);
   if (!RunOnce) {
      RunOnce = true ;
       return ( 0 );
   }
  
REST OF YOUR CODE HERE.


Benim için çok iyi oldu, umarım size de yardımcı olur.

[SOLVED]Indicators are not properly instantiated when called/created from an Indicator of different working time-frame.
[SOLVED]Indicators are not properly instantiated when called/created from an Indicator of different working time-frame.
  • 2017.01.30
  • www.mql5.com
UPDATE: See the workaround below CopyBuffer() throws an error of 4806 (Indicator data not accessible) when calling an indicator with a different Ti...
 
çözüm için tskler
Neden: