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

 

Hepiniz hoşgeldiniz ! Hepinize şimdiden teşekkürler!

Bu tür bir hata:

bir çizgi var   Dizide aradığımız Low_D1_Level göreli   Bar_data_D1[][6]; yeni seviye   Min_D_Seviye

//---   küresel değişkenler

çift Low_D1_Level;

çift Bar_data_D1[][6]; // Belirtilen grafiğin çubuklarının verilerini diziye kopyalar ve kopyalanan çubukların sayısını D1 döndürür

Dizinin ilk boyutu çubuk sayısını içerir. İkinci boyutun değerleri olan 6 öğesi vardır:

0 - zaman (zaman),
1 - açılış fiyatı (açık),
2 - en düşük fiyat (düşük),
3 - en yüksek fiyat (yüksek),
4 - kapanış fiyatı (kapanış),
5 - hacim.

 //+------------------------------------------------------------------+
//|                        Функция Level 
//+------------------------------------------------------------------+
void Level() 
ArrayCopyRates(Bar_data_D1, _Symbol , PERIOD_D1 ); // Копирует в массив данные баров указанного графика и возвращает 
Low_D1_Level   = iLow ( _Symbol , PERIOD_D1 , 1 );   // Возвращает значение минимальной цены бара  D1
//--- Min_D_Leve  
 for ( int i = 1 ; 0 <= Bar_data_D1 [i][ 2 ] ;i++)
    {
     Print ( " i = " ,i, " Bar_data_D1 [i][2] = " ,Bar_data_D1 [i][ 2 ]);
     if ( Bar_data_D1 [i][ 2 ] < Low_D1_Level)
       {
        Min_D_Level = Bar_data_D1 [i][ 2 ]; break ;
       }
    } 
//---

Yazdır

 2020.12 . 09 15 : 19 : 29.109 2016.12 . 16 00 : 00 : 00   _Test EURUSD,H1:  i = 998 Bar_data_D1 [i][ 2 ] = 1.3364
2020.12 . 09 15 : 19 : 29.109 2016.12 . 16 00 : 00 : 00   _Test EURUSD,H1:  i = 999 Bar_data_D1 [i][ 2 ] = 1.33562
2020.12 . 09 15 : 19 : 29.109 2016.12 . 16 00 : 00 : 00   _Test EURUSD,H1:  i = 1000 Bar_data_D1 [i][ 2 ] = 1.33532
2020.12 . 09 15 : 19 : 29.109 2016.12 . 16 00 : 00 : 00   _Test EURUSD,H1:  i = 1001 Bar_data_D1 [i][ 2 ] = 1.33705
2020.12 . 09 15 : 19 : 29.109 2016.12 . 16 00 : 00 : 00   _Test EURUSD,H1: array out of range in '_Test.mq4' ( 451 , 34 )
2020.12 . 09 15 : 19 : 29.110 2016.12 . 16 00 : 00 : 00   Testing pass stopped due to a critical error in the EA
2020.12 . 09 15 : 19 : 29.110 EURUSD,H1: 136637 tick events ( 25 bars, 63904705 bar states) processed in 0 : 00 : 17.844 (total time 0 : 00 : 24.547 )
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
Документация по MQL5: Основы языка / Переменные / Глобальные переменные
  • www.mql5.com
Глобальные переменные создаются путем размещения их объявлений вне описания какой-либо функции. Глобальные переменные определяются на том же уровне, что и функции, т. е. не локальны ни в каком блоке. Область видимости глобальных переменных - вся программа, глобальные переменные доступны из всех функций, определенных в программе...
 
Aliaksei Karalkou :
Lütfen yardım et.

Her şeyi denedim ama yine de 130 hatası veriyor.

Her şey benim için çalışıyor, hata yok

 

Strateji test edicide, 2016.12.15'ten çalıştırın.

 2016.12 . 16
 
MakarFX :

Her şey benim için çalışıyor, hata yok

Optimizasyonu çalıştırın . Optimizasyon, Kritik Hata mesajıyla kesintiye uğradı

 
Aliaksei Karalkou :
Lütfen yardım et.

Her şeyi denedim ama yine de 130 hatası veriyor.

yardımdan

 
Dark Kchlyzov :

Döngünün nasıl bittiğini anlamıyorum?

 for ( int i = 1 ; 0 <= Bar_data_D1 [i][ 2 ] ;i++)

Teoride, dizinin son elemanı olmalıdır. Değil?

Ve sonra eşitsizliği kontrol edin

 for ( int i = 0 ; i< ArrayRange (Bar_data_D1, 0 ) ;i++)
   {
   if (Bar_data_D1 [i][ 2 ]>= 0 )
      {
      
      }
   }
O zaman dizinin ötesine geçmenin sürprizleri olmayacak
 
Aliaksei Karalkou :

Optimizasyonu çalıştırın . Optimizasyon, Kritik Hata mesajıyla kesintiye uğradı

12/01/2016 tarihinden bugüne optimizasyon ile hata yok


 

sakıncası yoksa https://www.mql5.com/ru/forum/357558 adresine gidin

hepsi ayrıntılı

Array out of range in Нужна Помощь
Array out of range in Нужна Помощь
  • 2020.12.09
  • www.mql5.com
Приветствую Всех ! Заранее всем спасибо...
 
Dark Kchlyzov :


yazımı güncelledim
 
Aleksei Stepanenko :

Döngünün nasıl bittiğini anlamıyorum?

Teoride, dizinin son elemanı olmalıdır. Değil?

Ve sonra eşitsizliği kontrol edin

O zaman dizinin ötesine geçmenin sürprizleri olmayacak
Alexey Stepanenko :

Döngünün nasıl bittiğini anlamıyorum?

Teoride, dizinin son elemanı olmalıdır. Değil?

Ve sonra eşitsizliği kontrol edin

O zaman dizinin ötesine geçmenin sürprizleri olmayacak

Tamam anladım hemen deneyeceğim

Teşekkür ederim!