Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 37

 
2 terminalin çalıştığı net değil. Görev görüntüleyicide 3 terminal görüyorum.
 
Dimka-novitsek :
2 terminalin çalıştığı net değil. Görev görüntüleyicide 3 terminal görüyorum.
Belki ayna çarpıktır?
 

Lütfen söyleyin, programın tüm sayılmayan çubuklardan bir değil, iki kez geçmesi gereken bir gösterge yapıyorum:

Bir arabelleğin geri sayımı geçti, hat kuruldu. Ardından, ilk tamponun hesaplanmasına bağlı olarak ikinci tampon hesaplanır - ikinci satır oluşturulur.Bu nasıl organize edilir?

Ve ne zaman, IndicatorCounted() tarafından döndürülen sayı değişir - özelden çıkış anında. Başlatma işlevinde mi yoksa işlevin gövdesindeki hesaplamalar sırasında mı değişiyor?

Bu şekilde çubuklardan iki kez geçmek mümkün müdür:

Counted_bars=IndicatorCounted();

i=Barlar - Counted_bars-1;

while(i>=0) //-------İlk geçiş

{

Buf_1[i]=A(hesaplamalar);

ben--;

}

Counted_bars=IndicatorCounted();

i=Barlar - Counted_bars-1;

while(i>=0) //-------İkinci geçiş

{

Buf_2[i]=Buf_1[i]+x;

ben--;

}

 
Trendy :

Lütfen söyleyin, programın tüm sayılmayan çubuklardan bir değil, iki kez geçmesi gerektiğini gösteren bir gösterge yapıyorum:

Bir arabelleğin geri sayımı geçti, hat kuruldu. Ardından, ilk tamponun hesaplanmasına bağlı olarak ikinci tampon hesaplanır - ikinci satır oluşturulur.Bu nasıl organize edilir?

Ve IndicatorCounted() tarafından döndürülen sayı hangi anda değişir - özelden çıkış anında. Başlatma işlevinde mi yoksa işlev gövdesindeki hesaplamalar sırasında değişiyor mu?

Bu şekilde çubuklardan iki kez geçmek mümkün müdür:

Soru sormak için aceleniz yok. Bunu yapmanıza kim engel oluyor:

 Counted_bars=IndicatorCounted();
  
   i= Bars - Counted_bars- 1 ;
   Print ( "Bar(1) " , i);
   while (i>= 0 )                           //--------Первый проход

     {

         Buf_1[i]=A(расчёты);

       i- -;

      }

Counted_bars=IndicatorCounted();
  
   i= Bars - Counted_bars- 1 ;
   Print ( "Bar(2) " , i);
   while (i>= 0 )                         //--------Второй проход

    {

      Buf_2[i]=Buf_1[i]+x;

      i--;

      }

bu, DOĞRU cevabı almanın ve başka birinin saçma sapan saçmalıklarını dinlememenin en kolay yoludur ... (çoğu durumda) :))

PS Çoğu durumda, bir döngü yeterlidir.

 
Bir grafiği (arka plan, metin, çubuklar, vb.) programlı olarak nasıl renklendirebilirim?
 

Optimizasyonu başlatırım , bir geçiş yapar ve bu kadar. Optimizasyonun test kullanıcısı için çalışmaması sorunu ne olabilir? Danışman kodunda optimizasyon için kod yazmam gerekiyor mu?

 

Lütfen söyleyin, EA int GetSignal() işlevini kullanır, bu da: 1 - al sinyali, -1 - sat sinyali, 0 - sinyal yok.

Tarihte bir çubuğu kapatmak için sinyalleri görmek için bir gösterge nasıl yapılır? (daha sonra karşılaştırmak ve başka bir platformun göstergesi için Excel'e çıktı)

Muhtemelen, i mumunun parametreleri fonksiyona iletilmelidir?

Belki bu tartışıldı ve bir çözüm var mı?

 
pa0905 :

Lütfen söyleyin, EA int GetSignal() işlevini kullanır, bu da: 1 - al sinyali, -1 - sat sinyali, 0 - sinyal yok.

Ram geçmişini kapatmak için sinyalleri görmek için bir gösterge nasıl yapılır? (daha sonra karşılaştırmak ve başka bir platformun göstergesi için Excel'e çıktı)

Muhtemelen, i mumunun parametreleri fonksiyona iletilmelidir?

Belki bu tartışıldı ve bir çözüm var mı?

Tarih koçu?! Bu harika!
 
_new-rena :
Bir grafiği (arka plan, metin, çubuklar, vb.) programlı olarak nasıl renklendirebilirim?

bakmak
Dosyalar:
servicesmt4.mqh  106 kb
 
pako :

bakmak
yok. Bunu sınıfta sağladım ama kütüphanede uygulamadım. Gerekirse yaparım.
Neden: