Many thanks for your help. I have the ewise instruction in my code below, how do I loop over those two instruction? I would like sumof12 to be as shown in my code (Rtstr(i,j)) but it gives error. Thanks
Rachid
Code: Select all
com N= 5000, M= 61, P=1000
dec rec T3 ST Call Rtstr Callav
dim T3(M,P) Rtstr(M,P) ST(M,P) Call(M,P) Callav(M,P)
.........
sample(smpl=%valid(R(rep))) R(rep) / goodsource
compute goodnobs=%nobs
boot entries 1 12 1 %nobs
sstats 1 12 goodsource(entries(t))>>sumof12
ewise T3(i,j) = T2(j)-T1(i)
ewise Rtstr(i,j) = (r2(i)-div(i)+sumof12(i))*T3(i,j)/365
ewise ST(i,j) = %if(T3(i,j)>0, S(i)*exp(Rtstr(i,j)),%na)
ewise Call(i,j) = %if(T3(i,j)>0,exp(-r2(i)*T3(i,j)/365)*%max(0,ST(i,j)-K(j)),%na)
com Callsum = Callsum+Call
end do rep
com Callav = Callsum/N