' program 2 simulation ARCH(2)
wfcreate u 1000
smpl @all
'define series: normal innovation (z),variance (vr), error (e), return (r)
series z= nrnd
series vr
series e
series r
'initialize the series to start the recursion, the vr starts at the unconditional variance value of 10
vr(1)=2/(1-0.5-0.3)
vr(2)=vr(1)
e(1) = @sqrt(vr(1))*z(1)
e(2)=@sqrt(vr(2))*z(2)
r(1)= 2+e(1)
r(2)= 2+e(2)
'start the recursion from 3 to the number of observations you wish to generate we have set omega = 2 and alpha1 = 0.5, alpha 2= 0.3
smpl @first+2 @last
vr=2+0.5*e(1)^2+0.3*e(2)^2
e = @sqrt(vr)*z
r= 2+e
smpl @all