[ARŞİV] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 3. - sayfa 243

 
maksimum kayma değeri nedir?
 
joo :
Farklı projeler denedim - aynı sorun.
Bir .def dosyası ekleyin. Bu açıdan MT5'te MT4'ten ve daha iyisi için birçok farklılık vardır.
 
TheXpert :
Bir .def dosyası ekleyin. Bu açıdan MT5'te MT4'ten ve daha iyisi için birçok farklılık vardır.

Eklendi, yardımcı olmadı.

 

Herkese selam. Bana bir int değişkenini bir dizgeye nasıl dönüştüreceğimi söyle, böylece dizgenin uzunluğu her zaman aynı olur - 2 karakter (sadece bende farklı var ve iki basamaklı ve tek basamaklı olabilir, bu can sıkıcı bir durum ). Hangisinden dans edeceğimi tavsiye edin, kesin bir çözüm istemiyorum :) Şimdiden teşekkürler.


Not: Prensipte, (eğer x < 10 ise) yapabilir ve sola sıfır ekleyebilirsin, ama belki bir tür yerleşik veri dönüştürme işlevi vardır?

 
joo :

Eklendi, yardımcı olmadı.

Muhtemelen kötü eklendi.
 

Arkadaşlar, mantığımda yanlış olan ne söyleyin...

Öz:

 bool signal_MACD() 
  { 
     bool signal_MACD = false; //изначально сигнал стоит false
     double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); //это текущий бар MACD
     for ( int i= 1 ;i<= 7 ;i++) //цикл for первый
    { 
       for ( int j= 2 ;j<= 7 ;j++) //цикл for второй (я подозреваю, что именно в for у меня ошибка)
      {
             if (( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN,j)*tmp)> 0.0 ) //если текущий бар MACD находится по одну сторону с одним из баров MACD, сдвинутых на 2 назад
            { 
               if (( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN,i)*tmp)< 0.0 ) //если текущий бар MACD находится по разные стороны с одним из баров MACD, сдвинутых на 1 назад

              {
            
                 signal_MACD = true; 
                 break ; 
            
              }   
            } 
      }      
    } 
     return (signal_MACD);
  } 

yani MACD, 0'ın bir tarafındaydı, sonra diğer taraftaydı ve tekrar geri döndü. MACD sıfır çizgisini aşıyor ve geri geliyor gibi görünüyor... ama strateji test cihazında bu yaklaşmıyor bile... soru şu ki... neden?

 
nadya :
maksimum kayma değeri nedir?

Ne kadara ihtiyacın var?


piro :

Herkese selam. Bana bir int değişkenini bir dizgeye nasıl dönüştüreceğimi söyle, böylece dizgenin uzunluğu her zaman aynı olur - 2 karakter (sadece bende farklı var ve iki basamaklı ve tek basamaklı olabilir, bu can sıkıcı bir durum ). Hangisinden dans edeceğimi tavsiye edin, kesin bir çözüm istemiyorum :) Şimdiden teşekkürler.


Not: Prensipte, (eğer x < 10 ise) yapabilir ve sola sıfır ekleyebilirsin , ama belki bir tür yerleşik veri dönüştürme işlevi vardır?

Ben her zaman sadece bunu yaparım.
 
nemo811 :
Ve ben gülmüyorum...

Sadece günün farklı saatlerinde ve farklı günlerde yayılma büyük ölçüde değişebilir. yani komik değil
 
prorab :

<indicator.mq4> dosyası düzenlenirken bir şey yaptım, ya bir yere taşıdım ya da farklı bir adla kopyaladım, ancak derlemeden sonra terminal göstergeleri listesinde ad gri ve etkin değil.

Ancak, göstergeye pencerenin sol bölmesindeki yan menü aracılığıyla "liste ağacı"ndan erişilebilir ve grafiğin üzerine sürüklenebilir.

Bunu yaşayan varsa, durumu nasıl düzeltebileceğimi söyleyebilir mi?

Samimi olarak.

İnanmayacaksın!

Nedeni en banal olan çıktı: - <indicators> klasöründe çok fazla gösterge var!!!

Gereksiz *.mq4'ü <Arxiv>'e aktardığımda, klasördeki göstergelerin sayısını 2/3 oranında azalttım, her şey çalıştı.

Kim düşünebilirdi?

 
CLAIN :

Arkadaşlar, mantığımda yanlış olan ne söyleyin...

Öz:

yani MACD, 0'ın bir tarafındaydı, sonra diğer taraftaydı ve tekrar geri döndü. MACD sıfır çizgisini aşıyor ve geri geliyor gibi görünüyor... ama strateji test cihazında bunun yanına bile yaklaşmıyor... soru şu ki... neden?

 for ( int i= 1 ;i<= 7 ;i++) //цикл for первый
    { 
       for ( int j= 2 ;j<= 7 ;j++) //цикл for второй (я подозреваю, что именно в for у меня ошибка)

bundan sonra i ve j değerlerini yazdırın ve ne olduğunu görün

Sanırım ikinci döngüyü düzeltmemiz gerekiyor

 for ( int j= i+1 ;j<= 7 ;j++)