I have the following code and it is taking a very long time to go through it… I dont think its an infinite loop but it is as follows:
Y = zeros(1069,30658); D1 = LagOp({0,1,1,1},'Lags',[0,1,2,1]); for n = 2:30658; for j = 2:1063 if filter(D1,Ret((D1.Degree + j),n),'Initial',Ret(2:D1.Degree,n)) < 0; Y(j+1,n) = -1*Ret(j+1,n); else Y(j+1,n)=Ret(j+1,n) ; end end end
Basically I want to flip the sign of the current element in the matrix if the previous 3 elements before it add up to being less than 0. Otherwise to leave it alone. Could it be the … else statement causing the trouble here ?
Thanks,
Best Answer