MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 895

 
lil_lil :

Pek değil, test için kullanışlı olmasına rağmen. Expert Advisor eklendikten sonra göstergenin çevrimiçi grafiğe eklenmesini istiyorum. Belki?

Denemedim. Teoride, çalışması pek olası değildir. Belki de bu yüzden henüz denemedim. Danışmanın her yüklenmesinde, danışmanın yeniden başlatıldığı bir şablon uygulandığı ortaya çıktı. Ve her şey tekrarlanır, şablon uygulanır, Expert Advisor'ın yeni bir kopyası başlatılır, vb.

Belki daha iyidir, gerçekten istiyorsanız, dişlerinizi küçültmesini istiyorsanız, bir danışman ve göstergeler içeren bir şablon uygulayacak bir komut dosyası yapın.

 
Katıldığınız için hepinize teşekkür ederim. İnternette global terminalde ChartApplyTemplate () öğesini çağırmaya ve bir değişkene bir değer atamaya çalışacağım, ancak ChartApplyTemplate() öğesini çağırmadan önce değerini kontrol edeceğim.
 

Hey,

Her PERIOD_M1 için 30 onay işareti kullanarak nasıl çubuk oluşturabilirim?

Analizim için yeni bir karakter yaratmak istiyorum.

 
Merhaba! Lütfen sorunu çözmeme yardım edin, yapamam. Sembol 1'in aktif grafiği üzerinde çalışan Uzman Danışman kodunda, sembol 2'nin aktif grafiği DEĞİL başka bir yatay çizgi çizmek için gereklidir. Bu, 2 sembolünün grafiğinin ekranda açık olduğu anlamına gelir. Örneğin, ikinci SUI30 karakteri için şunu yaptım:
 double SUop0 = iOpen ( "SUI30" , PERIOD_H1 , 0 );
double lp = SUop0- 67 ;
double hp = SUop0+ 67 ; 

   Fun_New_Bar();
       if (New_Bar)      
         {
   ObjectCreate ( "SUI30" , "lineForBuy" , OBJ_HLINE , 0 , 0 ,lp);
   ObjectCreate ( "SUI30" , "lineForSell" , OBJ_HLINE , 0 , 0 ,hp);
         }
ancak meta düzenleyici, mesajın 'dize'den 'sayıya' örtük dönüşümünü verir. Benim sorunum nedir ve nasıl çözülür? Teşekkür ederim.

 
novichok2018 :
Merhaba! Lütfen sorunu çözmeme yardım edin, yapamam. Sembol 1'in aktif grafiği üzerinde çalışan Uzman Danışman kodunda, sembol 2'nin aktif grafiği DEĞİL başka bir yatay çizgi çizmek için gereklidir. Bu, 2 sembolünün grafiğinin ekranda açık olduğu anlamına gelir. Örneğin, ikinci SUI30 karakteri için şunu yaptım: ancak meta-düzenleyici 'dize'den 'sayıya' örtülü dönüşüm mesajı veriyor. Benim sorunum nedir ve nasıl çözülür? Teşekkür ederim.

Farklı bir işlev aşırı yüklemesi kullanmanız gerekir.

 bool    ObjectCreate ( 
   long           chart_id,       // идентификатор графика 
   string         object_name,   // имя объекта 
   ENUM_OBJECT    object_type,   // тип объекта 
   int            sub_window,     // индекс окна 
   datetime       time1,         // время первой точки привязки 
   double         price1,         // цена первой точки привязки 
   ... 
   datetime       timeN= 0 ,       // время N-точки привязки 
   double         priceN= 0        // цена N-точки привязки 
   );

Ve bu çizelge tanımlayıcısı ChartFirst();

 long    ChartNext ( 
   long   chart_id       // идентификатор графика
   );

Dokümantasyondan örnek

 //--- переменные для идентификаторов графиков 
   long currChart,prevChart= ChartFirst (); 
   int i= 0 ,limit= 100 ; 
   Print ( "ChartFirst = " , ChartSymbol (prevChart), " ID = " ,prevChart); 
   while (i<limit) // у нас наверняка не больше 100 открытых графиков 
     { 
      currChart= ChartNext (prevChart); // на основании предыдущего получим новый график 
       if (currChart< 0 ) break ;           // достигли конца списка графиков 
       Print (i, ChartSymbol (currChart), " ID =" ,currChart); 
      prevChart=currChart; // запомним идентификатор текущего графика для ChartNext() 
      i++; // не забудем увеличить счетчик 
     }
 
Alexey Viktorov :

Farklı bir işlev aşırı yüklemesi kullanmanız gerekir.

Teşekkürler, anlamaya çalışıyorum.

 
Alexey Viktorov :

Başka bir işlev aşırı yüklemesi kullanmanız gerekiyor

Ve bu çizelge tanımlayıcısı ChartFirst();

Dokümantasyondan örnek

Ne yazık ki, anlama girişimleri hiçbir şeye yol açmadı. Sadece ChartNext() işlevinin kullanımıyla ilgili hatalar zaten var olan mesajlara eklenmiştir. Konuyu anlamıyorum.

 
novichok2018 :

Ne yazık ki, anlama girişimleri hiçbir şeye yol açmadı. Sadece ChartNext () işlevinin kullanımıyla ilgili hatalar zaten var olan mesajlara eklendi. Konuyu anlamıyorum.

İşleri kolaylaştırmak için sabit bir grafik kimliği kullanabilirsiniz. Bir komut dosyası yaz

 Print ( ChartID ());

Bu çizgileri çizmek istediğiniz yerde grafik üzerinde çalıştırın. Ardından bu değeri işleve grafik kimliği olarak besleyin.

Ve iyi olması için, belgelerden bir örnek, bu, alıp kullanmak gibi hazır bir işlev değildir. Yineleme döngüsünde bir sembol ve bir nokta kontrolü yapmak gereklidir. Gerekli olan bulunursa, döngüden çıkış ve alınan tanımlayıcının uygulanması.

 

Plug-in OpenCL'i CL_ bir sabittir ve aldığı 1024 iki kat güç yeniden kontrol # define CL_DBL_MAX 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368,0 olan dosyaları içerir. Hemen sayısı Pi, aşağıdaki 2 ^ 1024 = 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216

sonrasında

#define CL_M_PI 3.141592653589793115998

3.141592653589793238462643383279502884197169

lütfen nedenini açıklar mısınız????

 
Alexey Viktorov :

İşleri kolaylaştırmak için sabit bir grafik kimliği kullanabilirsiniz. Bir komut dosyası yaz

Bu çizgileri çizmek istediğiniz yerde grafik üzerinde çalıştırın. Ardından bu değeri işleve grafik kimliği olarak besleyin.

Ve iyi olması için, belgelerden bir örnek, bu, alıp kullanmak gibi hazır bir işlev değildir. Yineleme döngüsünde bir karakter ve bir nokta kontrolü yapmak gerekir. Gerekli olan bulunursa, döngüden çıkış ve alınan tanımlayıcının uygulanması.

Teşekkür ederim. Senaryo ile her şey yolunda gitti, çizgiler çiziyor.

Neden: