Professional Documents
Culture Documents
6.1. Introduccion
En los modelos de descomposicion Yt = Tt + St + t , t = 1, 2, . . . se estima t y se
determina si es o no ruido blanco mediante las pruebas Ljung-Box y Durbin-Watson. En
caso de encontrar que t no es ruido blanco, el siguiente paso es modelar esta componente
mediante tres posibles modelos
1. Medias Moviles de orden q, M A(q).
2. Autoregresivos de orden q, AR(p).
3. Medias Moviles Autoregresivos, ARM A(p, q).
Los tres modelos varan en su capacidad de capturar distintos tipos de
comportamiento de autoregresion. Comenzaremos dando las caractersticas
de las funciones de autocorrelacion y cantidadades relacionadads con cada
modelos, estas no tiene nada que ver con datos ni estimacion pero son fundamentales para desarrollar una comprension basica de las propiedades de
los modelos necesarios para llevar a cabo pronosticos inteligentes. Diebold
[1999, pag. 129]
89
90
6.2.
Definicion 6.2.1 (El Operador de Rezago). Se denota por L (lag, en ingles) y es tal que
L(Yt ) = Yt1 . Es decir, L opera sobre una serie rezagandola un perodo hacia atras. De
igual manera L(Yt1 ) = Yt2 , luego L(L(Yt)) = L2 (Yt ) = Yt2 y en general Lp (Yt ) =
Ytp . Se define tambien L0 = I, el operador identidad.
Un polinomio de grado p en el operador L se define como el operador formado por una
combinacion lineal de potencias de L
BP (L) = 0 + 1 L + 2 L2 + + pLp ,
(6.1)
tal que
BP (L)(Yt) = (0 + 1 L + 2 L2 + + pLp )Yt ,
=
p
X
j Lj Yt ,
j=0
p
X
j Ytj ,
j=0
t Z,
(6.2)
(6.3)
6.2.1.
Propiedades
1. E(Yt) = 0
2. V ar(Yt ) = (1 + 12 + + q2 ) 2
(6.4)
91
luego V ar(Yt) > V ar(t ), en general.
3. Cov(Yt , Yt+k ) = R(k), donde
R(K) =
con 0 = 1.
qk
X
2
j j+k , k < q + 1
(6.5)
j=0
0,
k q+1
R(k)
.
R(0)
i.i.d.
t N (0, 9),
t Z,
con
1 = 0.4, 2 = 0.4, 2 = 9,
entonces
R(0) = 1 + 0.42 + 0.42 9 = 11.88
R(1) = 9
21
X
j j+1 = 9(0 1 + 1 2 )
22
X
j=0
= 9 0.4 + (0.4)(0.4) = 5.04
R(2) = 9
j=0
Entonces la FAC es
5.04
= 0.42,
11.88
(3) = (4) = = 0
(0) = 1,
(1) =
(2) =
3.6
11.88
92
0.4
0.2
0.0
0.2
True ACF
0.4
0.6
0.8
1.0
True ACF
Lag
0.4
0.0
ACF
0.8
Series MA.3
10
15
Lag
k = 2, . . .
93
Y la facp muestral se define por (k)
1. (1)
= (1)
2. (2)
= 22
3. (k)
6.2.2.
Definicion 6.2.4. Dado un proceso MA(q), Yt = q (L)(t) donde q (L) = 1+1 L+2 L2 +
+ q Lq , entonces considerando el polinomio en z C, q (z) = 1 + 1 z + + q z q y
sus q races (z1 , z2 , . . ., zq ) C, es decir, valores z C tales que q (z) = 0, se dice que el
proceso Yt es invertible si se cumple
|zj | > 1,
j = 1, . . ., q,
(6.6)
j = 1, . . . , q
es decir, los inversos de las races deben caer dentro del crculo unitario complejo.
Ejemplo 6.2.2. Sea Yt M A(a) tal que
Yt = t 0.4t1 + 0.4t2 ,
veamos si Yt es invertible. Hallamos las races del polinomio q (z)
2 (z) = 1 0.4z + 0.4z 2 = 0,
p
0.4 0.42 4(0.4)(1)
z=
2(0.4)
r r
r
4
1 1 10
36
1 1 10 4
4=
=
2 2 4 10 10
2 2 2
10
r
1 1 10 36
1 3
=
i= i
2 2 2
10
2 2
(6.7)
94
por tanto
s
r
1 2
1
3 2
|z| =
+
=
+ 9 > 1,
2
2
4
luego Yt es invertible.
6.2.3.
(6.8)
1
q (z)
X
1
= 1 + 1 z + 2 z 2 + . . . =
j z j ,
q (z)
0 = 1,
(6.9)
j=0
con
1
q (L)
t =
1
Yt = (L)(Yt) = Yt + 1 Yt1 + 2 Yt2 + . . .
q (L)
(6.10)
Y despejando Yt
Yt = 1 Yt1 2 Yt2 + t ,
(6.11)
de donde conclumos que si hace la regresion de Yt sobre los primeros k rezagos Ytj , j =
1, . . . , k, entonces el k-esimo coeficiente es (k) = (k) 6= 0, k y como (k) 0
entonces (k) 0 cuando k . Por tanto, la facp de un MA(q) decrece a cero. En las
Figuras siguientes 6.3 se observa la fac y la facp de un MA(3).
95
True PACF
10
15
0.6
0.2 0.2
True PACF
0.8
0.4
0.0
True ACF
1.0
True ACF
20
10
Lag
(a) F AC
15
20
Lag
(b) F ACP
6.2.4.
Implementacion en R
En R para identificar se usan las funciones acf y pacf y para estimar una de las funciones
usadas es arma de la librera tseries.
96
10
15
20
25
0.2 0.4
0.1
0.6
Partial ACF
Series y
0.0
ACF
Series y
30
10
Lag
15
20
Lag
(a) F AC
(b) F ACP
6.3.
(6.12)
donde n RB(0, 2). Usando el operador de rezago L se puede escribir (6.12) como
p(L)(Yn ) = n ,
(6.13)
(6.14)
97
p (z) = 1 1 z 2 z 2 pz p ,
z C,
(6.15)
q
Notese que si zj = aj ibj entonces |zj | = a2j + b2j . La condicion (6.14) no es, sin
embargo, necesaria. En palabras, la condicion (6.14) se describe como para que un proceso
autoregresivo de orden p sea estacionario en covarianza, es suficiente que las races del
polinomio autorregresivo esten por fuera del crculo unitario. El crculo unitario aparece en
la Figura 6.5. En esta figura se observa la posicion de la raz zj y su conjugado zj .
6.3.1.
98
lo cual es una contradiccion (), ya que z C, |z| 1 entonces
p (z) 6= 0.
luego debe tenerse que = 0, es decir, el proceso definido en (6.12) es de media cero.
Un proceso Yt AR(p) con E(Yt ) = 6= 0 se define como
p (L)(Yt) = 0 + t ,
(6.16)
donde
0 = p (L)()
= (1 1 2 p ).
Notese que tambien se puede escribir Yt = (11 p )+1 Yt1 + +p Ytp +t ,
de donde Yt = 1 (Yt1 ) + + p (Ytp ) + t . Es decir, el proceso (Yt )
es AR(p) de media cero.
99
p
X
j=1
p
X
j=1
X
1
=
j z j ,
p (z)
j=0
1
(n ) = n + 1 n1 + 2 n2 + . . . .
p(L)
(6.18)
P
j=0
j .
k = 1, 2, . . ., p, p + 1, . . .
(6.19)
cumple que:
1. Se tiene un sistema lineal p p que cumple
A=
1
(1)
(2)
..
.
(1)
(2)
(3)
..
.
(p 1) (p 2)
(p 1)
(p 2)
(p 3)
..
.
1
, =
1
2
..
.
p
, =
(1)
(2)
..
.
(p)
100
entonces
A = .
(6.20)
k = p, p + 1, . . . (6.21)
Entoces (6.21) forma una ecuacion en diferencias finitas con condiciones iniciales
(1), . . ., (p), para (k), k p + 1, con solucion
(k) = s1 g1k + s2 g22 + + sp g2p,
(6.22)
(6.23)
con |zi | > 1 |gi | < 1, luego se debe cumplir que (k) 0, k
Nota 6.3.1. Si gi 1, por ejemplo gi = 1 se tendra si gik = si (1 )k y por tanto
(k) decae a cero mas lento que si gi = .
0.8
0.4
0.0
0.4
True ACF
0.8
True ACF
0.0
True ACF
True ACF
10
15
20
Lag
10
15
20
Lag
(a) = 0.35
(b) = 0.88
k=2
(6.24)
101
45
55
65
20000927
20010220
20010716
i.i.d.
t N (0, 2)
ecuacion caracterstica
6.3.2.
Proceso AR(1)
0 = (1 1 ),
(6.25)
102
notese que es un AR(1) con 1 = 1.
Propiedades del AR(1)
1. E(Yt) = =
0
1 1
2. Cov(Yt , Yt+k ) =
3. (k) = k1 ,
2 k1
,
1 k
1
k = 0, 1, . . .
1 < 1 < 1.
Nota 6.3.2. Diebold [1999, pag. 138], Si Yt AR(1) de media cero estacionario en
covarianza entonces
Yt = 1 Yt1 + t ,
t R.B.(0, 2)
es decir
(1 1 L)Yt = t
y se puede escribir como
Yt =
si se cumple que
1
t ,
1 1 L
f (z) =
X j
1
=
1 z j = 1 + 1 z + 21 z 2 + . . .
1 1 z
j=0
= (1
+ 1 + 21
+ . . .) =
1
1 1
Varianza Incondicional
= 21 V ar(Yt1|Yt1 ) + V ar(t ) = 2
Varianza Condicional
103
t R.B.(0, 2),
(6.27)
(6.28)
donde t RB(0, 2 ). El efecto de este cambio es que los errores no se toman incorrelacionados sino con autocorrelacion debil. Se define entonces un proceso ARMA(p,q) como
un modelo que combina las propiedades de memoria larga de los AR(p) con las propiedades
de ruido debilmente autocorrelacionado en los MA(q), y que tiene suficiente flexibilidad y
parsimonia. Usando la notacion del operador de rezago (6.28) se puede definir el proceso
ARM A(p, q) por
Definicion 6.4.1. Un proceso Yt ARM A(p, q) se define mediante la ecuacion (6.28), o
tambien por
p (L)(Yt) = q (L)(t),
t Z,
(6.29)
P
P
donde t RB(0, 2), y p (z) = 1 pj=1 j z j , q (z) = 1 + qj=1 j z j son los
polinomios autoregresivo y de media movil respectivamente.
Las condiciones de estacionariedad de la parte AR(p) y de invertibilidad de la parte MA(q)
se asumen en el modelo ARMA(p,q), (6.29). Por lo tanto, se asume que las races de las
ecuaciones p(z) = 0 y q (z) = 0 estan fuera del crculo unitario. Ademas se asume que
estos polinomios no tienen races en comun. Si se cumplen estas condiciones el proceso
Yt ARM A(p, q) es estacionario e identificable.
Ejemplo 6.4.1. Sea Yt ARM A(1, 1) dado por
1 (L)(Yt) = 1 (L)(t)
(6.30)
104
Ejemplo 6.4.2. Consideremos un modelo de descomposicion con tendencia lineal y estacionalidad de perodo 12, modelada por variables indicadoras donde el residuo estructural
es un proceso ARM A(1, 1). Entonces el modelo se escribe como el sistema de dos ecuaciones siguiente.
Yt = 0 + 1 t +
11
X
j Ij (t) + t ,
j=1
t = t1 + at + at1 ,
con at RB(0, 2 ), el residuo del proceso arma. Notese que el numero de parametros de
este modelo es 16, incluyendo la varianza 2 .
Ejemplo 6.4.3. Considere el proceso Yt ARM A(2, 1) dado por
Yt = 2 +
1 0.4L
t ,
1 1.5L + 0.9L2
t R.B.(0, 2)
osea
Yt = 2(1 1.5 + 0.9) + 1.5Yt1 0.9Yt3 + t 0.4t1
con ecuacion caracterstica
1 1.5z + 0.9z 2 = 0
y sus races dadas por
z=
1.5
p
1.52 4(0.9)
= 0.83 0.645i
2(0.9)
por tanto
|z| = 1.05 > 1
es un proceso estacionario en covarianza e invertible.
6.4.1.
Yt =
X
q (L)
t =
j tj = t + 1 t1 + 2 t2 + . . . ,
p(L)
j=0
105
por tanto
E(Yt) = E(t + 1 t1 + 2 t2 + . . . ) = 0.
2. En caso de ser E(Yt) = 6= 0 se coloca
Yt = +
q (L)
t
p (L)
(6.31)
de donde p(L)Yt = p(1) + q (L)t. Por ejemplo, sea Yt ARM A(1, 1) con
E(Yt) = entonces
Yt = +
1 + L
t
1 L
luego
(1 L)Yt = (1 L) + (1 L)t
pero (1 L) = = (1 ), luego
Yt = (1 ) + Yt1 + t + t1 .
3. La funcion de autocovarianza de un proceso Yt ARMA(p,q) estacionario de media
cero. Si se indica por R(k) = Cov(Yt , Yt+k ) su funcion de autocovarianza, para
k = 0, 1, . . . un metodo para calcular esta funcion se basa en la representacion
P
j
p (L)Yt = q (L)t , con q (z)/p(z) =
j=0 j z . Multiplicando ambos miembros
por Ytk y tomando esperanza E(.) se obtienen las ecuaciones recursivas siguientes,
similares a las ecuaciones Yule-Walker para AR(p), (6.17). Defina n = max(p, q + 1),
2 Pq
j=k j jk ,
0,
si k = 0, 1, . . ., n 1
si k = n, n + 1, . . . .
(6.32)
Ejemplo 6.4.4. (tomado de Brockwell and Davis [2002], pag. 93). Considere el
proceso ARMA(2,1) dado por (1L+ 14 L2 )Yt = (1+L)t. Entonces n = max(p, q+
1) = 2, por tanto, para k = 0, 1 se tiene el sistema lineal
1
R(0) R(1) + R(2) = 2 (0 0 + 1 1 ) = 2 (1 + 1 ),
4
1
R(1) R(0) + R(1) = 2 (1 0 ) = 2 0 = 2 .
4
(6.33)
106
Para calcular los coeficientes (j , j = 0, 1, . . .) se puede utilizar la funcion de
R, ARMAtoMA(a,b,m), la cual calcula los coeficientes j , j = 1, 2, . . ., m,
dados los vectores a = (1 , . . ., p) y b = (1 , . . . , q ). Entonces, escribiendo
ARMAtoMA(c(1.0, -0.25), 1.0, 10), se obtiene el vector
[1] 2.00000000 1.75000000 1.25000000 0.81250000 0.50000000
[6] 0.29687500 0.17187500 0.09765625 0.05468750 0.03027344
6.4.2.
107
4. FitAR, FitARMA, para estimacion de AR(p) y ARMA(p,q).
5. timsac, con la funcion autoarmafit(), para identificacion del modelo ARMA(p,q) con
menor AIC. El programa asume que el modelo ARMA(p,q) se define con q (z) =
P
1 qj=1 j z j , es decir, los coeficientes j se cambian de signo en esta librera.
Tambien tiene la funcion armafit() para ajuste de modelos ARMA.
6.4.3.
Una alternativa consiste en buscar una pareja de o rdenes (p, q) dentro de un rango inicial,
por ejemplo p, q = 0, 1, . . . , 10, que minimice alguna funcion de 2 , como por ejemplo el
AIC o el BIC.
6.4.4.
108
matriz tipo Toeplitz: las diagonales descendentes son constantes:
R(0)
R(1)
R(2)
..
.
R(1)
R(0)
R(1)
..
.
R(n 1) R(n 2)
R(n 1)
R(n 2)
R(n 3)
..
.
R(0)
(6.34)
Por ejemplo, para Yt un AR(p), R(k) se calcula mediante las ecuaciones Yule-Walker, (6.17),
P
R(k) = + pj=1 j R(k j). Por tanto, colocando = (, 2 , 1 , . . . , p, 1 , . . ., q )0 ,
la matriz depende del vector , y se escribe (). Este supuesto permite implementar la
estimacion por maxima verosimilitud. Se escribe la densidad Normal Multivariada como
1
1
1
0
q
f (y, ) =
exp (y )() (y )
2
(2)n/2 det(())
(6.35)
n
X
log f (yj , )
j=1
n
1
1
log(2) log det(()) (y )0 ()1 (y ).
2
2
2
(6.36)
(6.37)
La identificacion con base en el AIC se basa en comparar varios modelos ARM A(p, q) para
valores de, por ejemplo, p = 0, 1, . . ., 20 y p = 0, 1, . . . , 20 con base en el criterio AIC el
cual esta definido por
b + 2k,
AIC = 2L()
k = p+q
(6.38)
109
z1 = complex(3)
z1[1] = -0.8 - 1.3i
z1[2] = conj(z1[1])
z1[3] = 1.2
Entonces 3 (z) = 1 1 z 2 z 2 3 z 3
(z-z1[1])(z-z1[2])(z-z1[3])
polinomio monico
-z1[1]z1[2]z1[3] = -2.2796
a = poly.calc(z1)
a = a/a[1]
z2 = complex(2)
z2[1] = -1.2 -0.5i
z2[2] = conj(z2[1])
b = poly.calc(z2)
b = b/b[1]
n = 300
y = arima.sim(list(order=c(3,0,2), ar=-a[2:4], ma=b[2:3]), n=n,
sd=sqrt(0.3))
require(forecast)
auto.arima(y)
y1 = arima.sim(list(order=c(3,0,2), ar=-a[2:4], ma=b[2:3]), n=n,
sd=sqrt(0.3), randgeb = function(n,...))
auto.arima(y1)
stats::arima(y1)
mod1 = stats::arima(y1, c(3,0,2))
py1 = predict(mod1, n.ahead=20)
plot(1:70, c(y[(3200-49):3200],py1$pred),
110
ylim=c(min(py1$pred-1.64*py1$se),max()), type=b, col=2)
points(51:70,py1$pred, type=b, col=blue)
points(51:70, py1$pred+1.64*py1$se, type=l, col=blue)
points(51:70, py1$pred-1.64*py1$se, type=l, col=blue)
6.4.5.