Hatalar, hatalar, sorular - sayfa 378

 

Neden "if(ichi.TenkanSen(i) < ichi.KijunSen(i))" ifadesi, "if(ichi.TenkanSen(i) > ichi.KijunSen(i)) olsa bile, HER ZAMAN (tüm mumlarda) false döndürür. "? Standart kütüphanede bir aksaklık gibi görünüyor. Dosyadaki tam kod.

 Comment ( DoubleToString (ichi.TenkanSen( 0 ), 5 ));

euro-dolar ekranlarında

Dosyalar:
Ich_1.mq5  3 kb
 
Graff :

Neden "if(ichi.TenkanSen(i) < ichi.KijunSen(i))" ifadesi, "if(ichi.TenkanSen(i) > ichi.KijunSen(i)) olsa bile, HER ZAMAN (tüm mumlarda) false döndürür. "? Standart kütüphanede bir aksaklık gibi görünüyor. Dosyadaki tam kod

İlk olarak, TerminalInfoInteger(TERMINAL_MAXBARS) - bu mümkün değildir.

Rates_total ile değiştir


ikincisi, evet, bir tür hata, m_data_total her zaman = 0. Bu nedenle, değerler yoktur.

 
sergeev :

İlk olarak, TerminalInfoInteger(TERMINAL_MAXBARS) - bu mümkün değildir.

oranları_toplam ile değiştirin

for(int i=0; i<=rates_total-1; i++) ile değiştirildi, aslında hiçbir şey değişmedi. çalışmamış gibi, çalışmıyor.
 
ikincisi, evet, bir tür hata, m_data_total her zaman = 0. Bu nedenle, değerler yoktur.
 
sergeev :

ikincisi, evet, bir tür hata, m_data_total her zaman = 0. Bu nedenle, değerler yoktur.
Comment( DoubleToString (ichi.TenkanSen(3),5)); içindeki değerleri değiştirmeye çalıştım. 1,2,3'te Yorumda aynı şey her zaman görüntülenir. Çalışması için ne ayarlayacağımı söyleyebilir misin, yoksa resmi bir düzeltmeyi beklemenin bir yolu yok.
 
Graff :
Comment(DoubleToString(ichi.TenkanSen(3),5)); içindeki değerleri değiştirmeye çalıştım. 1,2,3'te Yorumda aynı şey her zaman görüntülenir. Çalışması için ne ayarlayacağımı söyleyebilir misin, yoksa resmi bir düzeltmeyi beklemenin bir yolu yok.
bu sınıfı kullanmayın. Normal bir kol alın.
 
sergeev :
bu sınıfı kullanmayın. Normal bir kol alın.

Kullanımı pek uygun değil...

Tamam, ilginiz için teşekkürler, düzeltmeyi bekliyorum.

 
Graff :

Kullanımı pek uygun değil...

Tamam, ilginiz için teşekkürler, düzeltmeyi bekliyorum.

senin için uygun değil mi? :)

 int ich;

//+------------------------------------------------------------------+
int OnInit ()
  {
   ich= iIchimoku ( _Symbol , _Period , TenkanSen, KijunSen, SenkoSpan);
   return ( 0 );
  }
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
    IndicatorRelease (ich);
  }
//+------------------------------------------------------------------+
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[])
  {
   double ten[]; CopyBuffer (ich, 0 , 0 , rates_total, ten);
   double kij[]; CopyBuffer (ich, 1 , 0 , rates_total, kij);
   for ( int i= 0 ; i<rates_total; i++)
     {
       if (ten[i]<kij[i]) { up.Create( 0 , "Tenkan>Kijun" + IntegerToString (i), 0 ,time[i],low[i]); up.Color( clrLimeGreen ); }
       else { down.Create( 0 , "Tenkan<Kijun" + IntegerToString (i), 0 ,time[i],high[i]); down.Color( clrTomato ); }
     }
   return (rates_total);
  }
 
sergeev :

senin için uygun değil mi? :)


Ben bir programcı değilim ve bu durumda pek rahat değilim.

ve mantıklı mı

 CopyBuffer (ich, 1 , 0 , rates_total, kij);

oranları_toplam BarsCalculated (ich) ile değiştirilsin mi?

Not: Gizli değilse hangi şehirdensin?

 
Graff :


Tamam, ilginiz için teşekkürler, düzeltmeyi bekliyorum.

Bu arada, herhangi bir ek fonksiyon çağırmanız gerekmediğinden emin misiniz?

kitaplıkta hem Refresh hem de BufferResize vardır . Bana öyle geliyor ki normal işleyiş için gerekliler.