scan
pour vérifier que le modèle ARMA(2,2)
ajuste bien ce processus. Pour comprendre la méthode SCAN on peut lire
le manuel de SAS
http://www.math.u-bordeaux1.fr/~hzhang/m2/st/SAS_ETS_ARIMA_SCAN.pdf
Corrigé
/* simulation ARMA(2,2) */ title1 'Simulated ARMA(2,2)'; data a; u1=0; u2=0; a1 = 0; a2=0; do i = -50 to 1000; a = 0.2*rannor( 32565 ); u = 2.0+(0.1/1.32)*u1 + (1.0/1.32)*u2 + a - 2.4*a1 + 0.8*a2; if i > 0 then output; u2 = u1; u1 = u; a2 = a1; a1 = a; end; run; symbol1 interpol=join color=black value=none; proc arima data=a; identify var=u scan; run; estimate p=2 q=2 plot method=ML; run; quit;On remarque la zone (rectangle) 0 commence par ARMA(2,2) (ou bien ARMA(3,1))
esacf
pour vérifier que le modèle ARMA(1,2)
ajuste bien ce processus. On peut lire le manuel de SAS
http://www.math.u-bordeaux1.fr/~hzhang/m2/st/SAS_ETS_ARIMA_ESACF.pdf
Corrigé
/* simulation ARMA(1,2) */ title1 'Simulated ARMA(1,2)'; data a; u1=0; a1 = 0; a2=0; do i = -50 to 1000; a = 0.2*rannor( 32565 ); u = 2.0+0.7575*u1 + a - 2.4*a1 + 0.8*a2; if i > 0 then output; u1 = u; a2 = a1; a1 = a; end; run; symbol1 interpol=join color=black value=none; proc gplot data=a; plot u*i; run; title1 'identify un arma(1,2) par esacf'; proc arima data=a; identify var=u scan; run; estimate p=1 q=2 plot method=ML; run; quit;On remarque la zone (triangle) 0 commence par ARMA(2,1), les modèles ARMA(1,2) est acceptable aussi
Corrigé
title1 'identify un arma(2,2) par scan et esacf'; proc arima data=a; identify var=u scan esacf; run; quit;On remarque que SAS/ETS propose aussi plusieurs modèles, il est raisonable d'utiliser le modèle ARMA(2,2)
http://www.math.u-bordeaux1.fr/~hzhang/m2/st/SAS_ETS_ARIMA_MINIC.pdf
Corrigé
title1 'identify un arma(2,2) par scan et esacf'; proc arima data=a; identify var=u scan esacf minic; run; quit;Plusieurs modèles sont acceptables, il est raisonable d'utiliser le modèle ARMA(2,2), car le BIC (Bayesian information criterion) est minimal.
minic
.
http://www.stat.wisc.edu/~reinsel/bjr-data/index.html
Corrigé
data SeriesA; n=_n_; input x :3.1 @@; datalines; 17.0 16.6 16.3 16.1 17.1 16.9 16.8 17.4 17.1 17.0 16.7 17.4 17.2 17.4 17.4 17.0 17.3 17.2 17.4 16.8 17.1 17.4 17.4 17.5 17.4 17.6 17.4 17.3 17.0 17.8 17.5 18.1 17.5 17.4 17.4 17.1 17.6 17.7 17.4 17.8 17.6 17.5 16.5 17.8 17.3 17.3 17.1 17.4 16.9 17.3 17.6 16.9 16.7 16.8 16.8 17.2 16.8 17.6 17.2 16.6 17.1 16.9 16.6 18.0 17.2 17.3 17.0 16.9 17.3 16.8 17.3 17.4 17.7 16.8 16.9 17.0 16.9 17.0 16.6 16.7 16.8 16.7 16.4 16.5 16.4 16.6 16.5 16.7 16.4 16.4 16.2 16.4 16.3 16.4 17.0 16.9 17.1 17.1 16.7 16.9 16.5 17.2 16.4 17.0 17.0 16.7 16.2 16.6 16.9 16.5 16.6 16.6 17.0 17.1 17.1 16.7 16.8 16.3 16.6 16.8 16.9 17.1 16.8 17.0 17.2 17.3 17.2 17.3 17.2 17.2 17.5 16.9 16.9 16.9 17.0 16.5 16.7 16.8 16.7 16.7 16.6 16.5 17.0 16.7 16.7 16.9 17.4 17.1 17.0 16.8 17.2 17.2 17.4 17.2 16.9 16.8 17.0 17.4 17.2 17.2 17.1 17.1 17.1 17.4 17.2 16.9 16.9 17.0 16.7 16.9 17.3 17.8 17.8 17.6 17.5 17.0 16.9 17.1 17.2 17.4 17.5 17.9 17.0 17.0 17.0 17.2 17.3 17.4 17.4 17.0 18.0 18.2 17.6 17.8 17.7 17.2 17.4; symbol1 interpol=join color=black value=none; proc gplot data=SeriesA; plot x*n; run; quit; proc arima data=SeriesA; /* identify var=x nlag=12 scan;run;*/ /* identify var=x esacf; run; */ /* identify var=x scan esacf;*/ /* identify var=x stationarity=(adf=(5,6,7,8));*/ /* identify var=x(1) minic;run;*/ identify var=x(1) minic scan esacf; run; quit;Lire le manuel exemple SAS/ETS
http://www.math.u-bordeaux1.fr/~hzhang/m2/st/SAS_ETS_ARIMA_SERIESA.pdf