Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 84

 
lobo :

Soru: Sinyallerin gelmemesi için neyi ve nerede kurulur? Sinyallerin hiçbirine abone olmadım.


+ ve terminaldeki sinyaller sekmesini devre dışı bırakın.

 
sergeev :

+ ve terminaldeki sinyaller sekmesini devre dışı bırakın.


"Uyarılar" sekmesinin bağlam menüsü etkin değil, orada yalnızca "oluşturabilirsiniz". "Sinyaller" sekmesinde yalnızca gelen sinyalleri görebilir, abonelikten çıkamaz veya silemezsiniz ???
 

Tünaydın!

mql5'i bulmaya ve sürüm 4'ten bir uzmanı yeniden yazmaya çalışıyorum ve birkaç soruyla karşılaştım:

1. Derleyici, değişken atanmış olmasına rağmen if (fcorH== 1 ) countH=cH; satırına 'cH' - bildirilmemiş tanımlayıcı yazar. Amaç ne?

             if (fdelH== 0 )                                   // проверить на близость при отсутствии уровня в массиве удаленных
               {
                 int cH=countH- 1 ;                             // предыдущее значение счетчика
                ...
                fcorH= 1 ;                                     // перезапись уровня в массиве
               }
             if (f1== 0 )                                       // если занесение хая в массив разрешено
               {
                 if (fcorH== 1 ) countH=cH;                     // если разрешена перезапись уровня, то счетчик отматывается на один назад
                ...
               }

2. Farklı bir TimeRes değişkeni ile aynı hikaye:

   for ( int y2= 0 ;y2<finish;y2++)                           // поиск ближайших уровней
      {
       double Level=SupRes[y2][ 0 ];                       // выбор проверяемого уровня
       double rL=Level-Bid;                               // разность цены и уровня
       if ((rL<dPlus && rL> 0 ) || (rL> 0 && dPlus== 0 ))       // при наличии положительной разницы
         {
          dPlus=rL;                                       // фиксировать ее
          Res= NormalizeDouble (SupRes[y2][ 0 ], _Digits );     // уровень сопротивления
           datetime TimeRes=SupRes[y2][ 1 ];                 // время сопротивления
         }
      }
   ObjectSetInteger ( 0 ,oRes, OBJPROP_TIME ,TimeRes);         // отрисовка ближайшего сопротивления

Ancak bunun yanında ikinci örnekte "tür dönüşümü nedeniyle olası veri kaybı " uyarısı datetime TimeRes=SupRes[y2][ 1 ] satırında çıkıyor;

Global düzeydeki dizi bu biçimde bildirilir - double SupRes[2];

Lütfen bu hataları ve uyarıları düzeltmek için ne yapılması gerektiğini söyleyin?

 
WindSW :

Tünaydın!

mql5'i bulmaya ve sürüm 4'ten bir uzmanı yeniden yazmaya çalışıyorum ve birkaç soruyla karşılaştım:

1. Derleyici, değişken atanmış olmasına rağmen if (fcorH== 1 ) countH=cH; satırına 'cH' - bildirilmemiş tanımlayıcı yazar. Amaç ne?

2. Farklı bir TimeRes değişkeni ile aynı hikaye:

Her iki durumda da, koşul/döngü içindeki değişkeni bildiriyorsunuz, yani. koşul sağlanmazsa değişken tanımlanmaz.

Değişkenlerin tanımını fonksiyonun en üstüne taşıyın veya onları global yapın.

Ancak bunun yanında ikinci örnekte "tür dönüşümü nedeniyle olası veri kaybı " uyarısı datetime TimeRes=SupRes[y2][ 1 ] satırında çıkıyor;

Global düzeydeki dizi bu biçimde bildirilir - double SupRes[2];

Lütfen bu hataları ve uyarıları düzeltmek için ne yapılması gerektiğini söyleyin?

Peki, ya bir türe atılır

 datetime TimeRes=( datetime )SupRes[y2][ 1 ];
veya başlangıçta bir dizi ve aynı türden bir değişken tanımlayın.
 
fyords :

Her iki durumda da, koşul/döngü içindeki değişkeni bildiriyorsunuz, yani. koşul sağlanmazsa değişken tanımlanmaz.

Değişkenlerin tanımını fonksiyonun en üstüne taşıyın veya onları global yapın.

cH ve TimeRes değişkenleri için "başlatılmamış değişkenin olası kullanımı" uyarıları varken değişkenlerin tanımını yayınladı.

Bununla ne yapmalı ve datetime TimeRes=SupRes[y2][1]'deki "tür dönüştürme nedeniyle olası veri kaybı " uyarısıyla ne yapmalı; ???

 
WindSW :

Değişkenlerin tanımı yayınlandı ve "başlatılmamış değişken 'cH' olası kullanımı" uyarısı oluştu.

İyice çıkardılar ama bir başlangıç değeri mi verdiler?

 int cH= 0 ;
Sonuçta, kod değeri okur ve orada hiçbir şey yoksa, o zaman ne okunabilir. İşte uyarı.
 
fyords :

Peki, ya bir türe atılır

veya başlangıçta bir dizi ve aynı türden bir değişken tanımlayın.
Ancak, dizinin double şeklinde seviyeler içermesi ve bu seviyelerin zamanını da datetime şeklinde içermesi gerekiyorsa, bir diziyi ve aynı türden bir değişkeni nasıl tanımlayabilirsiniz?
 
fyords :

tarihsaat ZamanRes=(tarihsaat)SupRes[y2][1];

Teşekkürler, ipuçlarınız yardımcı oldu. Ve bu tür tanımları hakkında (datetime)SupRes[y2][1]; nerede okuyabilirim?
 
WindSW :
Ancak, dizinin double şeklinde seviyeler içermesi ve bu seviyelerin zamanını da datetime şeklinde içermesi gerekiyorsa, bir diziyi ve aynı türden bir değişkeni nasıl tanımlayabilirsiniz?

Bu durumda 2a dizisine ihtiyacınız olacak: double ve datetime.

Ve seviye bulunup ilk diziye yazılır yazılmaz , zamanı alıp ikinci diziye yazmanız gerekecek.

 
WindSW :
Teşekkürler, ipuçlarınız yardımcı oldu. Ve bu tür tanımları hakkında (datetime)SupRes[y2][1]; nerede okuyabilirim?

Döküm