*AR1.RAT: SIMULATION ET ANALYSE DE MODÈLES AR(1) * ALLOCATE 350 COMPUTE NEND=300 , NLAG=12 , NLEAD=6 , NBEG=2 COMPUTE DELTA=0.0 , PHI1=0.5 DISPLAY(STORE=TITRE) 'SIMULATION AR(1) PHI1 = ' PHI1 * * Simulation de données fictives * ZERO Y SEED 4 EQUATION 1 Y # CONSTANT Y{1} ASSOCIATE(VARIANCE=1.0) 1 # DELTA PHI1 SIMULATE 1 NEND-1+50 NBEG # 1 Y OPEN COPY C:\T837\PRG\AR1.XLS COPY(FORMAT=XLS) NEND NEND+NLEAD Y * * Analyse des données simulées en supposant un AR(1) * avec paramètres inconnus * * Statistiques descriptives * STATISTICS Y NBEG NEND * * Corrélations * CORRELATE(NUMBER=NLAG) Y NBEG NEND CORR_Y * * Estimation * LINREG(EQUATION=1) Y NBEG+1 NEND * SET MEAN_Y NBEG NEND+NLEAD = %BETA(1)/(1-%BETA(2)) PRINT NBEG NBEG MEAN_Y * * Représentation moyenne mobile * IMPULSE(INPUT) 1 NLAG+1 # 1 IMP_Y # 1 * Prévisions * ZERO P_Y SET PREV = T == NEND FORECAST 1 NLEAD NEND+1 # 1 P_Y NEND+1 * * Intervalle de confiance à 75% * ERRORS 1 NLEAD # 1 STD_Y NEND+1 * SET SUP_Y NEND+1 NEND+NLEAD = P_Y(T)+1.15*STD_Y(T) SET INF_Y NEND+1 NEND+NLEAD = P_Y(T)-1.15*STD_Y(T) PRINT NEND-4 NEND+NLEAD INF_Y P_Y Y SUP_Y * * Évaluation des prévisions * Les prévisions sont comparées aux * réalisations de la série * THEIL(SETUP) 1 NLEAD NEND+NLEAD # 1 DO DATE=NEND+1,NEND+NLEAD THEIL(PRINT) DATE END DO THEIL(DUMP) * * Évaluation des prévisions * avec réestimation à chaque période * THEIL(SETUP) 1 NLEAD NEND+NLEAD # 1 DO DATE=NEND+1,NEND+NLEAD THEIL DATE LINREG(EQUATION=1,NOPRINT) Y NBEG+1 DATE END DO THEIL(DUMP) * * Résumé graphique * OPEN PLOT C:\T837\GRA\AR1.RGF GRPARM HEADER 16 AXISLABELING 14 SPGRAPH(HFIELD=2,VFIELD=2) GRAPH(HEADER=TITRE,PATTERNS) 2 # Y NBEG+200 NEND # MEAN_Y NBEG+200 NEND GRAPH(NODATES,NUMBER=0,MAX=1.0,MIN=-1.0,STYLE=BAR, $ HEADER='AUTOCORRELATIONS',SAMESIZE) 1 # CORR_Y 1 NLAG+1 4 GRAPH(GRID=PREV,HEADER='PREVISIONS',SAMESIZE,PATTERNS) 5 # Y NEND-NLEAD NEND # P_Y NEND+1 NEND+NLEAD 3 # INF_Y NEND+1 NEND+NLEAD 3 # SUP_Y NEND+1 NEND+NLEAD 3 # MEAN_Y NEND-NLEAD NEND+NLEAD 1 GRAPH(NODATES,NUMBER=0,MAX=1.0,MIN=-1.0,STYLE=BAR, $ HEADER='IMPULSES',SAMESIZE) 1 # IMP_Y 1 NLAG+1 2 SPGRAPH(DONE)