options double crt; name egarch 'asymmetric EGARCH(1,1) benchmark from Brooks et al review'; ? RATS SAS TSP e(0)=mean TSP e(0)=0 ? mu -.0117 -.0116 -.01167873487 -.01156255945 ? (.00886) (.00866) (.0083216274259) (.0083218990687) ? omega -.127 -.127 -.12633933747 -.12634299469 ? (.0285) (.0290) (.02721344887) (.02721413113) ? beta .912 .912 .91265373928 .91265496832 ? (.0168) (.0172) (.01617807763) (.01617865944) ? alpha .333 .333 .33305592776 .33305812431 ? (.0406) (.0423) (.03875690246) (.03875886989) ? gamma -.0385 -.0385 -.03845788444 -.03840128593 ? (.0192) (----) (.01829620652) (.01830164351) ? LogL -1101.689 -1101.689 -1101.6843841 -1101.6761612 ?-------------------- ? - SEs for RATS and SAS are computed from the reported t-statistics ? from a draft of Brooks, Burke and Persand, "Benchmarks and the ? Accuracy of GARCH Model Estimation," International Journal of ? Forecasting, forthcoming ? - LogL for RATS and SAS was computed by TSP at the coefficients ? rounded to the 3 digits given, using e(0)=mean. ? - SEs for TSP are from numeric second derivatives ? (This feature is not released yet, as of 3/16/00) ? - Convergence options were set in TSP to obtain the most accurate ? results possible. They appear to be accurate to 6-9 digits, ? judging from the "change" vector from the final iteration. ? Presample values were set to: ? - h(0) = e'e/T , where e is computed from current mu value ? - e(0) = sum(e)/T, or 0 ?--------- ? y = Deutschmark-British Pound daily percentage nominal returns, ? 1/3/1984 - 12/31/1991 ? Obtained on 1/30/98 from ftp web.amstat.org ? jbes/View/96-2-APR/bollerslev_ghysels/bollerslev.sec41.dat smpl 2,1975; read(file='dmbp.dat') y monday; olsq y c; supres smpl; copy @smpl smp2; smpl 1,1975; trend obs; e = 0; h = 0; set pi = 4*atan(1); print pi; set r2opi = sqrt(2/pi); smpl smp2; param mu -.01 omega -.1 beta .9 alpha .3 gamma -.04; options nwidth=20,signif=10; set eopt=1; ml(hiter=u,hcov=u,tol=1e-15) eg11 mu omega beta alpha gamma; title 'e(0) = e_mean'; ml(hiter=u,hcov=u,grad=c4,tol=1e-15) eg11 mu omega beta alpha gamma; title 'e(0) = 0'; set eopt=0; ml(hiter=u,hcov=u,grad=c4,tol=1e-15) eg11 mu omega beta alpha gamma; title 'LogL for RATS'; param mu -.0117 omega -.127 beta .912 alpha .333 gamma -.0385; set eopt=1; eg11; print @logl; mmake coef mu omega beta alpha gamma; mmake tstat -1.32 -4.46 54.4 8.20 -2.01; mat serat = coef/tstat; print serat; title 'LogL for SAS'; param mu -.0116 omega -.127 beta .912 alpha .333 gamma -.0385; set eopt=1; eg11; print @logl; mmake coef mu omega beta alpha gamma; mmake tstat -1.34 -4.38 53.0 7.88 1000; mat sesas = coef/tstat; print sesas; proc eg11; smpl smp2; e = y-mu; mat ssr = e'e; set h0 = ssr/@nob; mat e0 = sum(e)/@nob; smpl 1,1; h = h0; if eopt; then; e = e0; smpl smp2; h = exp(omega + beta*log(h(-1)) + gamma*e(-1)/sqrt(h(-1)) + alpha*[abs(e(-1))/sqrt(h(-1)) - r2opi] ); logl = -log(h)/2 + lnorm(e/sqrt(h)); mat @logl = sum(logl); endproc;