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

 
Tretyakov Rostyslav #:
А что поставить вместо вопросительных знаков?

Почему не

       for(int j=i+1; j<ArraySize(high); j++)
           {
            if(high[j]-low[j]>size) cnt+=1;
            if(cnt==3) { bar=j; break; }
           }

?

 
JRandomTrader #:

Почему не

?

Спасибо, работает...но не корректно

Вы не подскажите, как можно реализовать такой поиск свечей

Когда последняя закрытая свеча >= size, мне нужно перебором найти вторую и третью свечу >= size, а все которые меньше пропускать. В итоге получить номер третьей свечи.

 
Может,
for(int j=i+1, cnt=1 ; j<ArraySize(high); j++)
           {
            if(high[j]-low[j]>size) cnt++;
            if(cnt==3) { bar=j; break; }
           }
?
 
JRandomTrader #:
Может, ?

Я cnt обнулял перед циклом

cnt=1 нельзя, тогда пропускает последнюю закрытую свечу

 
Что именно "но не корректно"?
 
JRandomTrader #:
Что именно "но не корректно"?
Лишние свечи добавляет, иногда правильно, а иногда 4-5 свечей считает.
 
Tretyakov Rostyslav #:
Лишние свечи добавляет, иногда правильно, а иногда 4-5 свечей считает.

Может, надо определиться "найти вторую и третью свечу >= size" или "high[j]-low[j]>size" ?

 
JRandomTrader #:

Может, надо определиться "найти вторую и третью свечу >= size" или "high[j]-low[j]>size" ?

Есть первая закрытая свеча high[i+1] - low[i+1] > size

надо найти еще две таких ближайших свечи и получить номер последней свечи.

 
Tretyakov Rostyslav #:

Есть первая закрытая свеча high[i+1] - low[i+1] > size

надо найти еще две таких ближайших свечи и получить номер последней свечи.

Первая - именно [i+1], не [i]?

 
JRandomTrader #:

Первая - именно [i+1], не [i]?

Да, первая закрытая свеча.

Причина обращения: