new; @ simulates and estimates by GCOV noncausal Cauchy AR(1) with coef 0.8 @ nobs=300; rho = 0.8; mu = 0; @ location @ c = 1; @ scale @ @ Cauchy noncausal AR(1) - can change to t-student @ uu = rndu(nobs,1); cou = c* tan(pi*(uu - 0.5)) + mu; y = zeros(nobs,1); y[1,1] = 0.1; y[nobs,1] = 0.1; i = 0; do until i > (sobs-2); k = nobs-i-1; kak = nobs - i; y[k,1] = rho*y[kak,1] + cou[k,1]; i = i+1; endo; @ cut off 50 first and 50 last @ y = trimr(y,50,50); @ Estimation starts here @ library optmum; optset; proc fct(d); local ps, eps, phi, i, term, vov, vc, corr, co, sco, epl, s1, s2, y11, y1l1, did, di, beps, te; te=nobs-100; eps=zeros(te,4); y11 = trimr(y,1,0); y1l1=trimr(y,0,1); ps = y11 - d * y1l1; @ ps = y1l1 - d* y11; @ eps[.,1] = ps; eps[.,2] = (eps[.,1])^2; eps[.,3] = (eps[.,1])^3; eps[.,4] = (eps[.,1])^4; eps[.,1] = eps[.,1]-meanc(eps[.,1]); eps[.,2] = eps[.,2]-meanc(eps[.,2]); eps[.,3] = eps[.,3]-meanc(eps[.,3]); eps[.,4] = eps[.,4]-meanc(eps[.,4]); corr = zeros(4,4); vc = vcx(eps); did = diag(vc); di = sqrt(did); vov = di*di'; epl=eps; i = 1; do until i>10; eps = trimr(eps,1,0); epl=trimr(epl,0,1); co = (eps'*epl)/nobs; co = co./vov; sco = co^2; corr = corr+sco; i = i+1; endo; s1 = sumc(corr); s2 = sumc(s1); retp(s2); endp; start = { 0.5 }; output file = nonmax.out reset; { d, f, g, ret } =optmum(&fct, start); output file = nonT200.out on; print d; end;