Помогите плизз функция проверки сигнала...

 

Помогите пожалуйста не пойму почему не даёт сигнала на селл...


double
Emax.Strategy.1.MA[3][2],
Emax.Strategy.1.ADX[3],
Emax.Strategy.1.SAR[1];

int
Emax.Strategy.1.Signal = 0;


int Emax.Strategy.1.GetSignal()
{
	int Signal = 0;
	Emax.Strategy.1.ADX[1]   =  iADX(Symbol(),NULL,9,PRICE_CLOSE,MODE_MAIN,1);
	Emax.Strategy.1.ADX[2]   =  iADX(Symbol(),NULL,9,PRICE_CLOSE,MODE_PLUSDI,1);
	Emax.Strategy.1.ADX[3]   =  iADX(Symbol(),NULL,9,PRICE_CLOSE,MODE_MINUSDI,1);
	
	Emax.Strategy.1.MA[1][1]   =  iMA(Symbol(),NULL,12,0,MODE_EMA,PRICE_OPEN,1);
	Emax.Strategy.1.MA[1][2]   =  iMA(Symbol(),NULL,12,0,MODE_EMA,PRICE_OPEN,2);
	Emax.Strategy.1.MA[2][1]   =  iMA(Symbol(),NULL,5,0,MODE_EMA,PRICE_CLOSE,1);
	Emax.Strategy.1.MA[3][1]   =  iMA(Symbol(),NULL,9,0,MODE_EMA,PRICE_CLOSE,1);
	
	Emax.Strategy.1.SAR[1]   =  iSAR(Symbol(),NULL,0.02,0.2,1);
	
	if(	(Emax.Strategy.1.Signal==2 || Emax.Strategy.1.Signal==0)
		&& Emax.Strategy.1.SAR[1]<Open[1]
		&& (Open[1]<Emax.Strategy.1.MA[1][1] || Open[2]<Emax.Strategy.1.MA[1][2])
		&& Close[1]>Emax.Strategy.1.MA[2][1]
		&& Emax.Strategy.1.MA[2][1]>Emax.Strategy.1.MA[1][1]
		&& Emax.Strategy.1.ADX[1]>Emax.Strategy.1.ADX[3]
		&& Emax.Strategy.1.ADX[2]>Emax.Strategy.1.ADX[3]
		)
			{
				Signal=1;
				Emax.Strategy.1.Signal = Signal;
				Alert("Buy");
			}
	if(	(Emax.Strategy.1.Signal==1 || Emax.Strategy.1.Signal==0)
		&& Emax.Strategy.1.SAR[1]>Open[1]
		&& (Open[1]>Emax.Strategy.1.MA[1][1] || Open[2]>Emax.Strategy.1.MA[1][2])
		&& Close[1]<Emax.Strategy.1.MA[2][1]
		&& Emax.Strategy.1.MA[1][1]>Emax.Strategy.1.MA[2][1]
		&& Emax.Strategy.1.ADX[1]>Emax.Strategy.1.ADX[2]
		&& Emax.Strategy.1.ADX[3]>Emax.Strategy.1.ADX[2]
		)
			{
				Signal=2;
				Emax.Strategy.1.Signal = Signal;
				Alert("Sell");
			}
	return(Signal);
}
Yee что никто не знает чтоли???
 
xweblanser писал(а) >>

Помогите пожалуйста не пойму почему не даёт сигнала на селл...

Yee что никто не знает чтоли???

Ошибках в индексах элементов массива

Допускаются не более чем четырехмерные массивы. Индексация каждого измерения производится от 0 до размер измерения-1. В частном случае одномерного массива из 50 элементов обращение к первому элементу будет выглядеть как array[0], к последнему элементу - array[49].

 
Спасибо большое!
Причина обращения: