Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1726

 
MakarFX #:
В первую очередь это зависит от индикатора, который рисует фракталы
Каким образом? Я могу узнать, есть ли сигнал на n-ой свече. Но вот как узнать, был ли этот сигнал на промежутке из n свечей?
 
Snajper007 #:
Каким образом? Я могу узнать, есть ли сигнал на n-ой свече. Но вот как узнать, был ли этот сигнал на промежутке из n свечей?

воспользуйтесь циклом. Сделайте перебор n за x баров и узнаете были там сигналы или нет

 
Nikolay Ivanov #:

воспользуйтесь циклом. Сделайте перебор n за x баров и узнаете были там сигналы или нет

К сожалению, я не настолько силён  программировании( Потому и задаю такие нубские вопросы(
 
Snajper007 #:
К сожалению, я не настолько силён  программировании( Потому и задаю такие нубские вопросы(
   int n=10;
   datetime bar_sig;
   for(int i=n;i>=0;i--)
     {
      if(iCustom(NULL,0,"Твой индикатор",0,n)=="Сигнал")
         bar_sig=time[n];
     }
 
Подскажите, пожалуйста, как взять значение свечи много времени назад? То есть, очень далёкого значения. Например, если написать Close[10000], то терминал ругается
 
Ivan Butko #:
Подскажите, пожалуйста, как взять значение свечи много времени назад? То есть, очень далёкого значения. Например, если написать Close[10000], то терминал ругается
Индикатор или советник? Как ругается? Что в журнале?
 
MakarFX #:
Как ругается? Что в журнале? Индикатор или советник?

Советник (учебный, без торговых функций)

EURUSD,M1: array out of range in 'Учебный.mq4' 

extern int    Period_check = 10000;

        

//+------------------------------------------------------------------+


void OnTick()

  {           

    Print("High = ", High[Period_check], ", Low = ", Low[Period_check]);  // тут ошибка EURUSD,M1: array out of range in 'Учебный.mq4' )

 }

 
Ivan Butko #:

Советник (учебный, без торговых функций)

EURUSD,M1: array out of range in 'Учебный.mq4' 

Если советник, то загрузи историю

Для проверки используй iBars.

 
Ivan Butko #:
Подскажите, пожалуйста, как взять значение свечи много времени назад? То есть, очень далёкого значения. Например, если написать Close[10000], то терминал ругается

Перед обращением к массиву нужно убедиться что индекс не выходит за его пределы. То есть узнать размер массива.

Для таймсерий это iBars или Bars.

 
MakarFX #:

Если советник, то загрузи историю

Для проверки используй iBars.

Taras Slobodyanik #:

Перед обращением к массиву нужно убедиться что индекс не выходит за его пределы. То есть узнать размер массива.

Для таймсерий это iBars или Bars.

Спасибо. 

Прописал Print("Bar count on the 'EURUSD,M1' is ",iBars("EURUSD",PERIOD_M1));, взяв из документации. Терминал в журнал вывел число 1001.))) Хотя, история загружена, в настройках макс стоит больше 1000000 баров. 

Подскажите, пожалуйста, как решить проблему
Причина обращения: