Помогите с использованием индикатора в советнике

 

Уважаемые программисты!

помогите пожалуйста 

Стандартный код входа по RSI:
задаваемые параметры:
extern int       rsi_period=3;
extern int       rsi_shift=3;
extern int       lower=30;
extern int       upper=70;
int signal()
{
double rsi=iRSI(Symbol(),0,rsi_period,PRICE_CLOSE,rsi_shift);
 {
if(rsi>upper) return(sell);
if(rsi<lower)  return(buy);
 }
return(0);
}
Цель:
входить не сразу после превышения макс\мин уровня RSI, а  получить подтверждение в виде 2х или 3х (N+1) точек закрытия бара после превышения сигнальной линии  upper\lower и только потом входить в рынок
 т.к может случиться что уровень превышен и индикатор уходит вниз(ниже линии).
Логически я думаю нужно как-то запомнить значения последних баров выше сигнальных линий, а после того как значение падает ниже линии обнулять запомненные бары. и ждать нового подтверждения.
К сожалению практически реализовать не получается, может ли кто помочь с кодом?
буду очень признателен.
 
Я так понимаю нужно использовать функцию iCustom(), но к сожалению моих знаний пока не достаточно, чтобы реализовать это самому. RSI  в данном случае Relative strength index (пользовательский)
 
Biosiska:
Я так понимаю нужно использовать функцию iCustom(), но к сожалению моих знаний пока не достаточно, чтобы реализовать это самому. RSI  в данном случае Relative strength index (пользовательский)
https://docs.mql4.com/ru/indicators/irsi
Причина обращения: