criterios para la selección de modelos estadísticos

Anuncio
BANCO CENTRAL DE COSTA RICA
DIVISIÓN ECONÓMICA
DEPARTAMENTO DE INVESTIGACIONES ECONÓMICAS
DIE-NT-07-00
DICIEMBRE, 2000
CRITERIOS PARA LA SELECCIÓN DE
MODELOS ESTADÍSTICOS
Elaborado por:
Álvaro Solera Ramírez
Documento de trabajo del Banco Central de Costa Rica, elaborado por el Departamento de
Investigaciones Económicas
Las ideas expresadas en este documento son responsabilidad del autor y no necesariamente
representan la opinión del Banco Central de Costa Rica
TABLA DE CONTENIDO
I.
OBJETIVO ........................................................................................................................2
II. CRITERIOS DE INFORMACIÓN .....................................................................................2
2.1.
2.2.
2.3.
Akaike ........................................................................................................................3
Schwarz .....................................................................................................................3
Hannan - Quinn .........................................................................................................4
III. CÁLCULO DE LOS CRITERIOS DE INFORMACIÓN Y SELECCIÓN DEL MODELO PARA
LA TASA INTERANUAL DEL IPC ....................................................................................4
IV. COMENTARIO FINAL ......................................................................................................5
V. BIBLIOGRAFÍA.................................................................................................................6
ANEXOS...............................................................................................................................7
CRITERIOS PARA LA SELECCIÓN DE MODELOS ESTADÍSTICOS
Resumen
En esta nota técnica se describen y cuantifican las funciones de criterio propuestas por
Akaike (1973,1974), Schwarz (1978) y Hannan y Quinn (1979) para identificar y
seleccionar modelos univariables tipo ARMA. Estos tres criterios comparan el beneficio
de tener más información en términos de la reducción de la varianza de las
innovaciones, con el costo de obtener ese beneficio en términos de la pérdida de grados
de libertad en la estimación. De los modelos que se identifican como válidos en cada
criterio se selecciona el que minimiza el criterio en cuestión. La aplicación práctica se
realiza para la variable inflación, aproximada por la tasa interanual del Índice de Precios
al Consumidor, seleccionándose un modelo ARMA(6,6).
STATISTICAL MODEL SELECTION CRITERIA
Abstract
In order to identify and select univariate models of the ARMA type, this paper discusses
the criterium functions of Akaike (1973, 1974), Schwarz (1978) and Hannan and Quinn
(1979).
These criteria are intended to compare the gains associated with more
information, in terms of their effects upon the reduction of the variance, in contrast with
the costs associated with the loss of degrees of freedom. Based on the valid models in
each criterium, the one which makes the criterium minimum is selected. Finally, the
criteria are applied to price inflation, approximated by the inter-annual variation of the
Consumer Price Index, selecting an ARMA(6,6) model.
Clasificación JEL: C4
Palabras claves: Criterios, identificación, selección, modelos estadísticos
1
CRITERIOS PARA LA SELECCIÓN DE MODELOS ESTADÍSTICOS
I.
OBJETIVO
El objetivo de esta nota técnica es describir los criterios de información: Akaike,
Schwarz y Hannan-Quinn, con el propósito de identificar modelos univariables tipo ARMA(p,q).
Estos tres criterios comparan el beneficio de tener más información en términos de la reducción
de la varianza de las innovaciones, con el costo de obtener ese beneficio en términos de la
pérdida de grados de libertad en la estimación. En general, estos criterios no coinciden ya que
difieren en la manera en que formulan el costo de reducir la varianza de las innovaciones
(Lutkepohl, 1985).
La aplicación práctica de esta técnica se realizará para la variable tasa de inflación,
aproximada por la tasa interanual del índice de precios al consumidor (IPC), y utilizando el
paquete econométrico WINRATS1, el cual se especializa en realizar regresiones y ajustar
modelos univariantes tipo Box-Jenkins 2.
II.
CRITERIOS DE INFORMACIÓN
La selección de modelos en el análisis econométrico involucra tanto consideraciones
estadísticas como no estadísticas. Esto dependerá de los objetivos del análisis, de la
naturaleza y extensión de la teoría económica utilizada y de los resultados estadísticos del
modelo bajo consideración comparado con otros modelos econométricos (para una discusión
de los principios generales involucrados en la selección de modelos, ver Pesaran and Smith
1985).
El cálculo de los valores de las funciones de criterio corresponde a las propuestas por
Akaike (1973,1974), Schwarz (1978) y Hannan - Quinn (1979), tanto para modelos
uniecuacionales como multiecuacionales. Estos criterios de selección de modelos miden el
“ajuste” (“fit”) de un modelo dado, maximizando el valor de la función de maximaverosimilitud
con el uso de diferentes funciones de costos (“penalty”) para tomar en cuenta el hecho de que
diferentes números de parámetros desconocidos pudieron haber sido estimados para
diferentes modelos bajo consideración.
Las funciones de criterio propuestas por los citados autores se describen a
continuación:
1
2
El nombre WINRATS corresponde a las siglas de Regression Analysis of Time Series for Windows.
Una guía práctica de uso del paquete WINRATS se encuentra en DIE-NT-02-99.
2
2.1.
Akaike
~
Si ln (Θ) es el valor maximizado de la función de máxima verosimilitud de un modelo
~
econométrico, donde Θ es el estimador de máxima verosimilitud de Θ , basado en una
muestra de tamaño n. El criterio de información de Akaike (CIA) para este modelo se define
como:
~) − p
CIAl = ln( Θ
(1)
donde:
~ ) = número de parámetros estimados libremente.
p = dimensión y (Θ
En el caso de un modelo de regresión lineal o no lineal con una ecuación simple, el
CIAl puede también ser escrito como:
~2) + 2 p
CIAσ = log( σ
n
(2)
~2
donde σ es el estimador de máxima verosimilitud de la varianza de los errores de regresión,
ut , dado por
~ 2 = e' e
σ
n
en el caso de un modelo de regresión lineal y n el número de
observaciones. Las dos versiones de CIA corrrespondientes a la ecuación 1 y 2 producen
CIA
l será
resultados idénticos. Cuando se usa la ecuación 1, el modelo con el mayor valor de
escogido, pero cuando se usa el criterio basado en el error estándar de estimación (ecuación
2), el modelo seleccionado es el menor valor para CIAl .
2.2.
Schwarz
El criterio bayesiano schwarz suministra una aproximación para muestras grandes del
porcentaje de probabilidad del modelo bajo consideración. Este criterio se define como:
~ ) − 1 p log n
CBS l = ln( Θ
2
(3)
Al comparar el CBS entre modelos el que muestre el más alto valor es el escogido.
Para modelos de regresión una versión alternativa de (3), basado en el error estándar de
~
estimación de la regresión, σ , es dado por:
~2 ) + (
CBS σ = ln( σ
log n
p)
n
(4)
De acuerdo con este criterio, el modelo que indique el menor valor de
seleccionado.
3
CBS σ será el
2.3.
Hannan - Quinn
Este criterio de información fue primeramente propuesto para seleccionar el orden
autorregresivo de los modelos de promedios móviles o vectores autorregresivos, y es definido
por:
~ ) − ( log log n ) p
CHQ l = ln( Θ
(5)
o su equivalente en el caso de un modelo de regresión:
~2 ) + (
CHQσ = log( σ
2 log log n
)p
n
(6)
Al igual que en criterios anteriores, el modelo con el menor valor para
seleccionado.
III.
CHQσ será el
CÁLCULO DE LOS CRITERIOS DE INFORMACIÓN Y SELECCIÓN DEL MODELO
PARA LA TASA INTERANUAL DEL IPC
El cálculo de los criterios de información para la tasa interanual del IPC, descritos en el
punto anterior, se lleva a cabo utilizando el paquete econométrico WINRATS. El programa que
ejecuta este cálculo se encuentra en el anexo 1. En general, el programa provee para cada
criterio un total de 156 (12x13) modelos ARMA(p,q), para todo p=1,2,3,...,12 y q=0,1,2,3,...12.,
donde p denota los parámetros autorregresivos y q los parámetros de medias móviles. Para
facilitar la lectura y el análisis de cada criterio, la salida del programa se traslada a un libro de
excel y allí la información se acomoda de tal modo que se obtenga el cuadroA2 (anexo 2) , en
donde las columnas y las filas denotan respectivamente el número de términos autorregresivos
(p) y promedios móviles (q).
Del total de 156 (12x13) modelos identificados para cada criterio, se seleccionan los que
son válidos desde el punto de vista estadístico, esto es que sean invertibles y estimables.
La validez de los modelos corresponde a la invertibilidad y a la posibilidad de estimar el
modelo con una muestra de datos finita. Formalmente, el modelo univariable ARMA(p,q), se
puede expresar de la siguiente manera:
A(L)×π t = B(L)×µ t
donde π es la inflación, los polinomios de rezago se definen como A(L)=(1-a1×L-a2×L2-...-ap×Lp)
y B(L)= (1+b1×L+b2×L2+...+bq×Lq), y µ es la innovación del modelo, con E[µ]=0, y E[µ×µ‘]=σ2 La
invertibilidad del modelo requiere que (el módulus de) las raíces características del polinomio
A(L) se encuentren fuera del círculo unitario. La estimabilidad del modelo requiere que (el
módulus de) las raíces características del polinomio B(L) se encuentren fuera del círculo
unitario (Granger and Newbold, 1986, pp.25-28). Equivalentemente estas condiciones se
pueden expresar en términos de las matrices compañeras del modelo. En este caso se
4
requiere que todos los valores propios de las matrices compañeras se encuentren dentro del
círculo unitario (Hamilton, 1994, ecuación 10.1.12, p.259).
El cálculo de los valores característicos se realiza por medio de un programa ejecutable
en WINRATS, el cual se detalla en el anexo 3. En la salida del programa la matriz “results”
identifica con uno el modelo válido y con cero el modelo no válido. En el cuadro A2 los
modelos sombreados corresponden a los válidos, esto es, invertibles y estimables.
De los modelos válidos en cada criterio se selecciona el que minimiza cada criterio de
información, denotado con negrita en el cuadro A2.. No necesariamente, los tres criterios
deben seleccionar el mismo modelo ARMA(p,q). En el caso particular de la variable inflación
los tres criterios coinciden en un modelo ARMA(6,6).
La literatura recomienda que en la selección del modelo se debe considerar tanto la
validez estadística como la “razonabilidad” económica de la dinámica del modelo, medida esta
última por la función respuesta-impulso. Lo anterior conduce a la práctica de analizar modelos
válidos cercanos al seleccionado, con el fin de determinar sí la dinámica del modelo se puede
mejorar. Este proceso determinó un modelo ARMA(6,3) para la tasa interanual de inflación.
El procedimiento utilizado para pasar del modelo seleccionado por los criterios
(ARMA(6,6)) al modelo que finalmente se escogió (ARMA(6,3)) para proyectar la tasa
interanual de inflación, así como el valor ajustado, correlogramas simples y parciales, errores
estandarizados, estadísticos de proyección, valores propios y respuestas-impulso del modelo
se encuentran bien especificados en la Nota de Investigación No 5-00: Modelos Univariables de
la Inflación (2000).
IV.
COMENTARIO FINAL
Los criterios de Akaike, Schwarz y Hannan-Quinn constituyen una técnica más
disponible para la identificación y selección de modelos univariables utilizados en las
proyecciones de variables económicas. Esta técnica fue la utilizada en la Nota de Investigación
No 5-00: Modelos Univariables de la Inflación.
5
V.
BIBLIOGRAFÍA
Akaike, H. (1974), “A New Look at the Statistical Identification Model”, IEEE: Trans. Auto.
Control, vol. 19, pp. 716-23.
Diebold, Francis X. (1997), Elements of Forecasting, South-Western College Publishing,
Cincinnati, Oh..
Doan, Thomas (1996) “RATS: User’s Manual”, Versión 4. Estima.
Granger, C.W.J. y Newbold, Paul (1986), “Forecasting Economic Time Series”, Economic
Theory, Econometrics and Mathematical Economics, second edition.
Granger, C.W.J, and Paul Newbold (1986) Forecasting Economic Time Series, Academic
Press, New York, New York.
Hamilton, D. (1994), “Time Series Analysis”.
Jersey.
Princeton University Press; Princeton, New
Hannan, E.J., and B.G. Quinn (1979), “The Determination of the Order of an Autoregression”,
Journal of Royal Statistical Society B, vol. 41, pp. 190-95.
Hoffmaister, Alexander, Ivannia Solano, Alvaro Solera y Katia Vindas (2000), “Modelos
Univariables de la Inflación, ,” Banco Central de Costa Rica, Nota de Investigación 5-00.
Lütkepohl, Helmut (1985) “Comparison of Criteria for Estimating the Order of a Vector
Autoregressive Process.” Journal of Time Series Analysis, Vol. 6, pp. 35-52.
Schwarz, G. (1978), “Estimating the Dimension of a Model”, Annals of Statistics, Vol. 6, pp. 46164.
[email protected]
6
K:\Secretarias-Dirección\Investigaciones\Notas Técnicas\Notas Técnicas 2000\NT-07-2000-PDF.doc
23/04/a2:44
ANEXOS
ANEXO 1
Programa en winrats para calcular los tres criterios de información.
**********************************************************
* BANCO CENTRAL DE COSTA RICA
*
* DIVISION ECONOMICA
*
* EQUIPO DE ESTUDIO DE INFLACION
*
*
*
* PROGRAMA RATS PARA ESCOGER MODELO TIPO ARMA *
* POR MEDIO DE LOS CRITERIOS DE INFORMACION
*
* AKAIKE, SCHWARZ Y HANNAN Y QUINN
*
*
*
* N:\Inflación\modelos-arma\criterios de información.prg
*
**********************************************************
* fecha de actualización: 19/12/2000
*
**********************************************************
*
CALENDAR 1986 1 12
ALLOCATE 0 2010:08
OPEN DATA n:\inflación\modelos-arma\IPC1.XLS
DATA(FORMAT=XLS,ORG=OBS) / IPC1 INI IPCNR IPPI
*
PRINT / IPC1 INI IPCNR IPPI
*
*--------------GENERACION DE VARIABLES---------*
smpl 1986:01 1999:12
COMPUTE N_SER=4
DECLARE VECTOR[SERIES] PI_V(N_SER)
*
EQV PI_V(1) PI_V(2) PI_V(3) PI_V(4)
PI_IPC PI_INI PI_IPCNR PI_IPPI
*
*PRINT / PI_V(1) PI_V(2) PI_V(3) PI_V(4)
*
COMPUTE PMAX = 12
COMPUTE START = 1990:01
COMPUTE END = 1999:12
*
*
DECLARE VECTOR[STRING] SERIES(N_SER)
compute SERIES(1) = 'IPC'
compute SERIES(2) = 'INI'
compute SERIES(3) = 'IPCNR'
8
compute SERIES(4) = 'IPPI'
*
COMPUTE C=0
*
*
DOFOR S = IPC1 INI IPCNR IPPI
COMPUTE C = C+1
*
SET S
= LOG([SERIES] S)
DIFF(SDIFFERENCE=1) S 1987:01 1999:12 PI_V(C)
END DOFOR
*PRINT / PI_V(1) PI_V(2) PI_V(3) PI_V(4)
*
smpl 1987:01 1999:12
*
*----------------CREACION DE MATRIZ RESULTS---------------*
DECLARE RECTANGULAR RESULTS(PMAX,3)
*
*---------------------------REGRESION--------------------------------*
DO j=0,PMAX; *REZAGOS MA
DISPLAY 'MA=' j
DISPLAY @12 'AIC' @22 'SCH' @32 'HQ'
DO i=1,PMAX; * REZAGOS AR
BOXJENK(NOPRINT,CONSTANT,AR=i,MA=j) PI_V(1) START END
*
*CALCULO DE LOS CRITERIOS
*
COMPUTE
RESULTS(i,1)
=
LOG(%RSS/%NOBS)
2.0*(%NREG)/%NOBS
COMPUTE
RESULTS(i,2)
=
LOG(%RSS/%NOBS)
(%NREG)*(LOG(%NOBS)/%NOBS)
COMPUTE
RESULTS(i,3)
=
LOG(%RSS/%NOBS)
(2.0*LOG(LOG(%NOBS))/%NOBS)*(%NREG)
*
*IMPRESION
*
DISPLAY @2 ##.## i @12 ##.## RESULTS(i,1) $
@22 ##.## RESULTS(i,2)$@32 ##.## RESULTS(i,3)
*
END DO i
END DO j
*
END
9
+$
+$
+$
ANEXO 2
CUADRO A2:
MODELOS ARMA (IPC)
CRITERIO AKAIKE
MA
AR
1
2
3
4
5
6
7
8
9
10
11
12
0
1
2
3
4
5
6
7
8
9
10
11
12
-9,088
-9,213
-9,199
-9,200
-9,220
-9,208
-9,191
-9,204
-9,199
-9,198
-9,213
-9,208
-9,249
-9,232
-9,243
-9,234
-9,247
-9,262
-9,246
-9,249
-9,240
-9,258
-9,241
-9,419
-9,244
-9,258
-9,248
-9,261
-9,249
-9,296
-9,282
-9,265
-9,287
-9,270
-9,227
-9,562
-9,229
-9,241
-9,238
-9,310
-9,238
-9,241
-9,238
-9,236
-9,224
-9,318
-9,308
-9,613
-9,272
-9,265
-9,249
-9,465
-9,423
-9,556
-9,526
-9,564
-9,579
-9,585
-9,620
-9,625
-9,281
-9,340
-9,476
-9,451
-9,544
-9,473
-9,419
-9,620
-9,481
-9,572
-9,502
-9,766
-9,403
-9,351
-9,306
-9,331
-9,397
-9,419
-9,362
-9,401
-9,405
-9,394
-9,475
-9,692
-9,303
-9,414
-9,248
-9,453
-9,456
-9,340
-9,399
-9,336
-9,553
-9,523
-9,524
-9,805
-9,468
-9,555
-9,513
-9,604
-9,656
-9,616
-9,610
-9,567
-9,596
-9,693
-9,411
-9,786
-9,532
-9,551
-9,521
-9,686
-9,783
-9,885
-9,701
-9,791
-9,524
-9,684
-9,718
-9,901
-9,483
-9,499
-9,514
-9,508
-9,846
-9,704
-9,635
-9,552
-9,642
-9,728
-9,652
-9,749
-9,857
-9,614
-9,742
-9,748
-9,748
-9,608
-9,574
-9,782
-9,485
-9,610
-9,595
-9,992
-9,862
-9,800
-9,733
-9,732
-9,691
-9,956
-9,594
-9,455
-9,739
-9,664
-9,746
-9,641
CRITERIO SCHWARTZ
MA
0
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
-9,041
-9,142
-9,105
-9,082
-9,078
-9,043
-9,003
-8,992
-8,963
-8,938
-8,930
-8,901
-9,178
-9,138
-9,125
-9,092
-9,082
-9,074
-9,034
-9,013
-8,980
-8,974
-8,934
-9,089
-9,149
-9,140
-9,106
-9,096
-9,061
-9,083
-9,046
-9,006
-9,004
-8,963
-8,897
-9,208
-9,111
-9,099
-9,072
-9,121
-9,026
-9,005
-8,978
-8,953
-8,917
-8,987
-8,953
-9,235
-9,130
-9,100
-9,060
-9,253
-9,187
-9,297
-9,243
-9,257
-9,249
-9,231
-9,243
-9,224
-9,116
-9,151
-9,264
-9,215
-9,284
-9,190
-9,112
-9,290
-9,127
-9,194
-9,101
-9,341
-9,214
-9,138
-9,070
-9,072
-9,114
-9,112
-9,031
-9,047
-9,028
-8,992
-9,050
-9,244
-9,091
-9,178
-8,988
-9,170
-9,149
-9,009
-9,045
-8,958
-9,151
-9,098
-9,076
-9,333
-9,232
-9,295
-9,230
-9,297
-9,325
-9,262
-9,232
-9,165
-9,171
-9,245
-8,939
-9,290
-9,272
-9,267
-9,214
-9,355
-9,429
-9,507
-9,300
-9,366
-9,075
-9,212
-9,222
-9,382
-9,200
-9,192
-9,183
-9,153
-9,469
-9,302
-9,210
-9,103
-9,170
-9,232
-9,132
-9,206
-9,550
-9,284
-9,388
-9,370
-9,346
-9,183
-9,125
-9,310
-8,989
-9,091
-9,052
-9,425
-9,532
-9,446
-9,356
-9,330
-9,266
-9,508
-9,121
-8,960
-9,220
-9,121
-9,179
-9,051
AR
CRITERIO HANNAN AND QUINN
MA
0
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
-9,069
-9,185
-9,161
-9,152
-9,162
-9,141
-9,115
-9,118
-9,103
-9,093
-9,098
-9,084
-9,220
-9,194
-9,195
-9,176
-9,180
-9,186
-9,160
-9,153
-9,135
-9,143
-9,116
-9,285
-9,206
-9,210
-9,190
-9,194
-9,173
-9,209
-9,186
-9,160
-9,172
-9,146
-9,093
-9,418
-9,181
-9,183
-9,170
-9,233
-9,152
-9,146
-9,133
-9,121
-9,100
-9,184
-9,164
-9,460
-9,215
-9,198
-9,172
-9,379
-9,327
-9,451
-9,411
-9,440
-9,445
-9,441
-9,467
-9,462
-9,214
-9,264
-9,390
-9,355
-9,439
-9,358
-9,294
-9,486
-9,337
-9,419
-9,339
-9,594
-9,326
-9,265
-9,210
-9,226
-9,282
-9,294
-9,228
-9,257
-9,252
-9,231
-9,303
-9,510
-9,217
-9,318
-9,143
-9,338
-9,331
-9,206
-9,255
-9,183
-9,390
-9,350
-9,342
-9,614
-9,372
-9,450
-9,398
-9,480
-9,522
-9,473
-9,456
-9,404
-9,423
-9,511
-9,220
-9,584
-9,426
-9,436
-9,397
-9,552
-9,639
-9,731
-9,538
-9,618
-9,342
-9,493
-9,516
-9,691
-9,368
-9,374
-9,380
-9,364
-9,693
-9,541
-9,463
-9,370
-9,450
-9,526
-9,441
-9,529
-9,733
-9,480
-9,598
-9,595
-9,585
-9,436
-9,392
-9,590
-9,284
-9,400
-9,375
-9,762
-9,728
-9,657
-9,580
-9,569
-9,519
-9,774
-9,402
-9,254
-9,528
-9,444
-9,516
-9,401
AR
Los valores sombreados indican los modelos ARMA estimables, por su parte el valor en negrita indica el mínimo valor del criterio dentro de este conjunto de modelos estimables.
CRITERIOS
-9,000
-9,100
-9,200
-9,300
1
2
-9,400
VA
3
4
-9,500
5
6
7
-9,600
8
9
-9,700
10
11
-9,800
11
9
-9,900
7
AR
-10,000
5
0
1
2
3
4
3
5
MA
6
7
8
9
1
10
11
12
12
-8,600
1
-8,800
2
3
-9,000
4
5
6
-9,200
7
8
9
-9,400
10
11
-9,600
-9,800
-10,000
0
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
12
ANEXO 3
Programa en winrats para determinar la validez de los modelos candidatos.
**************************************************
* BANCO CENTRAL DE COSTA RICA
*
* DIVISION ECONOMICA
*
* EQUIPO DE ESTUDIO DE INFLACION
*
*
*
* PROGRAMA RATS PARA DETERMINAR MODELOS *
* INVERTIBLES Y ESTIMABLES CON BASE EN
*
* LOS VALORES PROPIOS
*
*
*
* N:\Inflación\modelos-arma\vpropiosII
*
**************************************************
* fecha de actualización: 19/12/2000
*
*
*
**************************************************
*
*SOURCE(ECHO) READDF.PRG
CALENDAR 1986 1 12
ALLOCATE 0 2010:08
OPEN DATA K:\inflación\modelos-arma\IPC1.XLS
DATA(FORMAT=XLS,ORG=OBS) / IPC1 INI IPCNR IPPI
*
*PRINT / IPC1 INI IPCNR IPPI
*GENERACION DE VARIABLES
*
smpl 1986:01 1999:12
COMPUTE N_SER=4
DECLARE VECTOR[SERIES] PI_V(N_SER)
*
EQV PI_V(1) PI_V(2) PI_V(3) PI_V(4)
PI_IPC PI_INI PI_IPCNR PI_IPPI
*
*PRINT / PI_V(1) PI_V(2) PI_V(3) PI_V(4)
*
COMPUTE PMAX = 12
*
DECLARE VECTOR[STRING] SERIES(N_SER)
compute SERIES(1) = 'IPC'
compute SERIES(2) = 'INI'
compute SERIES(3) = 'IPCNR'
compute SERIES(4) = 'IPPI'
*
11
COMPUTE C=0
*
*
DOFOR S = IPC1 INI IPCNR IPPI
COMPUTE C = C+1
*
SET S
= LOG([SERIES] S)
DIFF(SDIFFERENCE=1) S 1987:01 1999:12 PI_V(C)
END DOFOR
*PRINT / PI_V(1) PI_V(2) PI_V(3) PI_V(4)
*
smpl 1987:01 1999:12
*
*
***************************
*CREACION DE ESCALARES *
***************************
COMPUTE START = 1990:01
COMPUTE END = 1999:12
COMPUTE MODELS = 1; *(NUMERO DE MODELOS)
*
*
DECLARE RECTANGULAR[INTEGER] MM(MODELS,2)
DECLARE
VECTOR[SERIES] MROOT(MODELS) MMAROOT(MODELS)
*
*
***********************************************
*
MODELOS A R M A SELECCIONADOS
*
*
***********************************************
compute s_ar = 0; * set to zero
compute s_ma = 0; * set to zero
*
*MODELO 1*
COMPUTE MM(1,1)=6
COMPUTE MM(1,2)=0
/*
*MODELO 2*
COMPUTE MM(2,1)=6
COMPUTE MM(2,2)=1
*
*MODELO 3*
COMPUTE MM(3,1)=6
COMPUTE MM(3,2)=2
*
*MODELO 4*
12
COMPUTE MM(4,1)=6
COMPUTE MM(4,2)=3
*
*MODELO 5*
COMPUTE MM(5,1)=6
COMPUTE MM(5,2)=4
*/
*
*----------AR-Maximo-----------------------------compute [integer] ar_max = 0
compute [integer] ma_max = 0
*
do i = 1, models
*
if mm(i,1).ge.ar_max
{
compute ar_max = mm(i,1)
}
*
if mm(i,2).ge.ma_max
{
compute ma_max = mm(i,2)
}
*
end do i
*
*write ar_max ma_max
*
declare vector mroot_v(Pmax)
declare vector mmaroot_v(Pmax)
*
*
*DECLARACION DE SERIES QUE SE USAN DENTRO DEL DO
*--------------------------------------*
SET PI_REF / = 0.0
SET PI_SH / = 0.0
CLEAR IMP
SET RES_ST / = 0.0
*
do i = 1, models
*
set mroot(i) / = 0.0
set mmaroot(i) / = 0.0
*
end do i
13
*
SET TH1 / = 0.0
SET TH2 / = 0.0
SET TH3 / = 0.0
SET TH4 / = 0.0
*
set dummy / = 0.0
*
*--------------------------------------*
DECLARE RECTANGULAR CC(Pmax,Pmax) CC_ma(Pmax,Pmax)
*
*
COMPUTE LAB1=' X '
COMPUTE LAB2=' Y '
COMPUTE LAB3=' Z '
COMPUTE LAB4=' Z '
*
COMPUTE V_MAX= 0.0
COMPUTE VMA_MAX= 0.0
*
*--------------------------------------*
COMPUTE CC = %CONST(0.0)
COMPUTE CC_ma = %CONST(0.0)
*
*---------------------------------------*OPEN PLOT ARMA.PLT
*---------------------------------------*
*
COMPUTE C=0
*
OPEN COPY IPC_VALIDO.LIS
*
DECLARE RECTANGULAR RESULTS(PMAX,PMAX+1)
*
*DOFOR S = PI_V(1) PI_V(2) PI_V(3) PI_V(4)
DOFOR S = PI_V(1)
*
CORRELATE(NOPRINT,NUMBER=36,PARTIAL=SP_PCORR) S START END SP_AUTO
COMPUTE C=C+1
*
DO p = 1,PMAX
DO q = 0,PMAX
*
14
BOXJENK(iterations=100,NOPRINT,DEFINE=BJEQ,CONSTANT,AR=p,MA=q,$
SAR=s_ar,SMA=s_ma) S START END RESID
*
/* FORECAST 1 36 1999:10
# BJEQ PI_REF
print 1999:11 2002:11 PI_REF
*
SET RES_ST START END = RESID/%SEESQ**0.5
SET PI_FIT START END = [SERIES] S - RESID
SET UPPER START END = 2.0
SET LOWER START END = -2.0
*
CORRELATE(NOPRINT,NUMBER = 36,PARTIAL=PCORR) RESID START END AUTO
*
COMPUTE SHOCK= %SEESQ**0.5
DISPLAY 'SHOCK=' SHOCK
*
FORECAST(INPUT) 1 36 1999:10
# BJEQ PI_SH
# SHOCK
*
SET IMP 1999:10 1999:10+35 = PI_SH - PI_REF
*---------------------------------------------*/
compute CC = %const(0.0)
compute CC_ma = %const(0.0)
*
COMPUTE AR_P = p
COMPUTE MA_Q = q
*
compute max_pq = %imax(AR_P,MA_Q)
*
*
*-------Companion-matrix----------------------*
DO j=1,p-1
*
COMPUTE CC(1,j) = %BETA(j+1)
*
COMPUTE CC(j+1,j) = 1.0
*
*DISPLAY j
*
END DO j
*
COMPUTE CC(1,p) = %BETA(p+1)
15
*
EIGEN(CVALUES=CROOT) cc root
COMPUTE MROOT_v = %const(0.0)
*
DO j=1,p
*
COMPUTE MROOT_v(J)=( (%real(CROOT(j)))**2 + $
(%imag(CROOT(j)))**2 )**0.5
*
END DO j
*
SET MROOT(1) 1 max_pq = MROOT_v(t)
SET UNO 1 max_pq = 1.0
*
COMPUTE V_MAX = MROOT(1) (1)
*
*display 'AR Companion and eigen'
*WRITE CC MROOT_v
*---------------------------------------------*
COMPUTE VMA_MAX = 0.0
*
*
if q.ne.0
{
*-------MA-Companion-matrix-------------------DO j=1, q-1
*
COMPUTE CC_ma(1,j) = %BETA(j+1+p)
*
COMPUTE CC_ma(j+1,j) = 1.0
*DISPLAY 'MA coef' j
*
END DO j
*
COMPUTE CC_ma(1,q)=%BETA(q+1+p)
*
EIGEN(CVALUES=CMAROOT) cc_ma root_ma
COMPUTE MMAROOT_v = %const(0.0)
*
DO j=1,q
*
COMPUTE MMAROOT_v(J)=( (%real(CMAROOT(j)))**2 +
(%imag(CMAROOT(j)))**2 )**0.5
*
END DO j
16
$
*
*
SET MMAROOT(1) 1 MA_Q = MMAROOT_v(t)
SET UNO
1 MA_Q = 1.0
*
COMPUTE VMA_MAX = MMAROOT(1) (1)
*
*display 'MA Companion and eigen'
*WRITE CC_ma MMAROOT_v
*---------------------------------------------}
If V_MAX.LE.1.AND.VMA_MAX.LE.1
{
COMPUTE RESULTS(P,Q+1) = 1.0
}
ELSE
{
COMPUTE RESULTS(P,Q+1) = 0.0
}
*
END DO P
END DO Q
WRITE RESULTS
WRITE(UNIT=COPY,FORMAT='(13(F2.1,2X))') RESULTS
CLOSE COPY
END DOFOR S
END
17
Descargar