Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Resumen En este trabajo se presenta una introducción simplificada al análisis de series tempo-
rales mediante modelos ARIMA estacionales. La exposición está orientada a facilitar el seguimiento
de otro curso sobre ajuste estacional basado en modelos.
1. Introducción
Una serie temporal es un conjunto de datos correspondientes a observaciones en distintos
instantes del tiempo de unas mismas variables. Se supone que los datos están sujetos a
fuentes de variabilidad aleatorias.
La definición que acabamos de dar es tan amplia que no permite trabajar con ella. Res-
tringiremos las series temporales a ser observaciones de una única variable de tipo continuo
recogidas en instantes de tiempo igualmente espaciados. También restringiremos la natura-
leza aleatoria de las series a la de los procesos de la familia ARIMA estacional o SARIMA.
Este documento es una introducción que solo expone un breve resumen de los resultados
más fundamentales, con el objetivo de luego poder comprender el ajuste estacional basado
en modelos SARIMA, el cual no es objeto de estudio aquı́.
Algunas referencias a los procesos SARIMA son Wei (1990), Brockwell and Davis (1991),
Box et al. (1994) o Peña (2005).
2. Autocovarianza y autocorrelación
Una serie temporal es un proceso estocástico (familia de variables aleatorias) y(ω, t),
donde ω es un elemento de un espacio de probabilidad y t representa al tiempo. Se supone
en series temporales que el tiempo es discreto y se suele indexar mediante los números
enteros, es decir, t ∈ Z = {· · · , −2, −1, 0, 1, 2, · · · }. Como es habitual, eliminaremos ω de la
notación y pondremos el tiempo como subı́ndice, de tal forma que escribiremos yt en lugar
de y(ω, t).
Se dice que yt es un proceso estacionario en sentido estricto si, para cada entero positivo
r y para cada j, t1 , · · · , tr ∈ Z, las funciones de distribución conjuntas de (yt1 , · · · , ytr ) y de
(yt1 +j , · · · , ytr +j ) son idénticas.
Se dice que yt es un proceso estacionario en sentido amplio si la definición anterior se cum-
ple para r ≤ 2 y el proceso tiene media y varianza, es decir, si E(|yt |) < ∞, V ar(yt ) < ∞ y
1
Unidad de Metodologı́a, e-mail: felix.aparicio.perez@ine.es
1
la distribución de (yt1 , yt2 ) coincide con la de (yt1 +j , yt2 +j ) (esto implica que las distribuciones
de yt1 y de yt1 +j coinciden).
La definición de proceso estacionario en sentido amplio implica que la media, varianza y
(auto)covarianza del proceso no dependan de j, es decir,
2
motivo es que, aunque ambos estimadores son sesgados, para ciertos tipos de procesos, el
error cuadrático medio del estimador que usa T es menor que el del estimador que usa T − k.
Finalmente, con denominador T , el estimador γ̂k es semidefinido positivo (como también lo
es γk ), pero no lo es con denominador T − k.
Suponiendo normalidad en el proceso y suponiendo también que ρk = 0, para todo k > r,
tenemos la aproximación de Bartlett, que es V ar(ρ̂k )) ' T1 (1 + 2ρ21 + 2ρ22 + · · · + 2ρ2r ). Como
no sabemos a priori si un ρj es significativo, puede ser razonable calcular secuencialmente
las varianzas de los ρ̂k en la forma
V ˆar(ρ̂1 ) = 1
T
(si ρ1 = ρ2 = · · · = 0),
3
3. Procesos ARMA
3.1. Procesos AR
Un proceso autorregresivo de orden p, AR(p), se escribe en la forma
p
X
yt + φj yt−j = εt , (4)
j=1
donde εt es ruido blanco con varianza σε2 . Esto quiere decir que E(εt ) = 0, V ar(εt ) = σε2 y
Cov(εt , εt+k ) = 0, para todo t y para todo k 6= 0. También llamaremos a los εt innovaciones
del proceso, pues representan la información nueva que llega en cada instante de tiempo.
El caso más sencillo es el AR(1), es decir, yt + φ1 yt−1 = εt . Para que sea estacionario, ha
de ser |φ1 | < 1 y, en este caso, se cumple que ρ̂k = φk1 , lo que supone que la autocorrelación
decrece geométricamente. P
Llamando φ(B) = 1 + pj=1 φj B j , el proceso es φ(B)yt = εt , y la condición necesaria y
suficiente para que sea estacionario es que todas las raı́ces (reales o complejas) de φ(B) (las
soluciones de φ(B) = 0), tengan módulo estrictamente mayor que 1.
En general, para un proceso AR(p) se cumple que πk = 0, si k > p, en palabras, la
autocorrelación parcial se anula para retardos mayores que el orden p del proceso. Esto
puede ayudar a identificar un proceso AR(p).
3.2. Procesos MA
Un proceso de medias móviles de orden q, M A(q), se escribe en la forma
q
X
y t = εt + θj εt−j , (5)
j=1
4
con εt ruido blanco de varianza σε2 . Utilizando la notación de los epı́grafes anteriores, podemos
escribir el modelo del proceso en la forma φ(B)yt = θ(B)εt .
La justificación para que trabajemos con procesos ARMA(p,q), con p, q números enteros,
se basa en dos hechos. El primero es que, dado un proceso estacionario cualquiera dentro de
una clase bastante amplia, se puede encontrar un proceso ARMA(p,q), para ciertos enteros p y
q que lo aproxime tanto como queramos en un cierto sentido (ver Hannan and Deistler (1988)
sección 7.2). El segundo motivo es que el número de parámetros que tenemos que estimar
en un proceso ARMA(p,q) es pequeño, y esto resulta imprescindible cuando trabajamos con
series temporales observadas de longitud finita.
El caso más sencillo es el ARM A(1, 1), que se escribe yt + φ1 yt−1 = εt + θ1 εt−1 . Para este
−φ1 )(1−φ1 θ1 )
proceso se cumple que ρk = φ1 ρk−1 si k > 1 y ρ1 = (θ11+θ 2 .
1 −2φ1 θ1
Los resultados sobre estacionariedad e invertibilidad de procesos AR y MA se extienden al
caso ARMA, es decir, en un proceso ARMA(p,q), la condición necesaria y suficiente para que
el proceso sea estacionario es que las raı́ces del polinomio φ(B) tengan todas módulo mayor
que 1 (dicho de otra forma, que estén todas fuera del cı́rculo unidad complejo). De la misma
forma, la condición necesaria y suficiente para que el proceso sea invertible es que las raı́ces
del polinomio θ(B) estén fuera del cı́rculo unidad.
Si tenemos una serie temporal y pensamos que un modelo ARMA puede ser adecuado para
representarla, el primer problema que encontramos es el de la identificación, es decir, la
estimación de los números enteros p y q en (6).
Habitualmente son de ayuda las funciones ACF y PACF, pues si la ACF deja de ser signi-
ficativa tras q retardos, el proceso probablemente pueda aproximarse por un M A(q) y si la
PACF deja de ser significativa tras p retardos, el proceso probablemente pueda aproximarse
por un AR(p).
En otro caso, un método sencillo consiste en empezar ajustando un ARM A(1, 1) e ir
incrementando p y q hasta encontrar un modelo con un ajuste aceptable.
Otros métodos más analı́ticos son:
1. Utilizar la denominada función de autocovarianza extendida, ver Tsay and Tiao (1984).
2. Aplicar un análisis de correlaciones canónicas, ver Tsay and Tiao (1985)
3. Usar un método de penalización, como el AIC o el BIC, que maximice la verosimilitud
del modelo ajustado, pero penalizando los modelos con más parámetros. En concreto,
se definen, para una serie temporal de longitud T , a la que se ajusta un modelo M
estacionario con r parámetros por máxima versimilitud:
−2 ln(V ) + 2r r
AIC(M ) = = ln(σ̂ 2 ) + 2 , (7a)
T T
ln(T )
BIC(M ) = ln(σ̂ 2 ) + r , (7b)
T
donde V es la versomilitud en el máximo y σ̂ 2 es la estimación de la varianza del residuo
del modelo estimado. Vemos que, en los dos casos, la penalización es función lineal del
número de parámetros r. Se busca el modelo que haga mı́nimo (por el cambio de signo
de ln(V )) uno de estos criterios.
5
3.4. Estimación y diagnóstico
3.4.1. Estimación
Los dos métodos de estimación más empleados son máxima verosimilitud exacta y mini-
mos cuadrados condicionales.
Dado el modelo estacionario M para la serie x1 , · · · , xT , la función de verosimilitud es
la función de densidad de la serie considerada como función de los parámetros del modelo,
V = f ({x1 , · · · , xT }; φ, θ, σ 2 ) = V (φ, θ, σ 2 ; {x1 , · · · , xT }), donde φ y θ representan todos los
parámetros autorregresivos y de medias móviles del modelo y σ 2 la varianza del término de
error.
El criterio de máxima verosimilitud exacta consiste en elegir los valores de φ, θ, σ 2 que
maximicen V . El cálculo de la verosimilitud exacta del modelo se realiza habitualmente en
forma recursiva utilizando el filtro de Kalman. También es posible calcularlo en forma no
recursiva, por ejemplo, como se explica en las páginas 49-50 (junto con las 135-6) de Reinsel
(1993). A veces, por simplicidad o bien para ahorrar tiempo, se utiliza una aproximación a
la verosimiltud utilizando un método llamado mı́nimos cuadrados condicionales.
El problema de optimización que hay que resolver para maximizar la verosimilitud es
un problema de mı́nimos cuadrados no lineales. Hay algoritmos robustos que convergen al
óptimo, pero, para acelerar la convergencia, es conveniente dar una estimación inicial de los
parámetros que no sea mala. Por ejemplo, el programa TRAMO utiliza el método de Hannan-
Rissannen para dar esa estimación inicial.
3.4.2. Diagnóstico
Una vez estimado un modelo, se trata de estudiar si ese modelo es adecuado para los
datos y si los parámetros son estadı́sticamente significativos. Como el modelo se basa en
unas hipótesis, una forma de hacerlo es ver si el modelo las cumple.
Para estudiar la significatividad de los parámetros se pueden usar sus desviaciones tı́picas
estimadas y, con ellas, hacer un contraste para ver si es razonable rechazar la hipótesis de
que cada parámetro es nulo.
Una comprobación importante consiste en ver si el modelo estimado es estacionario e
invertible, es decir, si las todas las raı́ces de los polinomios AR y MA tienen módulos mayores
que 1, respectivamente. Si no lo son, se debe intentar reestimar el modelo, o bien cambiarlo
por otro con p o q distintos. Los modelos estimados no estacionarios o no invertibles resultan
poco útiles. De todas formas, los programas de ordenador actuales que estiman modelos
ARMA suelen tener chequeos internos que detectan cuándo una solución no es esatcionaria o
invertible y corrigen el problema.
De todas las hipótesis, el hecho de que los residuos sean ruido blanco gausiano constituye
un hecho fundamental. De él, se deducen dos contrastes obvios, uno es la normalidad de los
residuos y otro es el que no estén autocorrelados.
La normalidad de los residuos se puede contrastar con varios estadı́sticos, por ejemplo,
P T 3
2 j=1 (ε̂j −ε̄)
el χ2 o el de Jarque-Bera. Este último consiste en calcular J = T6 (A2 + K4 ) (A = T σ̂ 3 ,
PT 4
j=1 (ε̂j −ε̄)
K = T σ̂
− 3 son, respectivamente, las estimaciones de los coeficientes de asimetrı́a
4
y de exceso de curtosis de los residuos y ε̄ = T1 Tj=1 ε̂j es la media de los residuos). Si los
P
6
residuos son normales J sigue una distribución χ22 .
Si los residuos son normales, sabemos que el que estén incorrelados implicará que sean in-
dependientes. Si son marcadamente no normales, puede que mejoren si conseguimos detectar
y tratar algún outlier en la serie o quizás necesitemos un modelo no lineal.
Llamando rj a las autocorrelaciones de los residuos, la falta de autocorrelación en estos
residuos se suele contrastar con el estadı́stico Q de Ljung-Box, también llamado contraste
√
Portmanteau. Tomando un entero k (en teorı́a dependiente de T , por ejemplo k = T ), es
k
X r̂j2
Q = T (T + 2) , (8)
j=1
T −j
donde r̃j son las autocorrelaciones muestrales de los cuadrados de los residuos. Este estadı́sti-
co seguirá, si un modelo lineal es adecuado, una distribución χ2k .
Otra herramienta útil de diagnóstico es un gráfico de los residuos del modelo en función
del tiempo. Este gráfico nos puede ayudar a detectar outliers (si hay residuos anormalemnte
grandes) o heterocedasticidad (por ejemplo, si la varianza de los residuos parece aumentar
con el tiempo, puede ser necesario transformar la serie tomando sus logaritmos).
3.5. Predicción
El problema de predicción o forecasting de una serie temporal consiste en obtener unos
valores estimados para los instantes futuros de la serie. El criterio de optimalidad que se
suele seguir es el de minimizar el error cuadrático medio. Con este criterio, se demuestra
que la predicción óptima en el instante T + k, basándonos en la información que hay (la
serie observada) hasta el instante T es ŷT (k) = ET (yT +k ) = E(yT +k /y1 , · · · , yT ), es decir,
la esperanza condicionada del proceso yT +k donde lo que condiciona es la información que
tenemos en el instante T , y ésta es la que proporciona la serie observada y1 , · · · , yT .
7
La predicción optima del proceso se suele calcular en forma recursiva usando el filtro de
Kalman, pero también es posible calcularla en forma no recursiva mediante la técnica que
se explica en las páginas 135-6 de Reinsel (1993).
Veremos ahora como obtener una aproximación recursiva a la predicción óptima. La
predicción óptima para el proceso invertible, pero no necesariamente estacionario, dado por
el modelo p q
X X
yt = φj yt−j + εt + θj εt−j (10)
j=1 j=1
o bien,
p q
X X
ŷT (k) = φj ŷT (k − j) + ET (εT +k ) + θj ET (εT +k−j ). (11)
j=1 j=1
p q
X X
ŷT +l−1 (1) = φj ŷT +l−1 (1 − j) + ET +l−1 (εT +l ) + θj ET +l−1 (εT +l−j ) =
j=1 j=1
p q
X X
φj yT +l−j + 0 + θj εT +l−j .
j=1 j=1
Restando estas dos ecuaciones vemos que el error de la predicción un instante hacia el futuro
es, simplemente, la perturbación de ese instante futuro,
yT +l − ŷT +l−1 (1) = εT +l .
Por tanto, para calcular las predicciones, hacemos, empezando en T + l = p + 1 e incremen-
tando secuencialmente T ,
p q
X X
εp+1 = yp+1 − ŷp (1) = yp+1 − φj yp+1−j − θj εp+1−j ,
j=1 j=1
p q
X X
εp+2 = yp+2 − ŷp+1 (1) = yp+2 − φj yp+2−j − θj εp+2−j ,
j=1 j=1
···
8
y sustituyendo los εp+1−j que desconozcamos en las primeras iteraciones por su esperanza,
que es 0 (por esta sustitución es que el método es solo aproximado). Por ejemplo, si el proceso
es un ARMA(2,2), será p = q = 2 y tenemos
ε3 = y3 − ŷ2 (1) = y3 − φ1 y2 − φ2 y1 − θ1 ε2 − θ2 ε1 .
Sustituimos ε2 = ε1 = 0 y obtenemos una estimación de ε3 , que llamaremos ε†3 , ahora
ε4 = y4 − ŷ3 (1) = y4 − φ1 y3 − φ2 y2 − θ1 ε†3 − θ2 ε2 .
De nuevo hacemos ε2 = 0 y obtenemos un ε†4 . Ahora
ε†5 = y5 − ŷ4 (1) = y5 − φ1 y4 − φ2 y3 − θ1 ε†4 − θ2 ε†3 ,
etc.
Ahora que tenemos los ε†j , podemos usar (11) con los ε†T +k−j en lugar de los εT +k−j . En
el ejemplo ARMA(2,2) será, recursivamente,
ŷT +1 = φ1 yT + φ2 yT −1 + θ1 ε†T + θ2 ε†T −1
ŷT +2 = φ1 ŷT +1 + φ2 yT + θ2 ε†T
ŷT +3 = φ1 ŷT +2 + φ2 ŷT +1 ,
ŷT +k = φ1 ŷT +k−1 + φ2 ŷT +k−2 , si k > 2.
En general, para un ARMA(p,q), si k > máx{p, q} es
ŷT +k = φ1 ŷT +k−1 + φ2 ŷT +k−2 + · · · + φp ŷT +k−p ,
es decir, la predicción, pasados los máx{p, q} instantes iniciales, obedece a una recursión más
simple, llamada función de predicción final (eventual forecasting function).
Otro problema importante es el de predicción hacia el pasado de la serie (backcasting).
Podemos reducir el problema de backcasting al de forecasting, considerando la serie invertida
en el tiempo, es decir, la serie yT , yT −1 , · · · , y2 , y1 . De esta forma, el hacer backcasting de
la serie original, es equivalente a hacer forecasting de la serie invertida en el tiempo. Como
sabemos que γk = γ−k , resulta que el modelo para la serie invertida en el tiempo es el mismo
que el de la serie original.
En resumen, para hacer backcasting (aproximado) de la serie original, hacemos forecasting
(aproximado) de la serie invertida en el tiempo, usando el mismo modelo que hayamos
obtenido para la serie original.
Otro concepto relacionado con éste es el de backcasting exacto de la serie temporal, que
se explica en las páginas 135-6 de Reinsel (1993) y que es el que permite hacer forecasting
exacto sin recurrir al filtro de Kalman. No es recursivo.
En cuanto a los errores cuadráticos medios de las predicciones, para obtenerlos es mejor
utilizar otra expresión para las predicciones, que es (demostrarla como ejercicio)
∞
X
ŷT (k) = ψk+j εT −j = ψk εt + ψk+1 εT −1 + ψk+2 εT −2 + · · · , (12)
j=0
9
Solución
∞
X ∞
X −1
X ∞
X
yT +k = ψi εT +k−i = (j = i − k) = ψk+j εT −j = ψk+j εT −j + ψk+j εT −j
i=0 j=−k j=−k j=0
Esta expresión es válida también para el caso de que la serie siga un modelo no estaciona-
rio, si se utiliza una condición inicial adecuada y se trunca la serie de (12). Lo más relevante
es que, como
∞
X k−1
X ∞
X
yT +k = ψi εT +k−i = ψi εT +k−i + ψi εT +k−i = (j = i − k) =
i=0 i=0 i=k
k−1
X ∞
X k−1
X
ψi εT +k−i + ψj+k εT −j = (12) = ψi εT +k−i + ŷT (k),
i=0 i=k i=0
Por tanto, como la esperanza de los εj es cero, las predicciones son insesgadas y su varianza
coincide con su error cuadrátrico medio. De (13), es
k−1
X
V ar(eT (k)) = σε2 ψj2 , (14)
j=0
expresión válida tanto si yt es estacionaria como si no lo es, pero en este último caso, vemos
que la varianza crece sin lı́mite conforme el horizonte de la predicción k aumenta, mientras
que, si la serie es estacionaria, al Pcrecer k, la varianza de la predicción se estabiliza (tiende
a un valor lı́mite finito, que es σε ∞
2 2
j=0 ψj ).
Incluso en el caso de un proceso VARMA vectorial Φ(B)yt = Θ(B)εt , Cov(εt ) = Σ, la
fórmula (14) se generaliza a
k−1
X
Cov(eT (k)) = Ψj ΣΨ0j , (15)
j=0
10
3.6. Representaciones AR y MA de un proceso
Todo proceso estacionario yt que sea puramente no determinista (que no contenga com-
ponentes que puedan ser predichas con exactitud) se puede expresar en la forma
∞
X
yt = µ + ψj εt−j = µ + ψ(B)εt = µ + εt + ψ1 εt−1 + ψ2 εt−2 + · · · , (16)
j=0
con πo = 1, ∞ 2
P
j=0 |πj | < ∞ y π(B) = 1 + π1 B + π2 B + · · · . En este caso, se dice que el
proceso yt es invertible. Notamos que φ(B) y es un ruido blanco.
θ(B) t
Para obtener los coeficientes de ψ(B) o de π(B) en las representaciones anteriores se
suele utilizar la denominada división larga, que consiste en igualar los coeficientes de las
potencias de B de igual orden en las expresiones θ(B) = φ(B)ψ(B) o φ(B) = θ(B)π(B)
para potencias crecientes e ir resolviendo recursivamente las ecuaciones. Por ejemplo, para
hallar la representación de Wold del proceso ARMA(1,1) dado por (1−0,5B)yt = (1+0,2B)εt ,
será (1 + 0,2B) = (1 − 0,5B)(1 + ψ1 B + ψ2 B 2 + ψ3 B 3 + · · · ), de aquı́, para las potencias
primeras en B es 0,2 = −0,5 + ψ1 , es decir, ψ1 = 0,7, para las potencias segundas tenemos
0 = −0,5ψ1 + ψ2 , de donde ψ2 = 0,35, para las potencias terceras, 0 = −0,5ψ2 + ψ3 , o bien
ψ3 = 0,175, en general ψj = 0,5ψj−1 = 0,7 · 0,5j−1 si j ≥ 2.
4. Procesos ARIMA
Hasta ahora nos hemos ocupado de procesos estacionarios. Un proceso será no estaciona-
rio cuando su media o su varianza y autocovarianzas cambien con el tiempo. Intentaremos
tratar la no estacionariedad de forma sencilla, aplicando una transformación al proceso, de
tal forma que el proceso transformado sea estacionario.
11
4.1. Procesos no estacionarios en varianza
Si, dado un proceso yt , su media no cambia con el tiempo, pero su varianza si lo hace, bajo
hipótesis sencillas, podemos encontrar transformaciones adecuadas hacia la estacionariedad.
Por ejemplo, si V ar(yt ) = C(E[yt ])2 , dode C es una constante, la transformación lo-
garı́tmica zt = log(yt ) hace que zt tenga varianza (aproximadamente) constante. Esta si-
tuación se da en un número grande de series económicas, siendo por ello la transformación
logarı́tmica muy utilizada en el análisis de series temporales económicas.
√
Veamos otros dos ejemplos, si V ar(yt ) = CE[yt ], con C constante, entonces zt = yt
tiene varianza (aproximadamente) constante y si V ar(yt ) = C(E[yt ])4 , entoncs zt = y1t tendrá
varianza aproximadamente constante.
Una transformación más general que intenta estabilizar la varianza es la de Box-Cox, dada
y λ −1
por zt = t λ , con λ parámetro real. Las transformaciones anteriores son casos particulares
de la de Box-Cox para valores de λ iguales a 0, 1/2 y −1, respectivamente.
12
estaremos sobrediferenciando la serie yt .
Cuando el objetivo de un análisis de series temporales no es la predicción de los va-
lores futuros, la sobrediferenciación es un problema menos importante que la subdiferen-
ciación, pues proporciona procesos zt que siguen siendo estacionarios, aunque más comple-
jos que
Pp los originales. En
Pefecto, si yt es un proceso ARMA(p,q) estacionario, con modelo
q
yt − j=1 φj yt−j = at + j=1 θj at−j , al diferenciar, obtenemos
p p q q
X X X X
zt , yt − yt−1 = φj yt−j − φj yt−1−j + at + θj at−j − at−1 − θj at−1−j =
j=1 j=1 j=1 j=1
p q
X X
φj zt−j + at + (θ1 − 1)at−1 + (θj − θj−1 )at−j − θq at−1−q ,
j=1 j=2
es decir, zt es un proceso ARMA(p,q+1) con la misma parte autorregresiva (y, por tanto,
estacionario). Por este motivo, si partimos de un modelo ARMA(p,q) ajustado a una serie
(diferenciada o no) y decidimos diferenciarla una vez mas, es una buena medida de precaución
el aumentar q a q + 1, es decir, ajustar a la nueva serie un modelo ARMA(p,q+1). Si hemos
sobrediferenciado, es muy probable que el nuevo polinomio de medias móviles obtenido tenga
una raı́z cercana a 1 que, aproximadamente, cancele al operador diferencia 1 − B que hemos
aplicado a la parte autorregresiva. Es decir, si nuestro proceso era ARMA(p,q) estacionario e
invertible de la forma φ(B)yt = θ(B)εt y lo diferenciamos, queda, teniendo en cuenta que la
multiplicación de polinomios es conmutativa,
(1 − B)φ(B)yt = φ(B)(1 − B)yt = φ(B)zt = (1 − B)θ(B)εt . (20)
Por tanto, el proceso diferenciado zt es ARMA(p,q+1) con el mismo polinomio autorrregresivo
φ(B) y con un polinomio de medias móviles de grado q + 1, dado por (1 − B)θ(B), que tiene
la raı́z B = 1. Incluso si, al estimar un modelo ARMA para nuestra serie diferenciada no
aumentamos q, es muy probable que nos aparezca la raı́z B = 1 en el polinomio estimado
para la parte de medias móviles, debido a que, como ya hemos dicho, al estimar modelos
ARIMA, la convergencia de parámetros asociados a raı́ces unitarias es mas rápida que la de
parámetros asociados a raı́ces estables (superconvergencia).
Otro criterio que se suele utilizar en la práctica para detectar la sobrediferenciación, es
sospechar que la pueda haber si la varianza de la serie aumenta al diferenciarla. Esto se basa
en que (ejercicio) si nuestra serie sigue el modelo yt = (1+θB)εt , la serie diferenciada zt es un
proceso MA(2) con varianza mayor que la de yt . Sin embargo, para otros procesos yt que no
sean MA(1) no tiene por qué cumplirse esta regla, con lo cual el criterio no siempre funciona
y debe emplearse con prudencia. Como ejercicio, comprobar que si la serie yt es un proceso
MA(2) dado por yt = (1 + θ1 B + θ2 B 2 )εt , entonces el proceso diferenciado zt = (1 − B)yt
tiene varianza mayor que la de yt si y solo si 1 − 2θ1 + (θ1 − θ2 )2 > 0. De esto se deduce
que si θ1 = θ2 = 0,6 el proceso yt es invertible (tiene raı́ces aproximadas −0,5 ± 1,19i, con
módulo mayor que 1) y, en cambio, V ar(zt ) < V ar(yt ).
Solución
13
V ar(zt ) > V ar(yt ) si y solo si 2(1 − θ + θ2 ) > 1 + θ2 , o sea, si y solo si (θ − 1)2 > 0, lo
cual es cierto (salvo si θ = 1, que es un caso que no consideramos, pues el proceso no
serı́a invertible).
es decir, es una suma ponderada, con pesos decrecientes geométricamente, de las observacio-
nes pasadas. Se suele llamar a esta predicción una media móvil ponderada exponencialmente
(EWMA).
Las medias móviles ponderadas exponencialmente se aplican con frecuencia en la práctica.
Acabamos de ver que una justificación de su uso consiste en suponer que el proceso al que
se aplican es IMA(1,1). Su uso tan extendido se debe a que un proceso IMA(1,1) se ajusta,
en forma aproximada, a muchas series económicas con tendencia lineal.
La predicción de un proceso ARIMA se hace igual que la de un proceso ARMA, usando
φ(B)∆d en lugar de φ(B), pues en la predicción de un proceso ARMA tan solo hicimos la
hipótesis de que el proceso fuera invertible, pero no necesariamente estacionario. Sin embar-
go, debe notarse que, como se deduce de (14), en el caso no estacionario los errores de las
predicciones crecen sin cota con el horizonte de la predicción, mientras que en el caso esta-
cionario, se estabilizan. Esto hace que, cuando el objetivo de un análisis de series temporales
es predecir los valores futuros de la serie, la sobrediferenciación sea un problema importante.
Volviendo a la distinción entre tendencias deterministas y aleatorias, podemos, para el
caso de tendencias lineales, dar los modelos respectivos:
θ(B)
yt = α + βt + εt , (23a)
φ(B)
θ(B)
(1 − B)yt = β + εt , (23b)
φ(B)
donde los polinomios φ(B) y θ(B) son estables (todas sus raı́ces tienen módulos mayores que
θ(B)
1) y, por tanto, φ(B) εt es un proceso estacionario e invertible.
Es decir, en (23a), la serie corregida por la media (variable en el tiempo) yt − α − βt es
estacionaria e invertible, mientras que, en (23b), la serie diferenciada corregida por la media
(constante) (1 − B)yt − β es estacionaria e invertible.
14
El distinguir una tendencia aleatoria de una determinista es un problema de saber si la
serie tiene una raiz B = 1 en el modelo de su parte autorregresiva.
Si partimos de que nuestra serie siga el modelo
yt = α + βt + ut , (24)
donde a(B)ut = b(B)εt , tenemos dos casos. En el primer caso, a(B) es un polinomio estable,
entonces (24) coincide con (23a). En el segundo caso, a(B) = (1 − B)a∗ (B), donde a∗ (B) es
estable. Entonces, de (24), diferenciando, tenemos
b(B) b(B)
(1 − B)yt = 0 + (1 − B)βt + ∗
εt = β + ∗ εt , (25)
a (B) a (B)
(1 − B)θ(B)
(1 − B)yt = β + εt , (26)
φ(B)
1 θ(B) θ(B)
yt = β+ εt = α + βt + εt , (27)
1−B (1 − B)φ(B) (1 − B)φ(B)
con lo cual, si le restamos la tendencia lineal, es decir, si trabajamos con yt − α − βt, nos
θ(B)
queda un proceso (1−B)φ(B) εt en el que la varianza crece en el tiempo (por el término 1−B en
el denominador). En otras palabras, estabilizamos la media del proceso, pero no su varianza.
1
En el desarrollo anterior hemos usado el hecho de que 1−B β = (1 + B + B 2 + B 3 + · · · )β es
una tendencia lineal (serı́a suma infinita de términos idénticos a β, pero nuestra serie no es
infinita, asi pues, una vez impuesta una condición inicial, queda α + βt).
Otra forma de expresar lo anterior es decir que si nuestro proceso tiene una tendencia
lineal determinista y lo diferenciamos, quitamos esa tendencia y metemos una raı́z unidad
en la parte de medias móviles del proceso estimado, mientras que, si nuestro proceso tiene
una tendencia aleatoria y, por tanto, deberı́amos diferenciarlo, y no lo hacemos, sino que
estimamos una tendencia determinista lineal, entonces quitamos la tendencia, pero metemos
una raı́z unidad en la parte autorregresiva del proceso. El meter la raı́z unidad en la parte de
medias móviles es menos problemático en la prctica que hacerlo en la parte autorregresiva
(por ejemplo, podemos cambiar la raı́z B = 1 por B = 0,99 en la parte de medias móviles)
para tener un proceso estimado invertible).
En (23) hemos supuesto que era razonable utilizar tendencias lineales, deterministas o
aleatorias. Sin embargo, en economia, muchas series están caracterizadas por una tendencia
exponencial, de la forma yt = eβt . El motivo es que, si derivamos en la expresión anterior,
15
tenemos que dy dt
t
= βeβt = βyt , es decir, el crecimiento de yt es proporcional a su nivel y esto
es una hipótesis razonable en muchas series económicas. Ahora, tomando logaritmos en la
expresión de yt obtenemos una tendencia lineal, pues log(yt ) = βt. Esto, a su vez, es otra
justificación, distinta de la que dimos antes, de la necesidad de tomar logaritmos en muchas
series económicas, puesto que los logaritmos linealizan la tendencia de muchas series.
Se puede hacer un razonamiento análogo para tendencias aleatorias. En efecto, si aplica-
mos a log(yt ) el operador de diferencia regular tenemos
yt yt − yt−1 yt − yt−1
(1 − B)log(yt ) = log = log(1 + )' , (28)
yt−1 yt−1 yt−1
debido al desarrollo de Taylor
x2 x3 x4
log(1 + x) = x − + − + · · · , si x ∈ (−1, 1],
2 3 4
que es parecido a x si x es pequeño. Es decir, tomando x = yty−y t−1
t−1
, la aproximación (28) es
yt −yt−1
buena si la tasa de variación de la serie yt , que es yt−1 es pequeña, como suele serlo en la
práctica. En resumen, de (28) y de (23b) vemos que la hipótesis aproximada que hacemos
para ajustar un modelo ARMA estacionario a las diferencias de los logaritmos de una serie es
que las tasas de variación de la serie sean un proceso estacionario.
φ(B)Φ(B s )∆d ∆D s
s yt = θ(B)Θ(B )εt , (29)
donde
16
∆s = 1 − B s es el operador de diferencia estacional, por ejemplo, si s = 12, ∆12 yt =
yt − yt−12 resta de cada valor de la serie el valor del mismo mes del año anterior. ∆D
s yt
diferencia estacionalmente D veces la serie yt .
El ejemplo más clásico de modelo SARIMA es el ARIM A(0, 1, 1) × (0, 1, 1)s , llamado modelo
de lineas aéreas, es decir,
∆∆s yt = (1 + θB)(1 + ΘB s )εt , (30)
que aproxima razonablemente bien a un número importante de series temporales económicas
estacionales.
Un proceso ARIMA estacional no es estacionario, pues su esperanza varı́a con el tiempo.
Si tenemos una serie temporal y queremos ajustarle un modelo ARIMA estacional, el
primer paso es determinar los órdenes de diferenciación regular d y estacional D, para tener
un proceso diferenciado estacionario.
La identificación de un proceso ARIMA estacional estacionario es más complicada que la
de un proceso no estacional. Un primer método será el de fuerza bruta, que consiste en, para
todas las posibles combinaciones de ordenes bajos p, P , q y Q, calcular un criterio como el
AIC o el BIC y escoger el modelo que optimice el criterio.
Este método es costoso computacionalmente y, aunque, dada la gran velocidad de los
ordenadores actuales, podrı́a utilizarse, se suele simplificar el proceso en alguna forma. Por
ejemplo, el programa TRAMO fija primero un AR(3) para la parte regular y busca unos P y Q
de la parte estacional óptimos entre los de órdenes bajos. En una segunda etapa, con esos P
y Q óptimos fijos, busca unos p y q de órdenes bajos óptimos para la parte regular. En una
tercera y última etapa, con los p y q óptimos fijos busca otros P y Q óptimos entre los de
órdenes bajos y el modelo obtenido es elegido.
Para detectar estacionalidad en los residuos se puede emplear el test de Pierce, de tipo
Portmanteau, dado por
3 2
X r̂sj
Qs = T (T + 2) , (31)
j=1
T − sj
que utiliza las tres primeras autocorrelaciones estacionales y que sigue, si no hay estaciona-
lidad en los residuos, una distribución χ22 .
17
< x, y >= < y, x >, ∀x, y ∈ H
< λx + µy, z >= λ < x, z > +µ < y, z >, ∀x, y, z ∈ H, ∀λ, µ ∈ C
Todo producto escalar define una norma mediante kxk = (< x, x >)1/2 , por analogı́a con el
caso de espacios euclı́deos de dimensión finita, la norma de un vector se interpreta como su
longitud.
En todo espacio donde haya definido un producto escalar se cumplen la desigualdad de
Cauchy-Schwartz,
|< x, y >| ≤ kxkkyk, ∀x, y ∈ H (33)
y la desigualdad triangular,
Además, si el espacio con producto escalar es completo (en él, toda sucesión de Cauchy
converge a un elemento del espacio), se dice que el espacio es de Hilbert.
Se dice que dos vectores x, y ∈ H son ortogonales, y se denota x⊥y, si < x, y >= 0.
Un conjunto de elementos {hi }i∈I de H es una base ortogonal de H si hi ⊥hj , ∀i, j ∈ I
(es decir, son ortogonales dos a dos) y, además, cualquier vector de H se puede escribir
como combinación lineal de los {hi }i∈I . La base es ortonormal si, además de ser ortogonal,
khi k = 1, ∀i ∈ I (sus vectores tienen norma 1).
Todo espacio de Hilbert admite una base. Sin embargo, solo nos interesarán los espacios
de Hilbert con bases ortogonales finitas o numerables. Se puede demostrar que todo espacio
de Hilbert separable admite una base ortogonal numerable. Los espacios de Hilbert con los
que trabajaremos tienen bases finitas o numerables. Dada una base ortogonal, es elemental
convertirla en una base ortonormal, sin mas que dividir cada vector de la base por su norma.
En un espacio de Hilbert con una base finita o numerable hi , i ∈ Z se cumple que
∞
X
x= αj hj , ∀x ∈ H, (35)
j=−∞
es decir, dada la base, podemos representar cada elemento x de H mediante una sucesión
de escalares {αj }j∈Z . Además, los escalares αj son únicos y se obtienen mediante la sencilla
fórmula
< x, hj >
αj = , ∀j ∈ Z. (36)
< hj , hj >
Los αj se llaman coeficientes de Fourier de x respecto de la base {hj }j∈Z
También se cumple la relación de Parseval, que dice que
∞
X
2
kxk = |αj |2 , ∀x ∈ H (37)
j=−∞
18
Si {xt }t∈Z es periódica con perı́odo T , {xt } queda totalmente determinada por cualquier
trozo suyo de longitud T . Por tanto, la identificaremos con x , x1:T , (x1 , · · · , xT ).
Las sucesiones periódicas con perı́odo T constituyen un espacio de Hilbert complejo de
dimensión T con la suma, la multiplicación por escalares complejos y el producto escalar
definidos, respectivamente, por
x + y , (x1 + y1 , · · · , xT + yT ), (38a)
Definimos c , T −1
T
2
y d , 2
, donde [x] denota la parte entera del número real x. No es
difı́cil demostrar que una base ortonormal de este espacio de Hilbert está dada por los vectores
2jtπ 2jπ 2jπ 2jπ
h−c , · · · , hd , donde h0j = (h1,j , · · · , hT,j )0 = ({ei T }T )0
t=1 = (ei 2i
T ,e T ,··· , eT i T )0 , es
decir,
−2cπ
−2(c−1)π i −2π
ei T ei T
e T
−2(c−1)π
e2i −2cπ
T
e 2i T −2π
e2i T
h−c = , h−c+1 = , · · · , h−1 = ,
··· ··· ···
−2cπ −2(c−1)π −2π
eT i T eT i T eT i T
i 2π 2(d−1)π 2dπ
i
ei T
1 e T e T
2(d−1)π
1 2i 2π 2i 2i 2dπ
, h1 = e T , · · · , hd−1 = e T
h0 = e T
, h =
· · · ··· d
··· ···
2π 2(d−1)π 2dπ
1 eT i T eT i T eT i T ,
19
En efecto, usando la fórmula para sumar una progresión geométrica, es
2πj 2πj 2πj 2πk 2πk 2πk
< hj , hk >=< (ei T , e2i T , · · · , eT i T ), (ei T , e2i T , · · · , eT i T ) >=
1 i 2π(j−k) 2π(j−k) 2π(j−k)
(e T + e2i T + · · · + eT i T ) = (1 si j = k, seguimos con el caso j 6= k) =
T
2π(j−k) 2π(j−k) 2π(j−k) 2π(j−k) 2π(j−k)
1 eT i T ei T − ei T 1 ei T (eT i T − 1)
2π(j−k)
= 2π(j−k)
=0
T T
ei T −1 ei T −1
(pues ei2π(j−k) = 1)
2π 2π
Las funciones complejas ei T y e−i T son periódicas y ambas completan un ciclo en T
instantes de tiempo (tienen perı́odo fundamental igual a T ), por eso, las frecuencias ω1 y
ω−1 se consideran una sola, llamada primera frecuencia fundamental. Análogamnete para
las demas frecuencias, es decir, para cada j ∈ {2, · · · , mı́n{c, d}}, las funciones complejas
2jπ 2jπ
ei T y e−i T son periódicas y ámbas completan j ciclos en T unidades de tiempo (tienen
perı́odo fundamental igual a T /j), las frecuencias ωj y ω−j se consideran una sola, llamada
componete armónica j−ésima.
Si T es impar, c = d = T −1 2
y (ω0 , {ω−1 , ω1 }, · · · , {ω−d , ωd }) = (ω0 , ω1 , · · · , ωd ) son las
frecuencias fundamentales. Todas ellas, excepto ω0 , son la agrupación de dos frecuencias.
Si T es par, d = T2 , c = d − 1 y (ω0 , {ω−1 , ω1 }, · · · , {ω−c , ωc }, ωd ) = (ω0 , ω1 , · · · , ωc , ωd )
son las frecuencias fundamentales. Todas ellas, excepto ω0 y ωd , son la agrupación de dos
frecuencias.
Vemos también que todas las frecuencias son múltiplos de la primera y, por tanto, están
relacionadas armónicamente entre sı́.
Por (35), cualquier vector de este espacio de Hilbert, es decir, cualquier sucesión periódica
x, se podrá representar en la forma
d
X
x= λj hj , (40)
j=−c
2jπ
donde ht,j , eit T es el elemento t del vector hj . Además, como la sucesión es periódica, la
relación anterior es válida para todo t sin mas que hacer corresponder a cada t otro t∗ entre
1 y T , es decir,
d d
∗ 2jπ
X X
xt = λj ht∗ ,j = λj eit T , (42)
j=−c j=−c
20
Usando (36), es
T
< x, hj > 1 X −it 2jπ
λj = = xt e T , j ∈ {−c, · · · , d} (43)
< hj , hj > T t=1
T
X 2jπ
µj = xt e−i(t−1) T , (44)
t=1
En realidad, tanto (43) como (44) se pueden definir para todo j ∈ Z y resultan ser sucesiones
periódicas con perı́odo T , por lo cual, si, por ejemplo, un programa de ordenador nos calcula
T −1
{µj }j=0 , podemos obtener inmediatamente los {λj }dj=−c , teniendo en cuenta que la sucesión
es periódica.
Dada una sucesión periódica x, podemos definir su energı́a como su norma al cuadrado,
T
21X 2
kxk = x. (46)
T t=1 t
es decir, la relación de Parseval nos dice cómo se distribuye la energı́a de la sucesión periódica
x a lo largo de las distintas frecuencias ω−c , · · · , ωd . En realidad, como las frecuencias son
iguales por pares, consideramos solo ω1 , · · · , ωd y duplicamos la energia asociada a cada
frecuencia (excepto que, como dijimos P antes, en el caso de T par, no duplicamos la de ωd ).
Además, como, de (43), es λ0 = T1 Tt=1 xt (la media de la serie), no se suele considerar
la frecuencia ω0 = 0 ni su energı́a λ20 , o bien, equivalentemente, se resta a la serie su media
para que sea λ0 = 0
Como eix = cos(x) + i sen(x), no es difı́cil ver que podemos transformar la base anterior
en otra formada por las funciones seno y coseno con los argumentos no negativos de las
funciones exponenciales de la base, en concreto, por ser cos(0) = 1 y sen(0) = 0, para el caso
21
de que T sea par, las columnas de la matriz de T × T
T T
2πjt 2πjt −1
2
[1, f1 , g1 · · · , f T , gT , fT ] , 1, {cos( T ), sen( T )}t=1 , cos(πj) ,
−1 −1
2 2 2 j=1
1 cos( 2π ) sen( 2π cos( 4π
T T
) T
) ··· −1
4π 4π 8π
1 cos( ) sen( )
T T
cos( T ) · · · 1 (48)
· · · ··· ··· ··· ··· ···
T T T +1
1 cos( 2T π ) sen( 2T π ) cos( 2 T π ) · · · (−1)T
son también una base ortogonal del espacio de Hilbert, mientras que en el caso de T impar,
una base ortogonal está formada por las columnas de la matriz de T × T
T −1 T
2πjt 2πjt 2
[1, f1 , g1 · · · , f T −1 , g T −1 ] , 1, {cos( T ), sen( T )}t=1 ,
2 2 j=1
1 cos( 2π
T
) sen( 2π
T
) cos( 4π
T
) ··· sen( π(TT−1) )
1 4π 4π
cos( T ) sen( T ) 8π
cos( T ) ··· sen( 2π(TT −1) )
(49)
· · · ··· ··· ··· ··· ···
2T π 2T π T +1 2T −1 π(T −1)
1 cos( T ) sen( T ) cos( 2 T π ) · · · sen( T
)
1 si k = j = 0
2πjt 2πkt
< sen( T ), sen( T ) >= 12 si j = k ∈ {1, · · · , c} (50b)
0 si j 6= k,
donde ( P
T
1
xt cos( 2πjt ), j ∈ {0, T /2},
aj = T2 Pt=1
T
T
2πjt (53a)
T t=1 xt cos( T ), j ∈ {1, · · · , c},
22
T
X
bj = 2
T
xt sen( 2πjt
T
), j ∈ {1, · · · , c}. (53b)
t=1
No es difı́cil comprobar que
a0 = λ0 , aT /2 = λT /2 (54a)
aj = λj + λ−j = λj + λ̄j , j ∈ {1, · · · , c} (54b)
bj = i(λj − λ−j ) = i(λj − λ̄j ), j ∈ {1, · · · , c} (54c)
Por tanto, también es
aj − ibj
λj = , j ∈ {1, · · · , c} (55)
2
Los valores aj y bj son, por definición, números reales. Esta es la ventaja de utilizar la
base de senos y cosenos, siempre se trabaja con números reales. Sin embargo, para hacer
desarrollos teóricos es mas cómodo trabajar con la exponencial compleja, pues con ella las
fórmulas tienen una expresión más compacta.
Como ejercicio, dada la sucesión periódica {xt }t∈Z , definida como x1 = 4, x2 = 1, x3 = 3
y xt+3j = xt , para todo j ∈ Z, vamos a calcular su transformada de Fourier usando tanto
(41) como (52). Hacer el mismo ejercicio para la sucesión periódica de longitud par dada por
y1 = 2, y2 = 1, y3 = 4, y4 = 3 y yt+3j = yt , para todo j ∈ Z.
Solución
Para {xt } es c = d = 1. Por (41), tenemos que
λ0 = 13 (4 + 1 + 3) ≈ 2,6666667,
λ0 = 14 (2 + 1 + 4 + 3) = 2,5,
a0 = 14 (2 + 1 + 4 + 3) = 2,5,
23
a1 = 42 (2 cos(2π/4) + 1 cos(4π/4) + 4 cos(6π/4) + 3 cos(8π/4)) = 1,
b1 = 42 (2 sen(2π/4) + 1 sen(4π/4) + 4 sen(6π/4) + 3 sen(8π/4)) = −1,
a2 = 41 (2 cos(4π/4) + 1 cos(8π/4) + 4 cos(12π/4) + 3 cos(16π/4)) = −0,5,
y se cumplen a0 = λ0 , a2 = λ2 , λ1 = (a1 − ib1 )/2.
Solución
T −1
Como R devuelve {λj }j=0 , utilizaremos (45) y lo que se dice en el párrafo que le sigue
d
para recuperar {λj }j=−c .
En primer lugar, para {xt }.
> x<-c(4,1,3)
> L1<-(1/3)*(x[1]*exp(-2*1i*pi/3)+x[2]*exp(-4*1i*pi/3)+x[3]*exp(-6*1i*pi/3))
> Lm1<-(1/3)*(x[1]*exp(2*1i*pi/3)+x[2]*exp(4*1i*pi/3)+x[3]*exp(6*1i*pi/3))
> L0<-(1/3)*(x[1]*exp(0)+x[2]*exp(0)+x[3]*exp(0))
> (lambdax<-c(L0,L1,Lm1)) #Nuestra DFT para x
[1] 2.6666667+0.0000000i 0.1666667-0.8660254i 0.1666667+0.8660254i
> (mux<-fft(x)) #La DFT de R para x
[1] 8+0.000000i 2+1.732051i 2-1.732051i
> (lambdax2<-(mux/3)*exp((-1i*2*pi*c(0,1,-1))/3)) #La conversion
[1] 2.6666667+0.0000000i 0.1666667-0.8660254i 0.1666667+0.8660254i
24
> lambdax-lambdax2 #Despues de la conversion ambas coinciden
[1] 0.000000e+00+0i -5.551115e-17+0i -5.551115e-17+0i
> x<-c(2,1,4,3)
> L1<-(1/4)*(x[1]*exp(-2*1i*pi/4)+x[2]*exp(-4*1i*pi/4)+
+ x[3]*exp(-6*1i*pi/4)+x[4]*exp(-8*1i*pi/4))
> Lm1<-(1/4)*(x[1]*exp(2*1i*pi/4)+x[2]*exp(4*1i*pi/4)+
+ x[3]*exp(6*1i*pi/4)+x[4]*exp(8*1i*pi/4))
> L0<-(1/4)*(x[1]*exp(0)+x[2]*exp(0)+x[3]*exp(0)+x[4]*exp(0))
> L2<-(1/4)*(x[1]*exp(-4*1i*pi/4)+x[2]*exp(-8*1i*pi/4)+
+ x[3]*exp(-12*1i*pi/4)+x[4]*exp(-16*1i*pi/4))
> (lambdax<-c(L0,L1,L2,Lm1)) #Nuestra DFT para x
[1] 2.5+0.0i 0.5+0.5i -0.5+0.0i 0.5-0.5i
> (mux<-fft(x)) #La DFT de R para x
[1] 10+0i -2+2i 2+0i -2-2i
> (lambdax2<-(mux/4)*exp((-1i*2*pi*c(0,1,2,-1))/4)) #La conversion
[1] 2.5+0.0i 0.5+0.5i -0.5-0.0i 0.5-0.5i
> abs(lambdax-lambdax2) #Despues de la conversion ambas coinciden
[1] 0.000000e+00 2.482534e-16 6.123234e-17 2.482534e-16
25
de donde, ω = f π6 = f 2π rd
12 mes
. (61b)
De esta forma, como la información útil del espectro está en ω ∈ [0, π], ahora estará en
f ∈ [0, 6]. Ası́, una frecuencia de f = 1 corresponderá, por ser ω = 2π 12
= π6 , con ciclos de
perı́odo P = 2πω
= 12 meses, es decir, que se repiten una vez al año. De la misma forma, una
frecuencia de f = 2 (ω = π3 ) corresponde con ciclos de 6 meses, que se repiten dos veces al
año, f = 3 (ω = π2 ) con ciclos de 4 meses, que se repiten 3 veces al año, f = 4 (ω = 2π 3
)
5π 12
con ciclos de 3 meses, que se repiten 4 veces al año, f = 5 (ω = 6 ) con ciclos de 5 = 2,4
meses, que se repiten 5 veces al año y f = 6 (ω = π) con ciclos de 2 meses, que se repiten
6 veces al año. A estos ciclos que hemos mencionado se les suele llamar, por repetirse una o
mas veces al año (un número entero de veces), ciclos estacionales. El hecho de que se repitan
un número entero de veces es el que hace que todos los años tengan sus crestas y valles en
las mismas épocas del año y que sean, por tanto, lo que nosotros llamamos estacionales.
Las frecuencias f ∈ (0, 1) (ω ∈ (0, π6 )) se asocian con movimientos de la serie a largo
plazo, a los que se suele llamar ciclos económicos (ciclos que duran más de un año), para
diferenciarlos de los ciclos estacionales.
La frecuencia ω = f = 0 se asocia con la tendencia, la cual no es un ciclo (no se repite),
aunque también puede considerarse como un ciclo que se repite en un tiempo infinito.
Ya sabemos que las frecuencias correspondientes a f > 6 (ω > π) no tienen información
útil. Una forma intuitiva de ver que por encima de ω = π esto es ası́ consiste en notar que,
el que observemos la serie mensualmente, implica que el ciclo mas rápido que podemos ver
dura 2 meses. De él, podrı́amos observar que, al principio, estuviera, por ejemplo, arriba, el
mes siguiente abajo y, el segundo mes siguiente, de nuevo arriba. Cualquier ciclo más rápido
que ese no es observable directamente (sı́ lo es indirectamente, como veremos más adelante).
Por ejemplo, un ciclo que se complete en un mes no es observable, lo verı́amos, al principio,
arriba y, al mes siguiente, de nuevo arriba, es decir, nunca lo verı́amos abajo. A la frecuencia
correspondiente al ciclo mas rápido observable se le llama frecuencia de Nyquist y, como
hemos visto, corresponde con w = π ó f = 6.
De forma análoga, con series trimestrales, hacemos el cambio
4 ciclos
f = ω π2 = ω 2π año
, (62a)
de donde, ω = f π2 = f 2π rd
4 trimestre
. (62b)
En este caso, la frecuencia f = 1 (w = π2 ) corresponde con ciclos de perı́odo P = 2π ω
=4
trimestres, es decir, que se repiten una vez al año, mientras que la frecuencia f = 2 (w = π)
corresponde con ciclos de perı́odo P = 2π ω
= 2 trimestres, es decir, que se repiten dos veces al
año. La frecuencia de Nyquist es ahora f = 2 (ω = π), de manera que no podemos observar
las frecuencias superiores a f = 2 con nuestras observaciones trimestrales. Como antes, las
frecuencias f ∈ (0, 1) (ω ∈ (0, π2 )) corresponden a ciclos económicos (largos, no estacionales)
y la frecuencia f = ω = 0 define una tendencia.
Las nuevas unidades de frecuencia f que hemos definido, para series tanto mensuales
como trimestrales, son las que emplea el programa TRAMO-SEATS.
Si en lugar de muestrear la serie cada instante de tiempo, la muestreamos cada ∆t 6= 1
unidades de tiempo, todo es análogo. En efecto, los instantes de observación son ahora
0, ∆t, 2∆t, · · · y, si estamos en el instante 0, entonces la oscilación mas rápida que podemos
observar es (si partimos de estar, por ejemplo, arriba), la que baja en ∆t y sube en 2∆t, es
26
decir la que dura 2∆t instantes de tiempo, por tanto, la frecuencia máxima observable es la
2π π
2∆t
= ∆t , que es la frecuencia de Nyquist en este caso. Sin embargo, es más sencillo hacer
un cambio de variable lineal en el tiempo, de la forma t∗ = ∆t t
. Ası́, en el nuevo tiempo t∗ ,
nuestra serie se muestrea en los instantes 1, 2, 3, · · · . Por eso, antes, tomábamos como unidad
de tiempo el mes en las series mensuales y el trimestre en las trimestrales.
En los libros y en las salidas de los programas de ordenador, a veces se emplean como
unidades de frecuencia nuestras ω y f , pero otras veces se emplean otras unidades. La clave
para saber cuales unidades se están empleando es ver el rango de frecuencias que consideran,
que siempre será de la forma (0, A), donde A corresponde con ω = π. Mirando en los
listados o gráficas de estimaciones de espectros cuál es el A, podemos deducir facilmente a
qué corresponde cada frecuencia medida en esas unidades con nuestras ω y f . Por ejemplo,
algunos programas toman A = 1, que corresponde con ω = π, por lo cual una frecuencia de
1
2
en esas unidades corresponderá con ω = π2 , o bien, f = 3 para series mensuales y f = 1
para series trimestrales.
Cuando la unidad de tiempo coincide con nuestro intervalo entre dos observaciones con-
secutivas, hemos visto que toda la información útil del espectro se encuentra en el intervalo
ω ∈ [0, π]. Sin embargo, el espectro está definido en todo R, lo que sucede es que, en [−π, 0),
el espectro se determina por ser una función par (vale lo mismo en −ω que en ω) y, en el
resto de valores, se determina por ser una función periódica de perı́odo 2π.
Ahora supongamos que nuestra serie temporal es, en realidad, un proceso estacionario en
tiempo continuo, que nosotros muestreamos en los instantes 0, ∆t, 2∆t, · · · . En este caso, el
espectro de este proceso continuo sigue siendo una función simétrica, pero ya no es periódica,
sino que está definida en todo R y tiende a cero cuando ω tiende a infinito.
π
También hemos dicho que una frecuencia ω0 superior a la de Nyquist (ω = ∆t ) no
es observable, pero serı́a mas correcto decir que se observa solapada con otra frecuencia
ω1 ∈ [ −π , π ]. En concreto ω1 es el único valor comprendido en [ −π
∆t ∆t
, π ] tal que
∆t ∆t
2π
ω1 = ω0 − ∆t
m, (63)
para algún m entero. Si lo que estamos observando es un espectro en una dimensión, entonces
la información de fase (el que las frecuencias sean positivas o negativas) se pierde, y la fórmula
(63) se reduce a
2π
ω1 = |ω0 − ∆t m|, (64)
Este fenómeno de solapamiento (aliasing) es bien conocido. Por ejemplo, en las pelı́culas
de cine, las ruedas de los vehı́culos a veces parecen girar más lentamente de lo normal o,
incluso, ir hacia atrás. Veamos la causa de este efecto.
Si m es cualquier número entero no nulo, entonces las funciones f1 (t) , sen(ω1 t) y
2π
f2 (t) , sen((ω1 + ∆t m)t) son obviamente distintas. Sin embargo, si estamos observándolas
sólo en los instantes n∆t, con n que recorre los números enteros, entonces las dos funciones
coinciden. En efecto,
2π
f2 (n∆t) = sen(ω0 n∆t) = sen((ω1 + ∆t m)n∆t) = sen(ω1 n∆t+2πmn) = sen(ω1 n∆t) = f1 (n∆t).
Es claro que lo mismo ocurre con la función coseno y, por tanto, con la exponencial compleja
eiω1 t . Es decir, las frecuencias ω0 y ω1 definidas antes están, efectivamente, solapadas, debido
a que solo las observamos en instantes discretos.
27
Como ejemplo, tomamos ∆t = 1 y ω0 = 11π 6
, que supera la frecuencia de Niquist π.
Usando (63), es ω1 = 6 − 2π · 1 = − 6 . En la Figura 1 representamos f1 (t) = sen(− π6 t) =
11π π
11π
Figura 1: Ejemplo de solapamiento de las frecuencias ω0 = 6
y ω1 = − π6 con ∆t = 1
Esto implica que el observar la serie en instantes discretos de la forma n∆t hace que el
espectro de la serie en tiempo continuo se deforme, de tal manera que la parte del espectro de
las frecuencias superiores en valor absoluto a la de Nyquist se acumula a la de las frecuencias
comprendidas en el intervalo [ −π , π ].
∆t ∆t
En concreto, si el espectro del proceso en tiempo continuo, que en general toma valores
en todas las frecuencias reales, es
28
2π 1
con un perı́odo P = 24π = 12 s. Por tanto, el giro de las ruedas de un vehı́culo, con ruedas
de radio 40cm, que circule a 120 km h
= 120000
3600 s
m
= 1200 1 ciclos
36 2π0,4 s
≈ 13,26291 ciclos
s
es demasiado
rápido para observarlo tal como es y lo observamos solapado con un giro de frecuencia
(velocidad angular) distinta. En concreto, como la frecuencia de las ruedas del vehı́culo es de
1200 rd
ω0 = 36·0,4 s
≈ 83,33333 rd
s
, será m = 1 en (63), es decir, ω1 = ω0 − 2 · 24π · 1 = −67,46311 rd
s
.
67,46311
En palabras, veremos las ruedas girando hacia atras a unos 2π ≈ 10,73709 ciclos
(vueltas) por segundo. El que las ruedas giren al contrario cuando tenemos una frecuencia
negativa respecto de una positiva se debe a que las ecuaciones paramétricas y = cos(u),
x = sen(u), con u ∈ [−π, π] recorren una circunferencia en sentido contrario a las y =
cos(−u) = cos(u), x = sen(−u) = − sen(u).
Como ejercicio, calcular la velocidad a la que deberá circular el vehı́culo para que nos
parezca que sus ruedas no giran.
Solución
Partimos de que ω1 = 0. Para que la velocidad del vehı́culo sea razonable (parecida a la
del ejemplo), será m = 1, por tanto, de (63), ω0 = (0 + 2 · 24π · 1) rd
s
= 48π rd
s
= 24 ciclos
s
=
m 3600 km km
24 · 2π · 0,4 s = 19,2π 1000 h ≈ 217,1469 h
Otro ejercicio, más cercano a lo que utilizaremos al hacer ajuste estacional, consiste en
calcular con qué frecuencia estará solapada la frecuencia de un ciclo semanal, cuando obser-
vamos mensualmente nuestra serie temporal. Hacer el mismo cálculo para un ciclo semanal
en una serie observada trimestralmente, para un ciclo diario en una serie observada mensual-
mente, para un ciclo diario en una serie observada trimestralmente, para un ciclo bisemanal
(de 14 dı́as, a veces se le llama quincenal) en una serie observada mensualmente y para
un ciclo bisemanal en una serie observada trimestralmente. En todos los casos, utilizar la
duración media de un mes o de un trimestre suponiendo que, de cada cuatro años, uno es
bisiesto, lo cual es cierto entre los años 1900 y 2100. Estamos suponiendo implı́citamente que
las observaciones mensuales o trimestrales de nuestra serie son acumulaciones de observa-
ciones diarias o de frecuencia todavı́a mayor que la diaria, de tal forma que, en ellas, puede
haber ciclos bisemanales, semanales o, incluso, diarios.
Solución
En primer lugar, la duración de un mes medio en dias, si uno de cada cuatro años es
bisiesto, es de 3·365+366
12·4
dias
mes
= 30,4375 dias
mes
. Con la misma hipótesis, la duración de un
3·365+366 dias dias
trimestre medio es de 4·4 trimestre
= 91,3125 trimestre
29
4,1786 no está tan pegado a f = 4 como para no poder distinguir si el pico se debe a
un ciclo semanal o a un posible ciclo estacional que se repite 4 veces al año.
7
Análogamente al caso anterior, será P0 = 91,3125 trimestres ≈ 0,07666 trimestres,
2π rd rd rd
ω0 = P0 trimestre ≈ 81,96191 trimestre , ω1 = ω0 − 2π(13) ≈ 0,2805 trimestre , f1 = ω1 π2 ≈
0,1786 ciclos
año
.
1
(Ciclo diario en observaciones mensuales.) P0 = 30,4375 meses ≈ 0,03285 meses, ω0 =
2π rd
P0 mes
≈ 191,2445 mes , ω1 = ω0 − 2π(30) ≈ 2,748894 mes , f1 = ω1 π6 ≈ 5,25 ciclos
rd rd
año
.
1
(Ciclo diario en observaciones trimestrales) P0 = 91,3125
trimestres ≈
2π rd rd
0,01095 trimestres, ω0 = P0 trimestre ≈ 573,7334 trimestre , ω1 = ω0 − 2π(91) ≈
rd
1,9635 trimestre , f1 = ω1 π2 ≈ 1,25 ciclos
año
.
14
(Ciclo bisemanal en observaciones mensuales.) P0 = 30,4375 meses ≈ 0,45996 meses,
2π rd
ω0 = P0 mes ≈ 13,66032 mes , ω1 = ω0 − 2π(2) ≈ 1,09395 mes , f1 = ω1 π6 ≈ 2,0893 ciclos
rd rd
año
.
14
(Ciclo bisemanal en observaciones trimestrales.) P0 = 91,3125 trimestres ≈
2π rd rd
0,15332 trimestres, ω0 = P0 trimestre ≈ 40,98095 trimestre , ω1 = ω0 − 2π(7) ≈
rd
−3,001343 trimestre , f1 = ω1 π2 ≈ −1,910714 ciclos
año
. Como el espectro pierde la información
de fase, por (64), lo veremos como un ciclo de 1,910714 ciclosaño
Para comprobar los cálculos anteriores, como siempre es ∆t = 1, podemos ver si,
efectivamente, en cada caso, se cumple que sen(ω0 n) = sen(ω1 n) y cos(ω0 n) = cos(ω1 n),
para distintos valores de n enteros.
30
6.5. Estimación del espectro
Dada una serie temporal x1 , · · · , xT , en principio, podemos pensar en estimar su espectro,
al menos, de dos formas distintas. La primera consiste en calcular su periodograma. La
segunda consiste en ajustar un modelo ARMA a la serie y calcular el espectro de un proceso
ARMA con los parámetros estimados para la serie.
La segunda opción presenta la dificultad de tener que estimar el modelo y suponer que
la estimación sea razonablemente buena. Por eso, puede parecer una opción poco recomen-
dable. Sin embargo, la primera opción también tiene un problema importante, dado que el
periodograma es un estimador insesgado del espectro, pero no es consistente.
6.5.1. El periodograma
Usando (41) y (52), escribimos las observaciones de nuestra serie en las formas
d d c
X it
2jπ X 2πjt X 2πjt
xt = λj e T = a0 + aj cos( )+ bj sen( ),
j=−c j=1
T j=1
T
Como (47) dice que kxk2 =< x, x >= (1/T ) Tt=1 x2t = dj=−c |λj |2 , la interpretación de
P P
(65) es, para una serie de media cero, que I(ωj ) es la contribución de la frecuencia ωj a la
varianza de la serie.
Por ser λ−j = λ̄j , j ∈ {1, · · · , c}, la información del periodograma está contenida en los
I(ωj ), j ∈ {0, 1, · · · , d}. Por este motivo, a veces se trabaja con otra definición de periodo-
grama en la que se agregan las frecuencias λ−j con las λj , j ∈ {1, · · · , c}.
El periodograma se introdujo a finales del siglo diecinueve como una herramienta para
buscar componentes periódicas en una serie.
Se puede realizar inferencia a partir del periodograma. La forma mas habitual es utilizar
el test de Fisher. Llamando M , máx{I ∗ (ωj )} (donde I ∗ denota el periodograma en que se
agega cada frecuencia con su opuesta), bajo la hipótesis de que nuestra serie es ruido blanco,
el estadı́stico
M
W = P[T /2] (66)
∗
j=1 I (ωj )
sigue una distribución que se puede tabular fácilmente. Por tanto, si el valor de W para
nuestra serie supera un valor crı́tico de esa distribución, se rechaza la hipótesis de ruido
blanco y tenemos evidencia de que hay una componente periódica de frecuencia igual a la
frecuencia donde se alcanza el máximo M .
31
6.5.2. El espectro muestral. Suavizado
El espectro de una serie estacionaria con función de autocovarianza absolutamente su-
mable se escribe en la forma
∞ ∞
!
1 X ijω 1 X
f (ω) = γj e = γ0 + 2 γj cos(ωj) , ω ∈ [−π, π]. (67)
2π j=−∞ 2π j=1
Un estimador natural suyo consiste en sustituir las γj por sus estimaciones muestrales (hasta
la γT −1 , pues a partir de ella, las demás no se pueden estimar). Es decir,
T −1 T −1
!
1 X 1 X
fˆ(ω) = γ̂j eijω = γ̂0 + 2 γ̂j cos(ωj) , ω ∈ [−π, π]. (68)
2π j=−T +1 2π j=1
T T
" T T
#
1 X X X X
T I(ωj ) = T |λj |2 = xt e−itωj x̄s eisωj = e−itωj = eitωj = 0 =
T t=1 s=1 t=1 t=1
T T T T
1X X 1 XX
(xt − m)e−itωj (x̄s − m̄)eisωj = (xt − m)(x̄s − m̄)e−i(t−s)ωj =
T t=1 s=1
T t=1 s=1
T −s T T −s
1 X X −ikωj 1 X
[s = s, k = t − s] = (xs+k − m)(x̄s − m̄)e = γ̂k e−ikωj
T k=1−s s=1 T k=1−s
T −1
X
[s ∈ {1, · · · , T }] = γ̂k e−ikωj = 2π fˆ(ωj ).
k=−T +1
32
En el dominio de la frecuencia, lo que se hace es escoger una familia de funciones VT (µ),
llamada ventana espectral o núcleo, que cumpla las condiciones
Z π
VT (λ)dλ = 1, (70a)
−π
Se demuestra que, bajo hipótesis razonables de suavidad del espectro verdadero, este esti-
mador es insesgado y consistente.
Una versión discreta de este suavizado, que es la que se suele implementar en los progra-
mas de ordenador, utiliza solo las frecuencias de Fourier y la ventana, discreta en este caso,
cumple
XnT
VT (ωj ) = 1, (72a)
j=−nT
es decir, restamos frecuencias ωj pequeñas (no mayores que ωnT en valor absoluto) a ωk ,
para ası́ promediar fˆ en frecuencias cercanas a ωk con la ventana.
En la implementación de esta fórmula, se trabaja solo sobre las frecuencias de Fourier en
[0, π], dada la simetrı́a del espectro.
En el dominio del tiempo, también se considera una familia de funciones UT (j), esta vez
definida para los números enteros j, llamada ventana de retardos. En concreto, se estima en
la forma
NT
ˆ 1 X
fU (ω) = UT (j)γ̂j e−iωj , (74)
2π j=−N
T
donde NT es un valor que depende de T y que dice cual es el lı́mite de los retardos que
intervienen en el estimador. Se suele tomar UT (j) = U (j/NT ), donde U (j) es una función
continua que cumple U (x) ≤ 1, U (0) = 1, U (x) = U (−x) y U (x) = 0, si |x| ≥ 1. En palabras,
el estimador pondera mas a las autocovarianzas con retardos pequeños a la hora de suavizar.
33
El hecho de que la función de autocovarianza y el espectro sean un par de transformadas
de Fourier implica que dos ventanas, una de retardos UT y otra espectral VT que produzcan
el mismo efecto sobre un mismo espectro estimado también son un par de transformadas de
Fourier.
Veamos algunas de las ventanas mas utilizadas en la práctica.
1 sen(ω(NT + 1/2))
VTR (ω) = . (77)
2π sen(ω/2)
Esta ventana es de importancia práctica limitada, pues puede producir algunas esti-
maciones del espectro negativas.
luego es (
B 1 − N|j|T , si |j| ≤ NT
UT (j) = (79)
0, si |j| > NT .
3. Ventana de Daniell
34
Es una ventana rectangular aplicada al espectro, es decir,
(
s
, si |ω| ≤ πs
VsD (ω) = 2π (81)
0, si |ω| > πs ,
y se define como
2 3
− 6 NT + 6 N|j|T , si |j| ≤
1
j NT
2
,
3
UTP (j) = 2 1 − |j| , si NT < |j| ≤ NT , (87)
NT 2
0, si |j| > N .
T
35
La ventana espectral correspondiente es
2 sen(ω/2))2
4
P 6 sen (ωNT /4)
VT (ω) = 1 − (88)
3 πNt3 sen4 (ω/2)
Un problema importante es la elección del tamaño de la ventana, es decir, del parámetro del
cual depende la ventana. Si la ventana es demasiado grande, la varianza de la estimación
del espectro es pequeña, pero el sesgo es grande, es decir, se suaviza demasiado el espectro
y no se pueden distinguir picos espectrales que no estén muy separados, mientras que si la
ventana es demasiado pequeña, el sesgo es pequeño, pero la varianza es grande, o sea, la
resolución es mayor, pero la estimación no es muy estable.
Un método sencillo para determinar un NT adecuado es comenzar con NT grande, e ir
reduciéndolo y comparando las estimaciones del espectro resultante, hasta que la estimación
parezca adecuada.
Otro método que se usa a veces consiste en tomar NT tal que las autocovarianzas mues-
trales γ̂j , para j > Nt sean muy pequeñas.
T
Otra regla práctica es tomar NT = 10 .
Este es un tema sobre el que existe abundante literatura.
σ̂ 2 θ̂(eiω )θ̂(e−iω )
fˆ(ω) = ε . (90)
2π φ̂(eiω )φ̂(e−iω )
36
7. Filtros
7.1. Filtros lineales
Se define un filtro
P∞en tiempo discreto Fα , basado en unaPsucesión de números complejos
∞ ∞
{αj }j=−∞ , tal que j=−∞ |αj | < ∞, en la forma Fα (st ) = j=−∞ αj st−j , cuando esta serie
sea convergente, donde {st }∞ t=−∞ es cualquier sucesión de números reales o complejos.
La definición anterior se puede extender a procesos estacionarios en sentido amplio, en
lugar de sucesiones reales o complejas st , es decir, si xt es un proceso estacionario en sentido
amplio,
X∞ X ∞
Fα (xt ) = αj xt−j = αj B j xt = α(B)xt (91)
j=−∞ j=−∞
es decir,
∞
X
T (λ) = αj e−iλj = α(e−iλ ) (94)
j=−∞
Resulta que la función de transferencia T (λ) determina por completo la acción del filtro, en
el sentido de que, dadaPcualquier señal que se pueda escribir en la forma (por ejemplo, una
∞ iλt
señal periódica) xt = λ=−∞ αλ e , es
∞
X
Fα (xt ) = αλ T (λ)eiλt . (95)
λ=−∞
lo cual nos dice que, dada la serie original xt , cada una de las componentes de frecuencias λ
que la componen ve multiplicada su amplitud por |T (λ)| y ve cambiada su fase de ψ(λ) a
ψ(λ) + ν(λ).
37
En palabras, la función |T (λ)|, llamada función de ganancia del filtro, nos dice por qué
cantidad queda multiplicada la amplitud para cada frecuencia λ y la función ν(λ), llamada
función de cambio de fase del filtro, nos dice qué cantidad queda sumada a la fase para
cada frecuencia λ. Esto último se deduce de observar que la función eiλt queda transformada
en la ei(λt+ν(λ)) , es decir, queda desfasada. El desfase lo estamos midiendo en unidades de
frecuencia λ, si queremos medirlo en unidades de tiempo, entonces utilizaremos la función de
cambio de tiempo ξ(λ) , ν(λ) λ
. Esto se debe a que, para una función periódica como el seno
(es análogo para el coseno o la exponencial compleja), tenemos que si xt = aλ sen(λt + ψ(λ)),
con amplitud aλ , frecuencia λ y fase ψ(λ), el efecto que produce un filtro Fα es, como
hemos visto, cambiar la amplitud a aλ |T (λ)| y la fase a ψ(λ) + ν(λ), de manera que Fα (xt ) =
αλ |T (λ)| sen(λt+ψ(t)+ν(t)) = αλ |T (λ)| sen(λ(t+ ν(λ)λ
)+ψ(t)), de manera que la serie filtrada
la podemos entender como que, para cada frecuencia λ, tiene nueva amplitud αλ |T (λ)|, la
misma fase ψ(λ) y la misma frecuencia λ, pero en un instante de tiempo distinto a t, en
concreto en t + ν(λ) λ
= t + ξ(λ), es decir, adelantada (si ξ(λ) > 0) o retrasada (si ξ(λ) < 0)
ξ(λ) unidades de tiempo. Cuando ξ(λ) no es una constante (es decir, cuando de verdad
depende de λ), se dice que hay distorsión de fase (la señal queda distorsionada, pues, para
cada frecuencia, hay un retraso o adelanto diferente de la señal).
Se puede demostrar que, para series temporales reales xt (solo trabajaremos con series
reales), ha de ser
|T (−λ)| = |T (λ)|, (98a)
ν(−λ) = −ν(λ) (función impar), (98b)
esto último implica que la función de cambio de tiempo ξ(λ) = ν(λ) λ
es par, por ser cociente
de dos funciones impares.
También se puede ver que si una serie temporal xt es estacionaria en sentido amplio y
tiene espectro fx (ω), entonces la serie yt = Fα (xt ) también es estacionaria y su espectro es
donde
|α(eiω )|2 = α(eiω )α(e−iω ) = |T (λ)|2
se llama a veces función de transferencia de la potencia.
Se puede demostrar que un filtro Fα con coeficientes reales tiene función de cambio de fase
ν(λ) idénticamente nula si y solamente si el filtro es definido no negativo. Se dice que el filtro
Fα es definido no negativo, si para todo entero positivo n y paraPtodo conjunto de números
n Pn
complejos c−n , c−n+1 , · · · , c−1 , c0 , c1 , · · · , cn−1 , cn , se cumple que j=−n k=−n cj c̄k αj−k ≥ 0,
es decir, esta suma es real y no negativa.
Es sencillo ver que todo filtro definido no negativo es simétrico, (α−j = αj , para todo
j ∈ Z), sin embargo, un filtro simétrico puede no ser definido no negativo. También se puede
ver que todo filtro simétrico tiene función de transferencia real, esto implica que solo puede
ser ν(λ) ∈ {0, π, −π} (eν(λ) solo es real para estos valores de ν(λ), en concreto ei·0 = 1 y
e−iπ = eiπ = −1).
38
7.3. Operaciones con filtros
Dados dos filtros F1 y F2 (denotamos Fi , Fαi ) con funciones de transferencia respectivas
T1 y T2 , y dados c1 , c2 ∈ C, se define el filtro F3 , c1 F1 + c2 F2 en la forma
Para que esta operación esté bien definida sobre una señal xt , han de estarlo F1 (xt ) y
F2 (F1 (xt )). Si estan definidos F1 (xt ), F2 (xt ), F2 (F1 (xt )) y F1 (F2 (xt )), entonces esta ope-
ración es conmutativa, es decir F2 ◦ F1 = F1 ◦ F2 .
Se cumple T4 (λ) = T1 (λ)T2 (λ), incluso hay expresiones sencillas para las funciones de
ganancia y cambio de fase, que son |T4 (λ)| = |T1 (λ)||T2 (λ)| y ν4 (λ) = ν1 (λ) + ν2 (λ) respec-
tivamente.
y se llama filtro (ideal) de paso de alta frecuencia para λ0 a cualquier filtro cuya función de
transferencia cumpla (
1, si |λ| > λ0
T (λ) = (103)
0, en otro caso
El calificativo ideal se debe a que, para encontrar filtros con estas funciones de transferencia,
necesitarı́amos tomar infinitos αj no nulos, pero, como nuestra serie temporal va a ser de
longitud finita, sólo podemos filtrarla con un filtro que tenga una cantidad finita de αj no
nulos, entonces tendremos que truncar el filtro ideal y, al hacerlo, la función de transferencia
del filtro truncado ya no será la misma que la del filtro ideal.
39
Es claro que, dado un filtro de paso de baja frecuencia Fα para λ0 , el filtro I − Fα es
un filtro de paso de alta frecuencia para λ0 y también que, dado un filtro de paso de alta
frecuencia Fβ para λ0 , el filtro I − Fβ es un filtro de paso de baja frecuencia para λ0 .
Se llama filtro de paso de banda (ideal) para las frecuencias λ1 < λ2 a todo filtro que
cumpla (
1, si λ1 < |λ| ≤ λ2
T (λ) = (104)
0, en otro caso
Claramente, un filtro de paso de banda para las frecuencias λ1 < λ2 se puede crear mediante
la aplicación en serie de dos filtros, uno de paso de baja frecuencia para λ2 y otro de paso
de alta frecuencia para λ1 . El orden en que se apliquen los dos filtros no afecta al resultado.
Un filtro de intervalo (notch filter) (ideal) para las frecuencias λ1 < λ2 es todo filtro que
cumpla (
0, si λ1 ≤ |λ| < λ2
T (λ) = (105)
1, en otro caso
y se puede obtener como I − F , donde F es un filtro de paso de banda para las frecuencias
λ1 < λ2 .
λ
( las funciones de ganancia es T (λ) = 2| sen( 2 )| y la función de cambio de fase es
por tanto,
π−λ
2
si λ > 0,
ν(λ) = π+λ
La función de cambio de fase no está definida en λ = 0, pero esto
− 2 si λ < 0.
no es relevante, pues la ganancia es nula para λ = 0.
Como ejercicio, se pide
40
Solución
1. Las sentencias de R
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
g1<-1+0i-exp(-(0+1i)*l) # filtro 1-B
par(mfrow=c(3,1))
plot(f,Mod(g1),type=’l’,xlim=c(0,6),ylim=c(0,4))
lines(f,(Mod(g1))^2,type=’l’,col="blue")
plot(f,Arg(g1), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(g1)/l, type =’p’, pch=".",ylim=c(-5,5),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(g1))^2,type=’l’,col="blue",lty=4)
3. Vemos que el filtro nos adelanta en el tiempo los ciclos asociados a frecuencias bajas,
pero este efecto es muy pequeño, debido a que las frecuencias bajas son las que menos
deja pasar el filtro.
Solución
41
4
3
Mod(g1)
2
1
0
0 1 2 3 4 5 6
f
3
2
1
Arg(g1)
0
−3 −2 −1
0 1 2 3 4 5 6
f
4
2
Arg(g1)/l
0
−2
−4
0 1 2 3 4 5 6
f
l=seq(0,pi,2*pi/5000)
fm=l*2/pi
ll=matrix(0,nrow=1,ncol=length(l))
g4<-1+0i-exp(-(0+1i)*l*4) # filtro 1-B^4
par(mfrow=c(3,1))
plot(fm,Mod(g4),type=’l’,xlim=c(0,2),ylim=c(0,4))
lines(fm,(Mod(g4))^2,type=’l’,col="blue")
plot(fm,Arg(g4), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,2))
42
lines(fm,ll,col="red",type="l",lty=3)
plot(fm,Arg(g4)/l, type =’p’, pch=".",ylim=c(-5,5),xlim=c(0,2))
lines(fm,ll,col="red",type="l",lty=3)
lines(fm,(Mod(g4))^2,type=’l’,col="blue",lty=4)
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
g12<-1+0i-exp(-(0+1i)*l*12) # filtro 1-B^12
par(mfrow=c(3,1))
plot(f,Mod(g12),type=’l’,xlim=c(0,6),ylim=c(0,4))
lines(f,(Mod(g12))^2,type=’l’,col="blue")
plot(f,Arg(g12), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(g12)/l, type =’p’, pch=".", ylim=c(-5,5),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(g12))^2,type=’l’,col="blue",lty=4)
y se obtiene la Figura 4.
De nuevo, el filtro elimina las frecuencias estacionales y la frecuencia nula y los mayores
cambios de tiempo se producen cerca de estas frecuencias, pero los ciclos con del rango
de frecuencias aproximado f ∈ [0,1, 0,3] están bastante adelantados en el tiempo y no
están amortiguados por el filtro.
43
4
3
Mod(g4)
2
1
0
la notación, escribiremos un filtro finito poniendo sus coeficientes no nulos en un vector con
subı́ndices crecientes, en la forma (α−f , · · · , α−1 , α0 , α1 , · · · , αp ).
Se llama orden del filtro a p + f + 1.
Se dice que la media móvil está centrada si f = p.
Se dice que la media móvil es simétrica si es un filtro lineal simétrico, es decir, si está
centrada y se cumple αj = α−j , para todo j.
El concepto de simetrı́a se puede extender, en un sentido ligeramente distinto, a filtros
finitos causales. En concreto, se dice que un filtro finito causal, con p términos del pasado,
44
4
3
Mod(g12)
2
1
0
0 1 2 3 4 5 6
f
3
2
1
Arg(g12)
0
−3 −2 −1
0 1 2 3 4 5 6
f
4
2
Arg(g12)/l
0
−2
−4
0 1 2 3 4 5 6
f
45
la forma eiA(ω) , de esta forma, cuando el signo de R(ω) sea positivo, R(ω) será la ganancia
del filtro y A(ω) el cambio de fase, mientras que, cuando R(ω) sea negativo, bastará con
cambarlo de signo multiplicando por −1 y usar que −1 = eiπ para cambiar la función de
fase, sumándole π.
Aplicando la definición (92), será
p p
!
X X
Mα (eiωt ) = αj eiω(t−j) = αj e−iωj eiωt , (107)
j=0 j=0
p−1
Si p es impar, p = 2m + 1, con m ∈ N, es decir, m = 2
. En este caso, es
p p m
X p X p p X
−iω
T (ω) = −iωj
αj e =e 2 αj e−iω(j− 2 ) =e −iω
2 2αj cos(ω( p2 − j))
j=0 j=0 j=0
donde la tercera igualdad se debe a que el sumatorio es igual para cada par de términos dado
por j = l y j = p − l, debido a que αj = αp−j (filtro simétrico) y a que l − p/2 = −(p/2 − l),
para cada l ∈ {0, 1, · · · , m} y, por tanto, sus cosenos coinciden.
De las expresiones (108) y (109), vemos que, para frecuencias pequeñas, si αm > 0
(caso habitual para el peso central), los términos R1 (ω) y R2 (ω) serán no negativos, con lo
cual |T (ω)| = Rj (ω), ν(ω) = Aj (ω) y la función de cambio de tiempo de la media móvil es
ξ(ω) = − p2 . Es decir, una media móvil causal simétrica de orden p retrasa un ciclo cualquiera
de frecuencia pequeña contenido en la serie en p/2 unidades de tiempo (por ejemplo, meses
o trimestres).
Para frecuencias que no sean pequeñas, las expresiones R1 (ω) o R2 (ω) pueden ser ne-
gativas, entonces, en la descomposición en módulo y argumento de (108) y (109), tenemos
que cambiar de signo R1 (ω) o R2 (ω) y, por tanto, como eiπ = e−iπ = −1, sumar o res-
tar π a A1 (ω) o A2 (ω) (Rj (ω)(−1)eiπ eiAj (ω) = |T (ω)|eiν(ω ), de donde |T (ω)| = −Rj (ω) y
ν(ω) = π + Aj (ω)), de manera que el filtro puede adelantar los ciclos de esas frecuencias
contenidos en la serie en lugar de atrasarlos. Sin embargo, esto sucede en frecuencias que no
sean pequeñas, las cuales son justamente las que casi no deja pasar el filtro. En resumen,
en la práctica, el filtro apenas si producirá cambios de tiempo en frecuencias que no sean
pequeñas.
Por otra parte, si la media móvil es centrada y simétrica, cálculos totalmente análogos a
los de (108) y (109) muestran que, para frecuencias pequeñas, ξ(ω) = ν(ω) = 0, o sea, no hay
46
retraso (y, para frecuencias que no sean pequeñas apenas si lo habrá, por un razonamiento
semejante al de antes). Naturalmente, para poder aplicar un filtro centrado y simétrico a
una serie en un instante t, tenemos que esperar a tener m observaciones del futuro (hasta
xt+m ). En palabras, el precio a pagar para evitar el retraso temporal es esperar el mismo
tiempo del retraso.
Como ejercicio que aclarará estos últimos puntos, vamos a representar numéricamente
(con el mismo esquema que en ejercicios anteriores) las ganancias, cambios de fase y cambios
de tiempo de:
1. Una media móvil centrada simple (con pesos iguales) de 3 términos.
Solución
Las sentencias de R
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
c3<-(1/3)*(1+0i+exp(-(0+1i)*l)+ exp((0+1i)*l)) # media movil
par(mfrow=c(3,1))
plot(f,Mod(c3),type=’l’,xlim=c(0,6))
lines(f,(Mod(c3))^2,type=’l’,col="blue")
plot(f,Arg(c3), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(c3)/l, type =’p’, pch=".",ylim=c(-2,2),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(c3))^2,type=’l’,col="blue",lty=4)
Solución
Las sentencias de R
l=seq(0,pi,2*pi/5000)
47
1.0
0.8
0.6
Mod(c3)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(c3)
0
−3 −2 −1
0 1 2 3 4 5 6
f
2
1
Arg(c3)/l
0
−1
−2
0 1 2 3 4 5 6
f
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
n3<-(1/3)*(1+0i+exp(-(0+1i)*l)+ exp(-(0+1i)*l*2)) # media movil no centrada 3 ter
par(mfrow=c(3,1))
plot(f,Mod(n3),type=’l’,xlim=c(0,6))
lines(f,(Mod(n3))^2,type=’l’,col="blue")
plot(f,Arg(n3), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
48
plot(f,Arg(n3)/l, type =’p’, pch=".",ylim=c(-2,2),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(n3))^2,type=’l’,col="blue",lty=4)
c5<-(1/5)*(1+0i+exp(-(0+1i)*l)+ exp((0+1i)*l)+
exp(-(0+1i)*l*2)+ exp((0+1i)*l*2)) # centrada simple de 5 terminos
n5<-(1/5)*(1+0i+exp(-(0+1i)*l)+ exp(-(0+1i)*l*2)+ exp(-(0+1i)*l*3)+
exp(-(0+1i)*l*4)) # causal simple de 5 terminos
c13<-(1/13)*(1+0i+exp(-(0+1i)*l)+ exp((0+1i)*l)+ exp(-(0+1i)*l*2)+
exp((0+1i)*l*2)+ exp(-(0+1i)*l*3)+ exp((0+1i)*l*3)+exp(-(0+1i)*l*4)+
exp((0+1i)*l*4)+exp(-(0+1i)*l*5)+ exp((0+1i)*l*5)+exp(-(0+1i)*l*6)+
exp((0+1i)*l*6) ) # centrada simple de 13 terminos
n13<-(1/13)*(1+0i+exp(-(0+1i)*l)+ exp(-(0+1i)*l*2)+ exp(-(0+1i)*l*3)+
exp(-(0+1i)*l*4)+ exp(-(0+1i)*l*5)+ exp(-(0+1i)*l*6)+
exp(-(0+1i)*l*7)+ exp(-(0+1i)*l*8)+exp(-(0+1i)*l*9)+
exp(-(0+1i)*l*10)+exp(-(0+1i)*l*11)+
exp(-(0+1i)*l*12) ) # causal simple de 13 terminos
n12<-(1/13)*(1+0i+exp(-(0+1i)*l)+ exp(-(0+1i)*l*2)+ exp(-(0+1i)*l*3)+
exp(-(0+1i)*l*4)+ exp(-(0+1i)*l*5)+ exp(-(0+1i)*l*6)+exp(-(0+1i)*l*7)
+exp(-(0+1i)*l*8)+exp(-(0+1i)*l*9)+ exp(-(0+1i)*l*10)+
exp(-(0+1i)*l*11)) # causal simnple de 12 terminos
49
1.0
0.8
0.6
Mod(n3)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(n3)
0
−3 −2 −1
0 1 2 3 4 5 6
f
2
1
Arg(n3)/l
0
−1
−2
0 1 2 3 4 5 6
f
Se dice que un filtro causal con p retardos es antisimétrico si αj = −αp−j , para todo
j ∈ Z.
Por ejemplo, los operadores de diferencia regular y estacional son antisimétricos, pues en
ellos es α0 = 1 y α1 = −1 (caso regular) o αs = −1 (caso estacional).
Calcularemos la función de transferencia de un filtro antisimétrico. Ahora la idea general
es usar la antisimetrı́a del filtro para poner su función de transferencia como una función
π
imaginaria pura iR(ω), que multiplique a una exponencial de la forma eiA(ω) . Como i = ei 2 ,
multiplicamos por i a iR(ω) y sumamos π2 a A(ω), de esa forma transformamos la función
50
1.0
0.8
0.6
Mod(c5)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(c5)
0
−3 −2 −1
0 1 2 3 4 5 6
f
3
2
1
Arg(c5)/l
0
−1
−2
−3
0 1 2 3 4 5 6
f
imaginaria pura iR(ω) en una real pura y entonces ya podemos razonar como hemos hecho
en el caso de un filtro simétrico.
Si p es par, p = 2m, con m ∈ N, por la antisimetria, ha de ser αm = 0 y la función de
51
1.0
0.8
0.6
Mod(n5)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(n5)
0
−3 −2 −1
0 1 2 3 4 5 6
f
3
2
1
Arg(n5)/l
0
−1
−2
−3
0 1 2 3 4 5 6
f
52
1.0
0.8
0.6
Mod(c13)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(c13)
0
−3 −2 −1
0 1 2 3 4 5 6
f
6
4
2
Arg(c13)/l
0
−2
−4
−6
0 1 2 3 4 5 6
f
p−1
Si p es impar, p = 2m + 1, con m ∈ N, es decir, m = 2
. En este caso, es
p p m
X p X p p X
−iω
T (ω) = −iωj
αj e =e 2 αj e−iω(j− 2 ) =e −iω
2 2i αj sen(ω( p2 − j)) =
j=0 j=0 j=0
m
π p X
ei( 2 −ω 2 ) 2 αj sen(ω( p2 − j)) , eiA4 (ω) R4 (ω) = eiν(ω) |T (ω)|, (113)
j=0
donde la tercera igualdad se debe a que el sumatorio es igual para cada par de términos dado
53
1.0
0.8
0.6
Mod(n13)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(n13)
0
−3 −2 −1
0 1 2 3 4 5 6
f
6
4
2
Arg(n13)/l
−6 −4 −2 0
0 1 2 3 4 5 6
f
Figura 10: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para una media móvil simple causal de 13 términos.
por j = l y j = p−l, (por ser αj = −αp−j y l −p/2 = −(p/2−l), para cada l ∈ {0, 1, · · · , m},
con lo que sus senos son iguales, pero con signos cambiados).
La función de cambio de tiempo es, para ω pequeño, ξ(ω) = 2ωπ
− p2 , pero puede haber
cambios de fase si Rj (ω) cambia de signo, por los mismos motivos que en el caso de filtros
simétricos.
Como caso particular, los operadores de diferencia regular ∆ = 1 − B y estacional ∆s =
1 − B s son antisimétricos.
Como ejercicio, calcularemos analı́ticamente (numéricamente ya lo habı́amos hecho) las
54
0.8
0.6
Mod(n12)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(n12)
0
−3 −2 −1
0 1 2 3 4 5 6
f
6
4
2
Arg(n12)/l
−6 −4 −2 0
0 1 2 3 4 5 6
f
Figura 11: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para una media móvil simple causal de 12 términos.
Solución
55
7.5.4. Filtros autorregresivos
Un filtro lineal autorregresivo es un filtro cuyos pesos se calculan usando la representación
de Wold de un modelo AR(p) estacionario de la forma
α = (−0,04, −0,011, −0,016, −0,015, −0,005, 0,013, 0,039, 0,068, 0,097, 0,122, 0,138, 0,148,
0,138, 0,122, 0,097, 0,068, 0,039, 0,013, −0,005, −0,015, −0,016, −0,011, −0,004)
Solución
Los cálculos para la media móvil simple causal de orden 3 ya los habı́amos hecho y el
resultado está en la Figura 6.
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
Hen23<-0.148*(1+0i) +
0.138*exp(-(0+1i)*l)+ 0.138*exp(-(0+1i)*l*12)+
0.122*exp(-(0+1i)*l*2)+ 0.122*exp(-(0+1i)*l*13)+
0.097*exp(-(0+1i)*l*3)+ 0.097*exp(-(0+1i)*l*14)+
0.068*exp(-(0+1i)*l*4)+ 0.068*exp(-(0+1i)*l*15)+
0.039*exp(-(0+1i)*l*5)+ 0.039*exp(-(0+1i)*l*16)+
56
0.013*exp(-(0+1i)*l*6)+ 0.013*exp(-(0+1i)*l*17)-
0.005*exp(-(0+1i)*l*7)- 0.005*exp(-(0+1i)*l*18)-
0.015*exp(-(0+1i)*l*8)- 0.015*exp(-(0+1i)*l*19)-
0.016*exp(-(0+1i)*l*9)- 0.016*exp(-(0+1i)*l*20)-
0.011*exp(-(0+1i)*l*10)- 0.011*exp(-(0+1i)*l*21)-
0.004*exp(-(0+1i)*l*11)- 0.004*exp(-(0+1i)*l*22)
par(mfrow=c(3,1))
plot(f,Mod(Hen23),type=’l’,xlim=c(0,6))
lines(f,(Mod(Hen23))^2,type=’l’,col="blue")
plot(f,Arg(Hen23), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(Hen23)/l, type =’p’, pch=".",ylim=c(-7,7),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(Hen23))^2,type=’l’,col="blue",lty=4)
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
AR2<-0.078/(1+0i-1.56*exp(-(0+1i)*l)+0.64*exp(-(0+1i)*l*2))
par(mfrow=c(3,1))
plot(f,Mod(AR2),type=’l’,xlim=c(0,6))
lines(f,(Mod(AR2))^2,type=’l’,col="blue")
plot(f,Arg(AR2), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(AR2)/l, type =’p’, pch=".",ylim=c(-4,4),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(AR2))^2,type=’l’,col="blue",lty=4)
57
1.0
0.8
Mod(Hen23)
0.6
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(Hen23)
0
−3 −2 −1
0 1 2 3 4 5 6
f
10
5
Arg(Hen23)/l
0
−5
−10
0 1 2 3 4 5 6
f
Figura 12: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiem-
po (junto al cuadrado de la ganancia), para una media móvil causal de Henderson de 23
términos.
58
1.0
0.8
0.6
Mod(AR2)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(AR2)
0
−3 −2 −1
0 1 2 3 4 5 6
f
4
2
Arg(AR2)/l
0
−2
−4
0 1 2 3 4 5 6
f
Figura 13: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para el filtro (1 − 1,56B + 0,64B 2 )yt = 0,078xt .
En muchas referencias, los filtros mixtos se llaman de respuesta a impulso infinita (IIR)
porque hay infinitos términos en su ψ(B) asociada, mientras que los filtros de medias móviles
se llaman de respuesta a impulso finita (FIR), porque sólo una cantidad finita de coeficientes
de su ψ(B) asociada son no nulos.
θ(B)
Llamando ψ(B) = φ(B) , el filtro actúa sobre una serie xt en la forma habitual Fψ (xt ) =
P∞
j=−∞ ψj xt−j .
59
La función de transferencia de un filtro mixto es
θ(e−iλ )
T (λ) = ψ(e−iλ ) = . (117)
φ(e−iλ )
Con un filtro racional, se puede conseguir más flexibilidad que con un filtro de medias móviles
o autorregresivo para un mismo número de parámetros.
Es habitual en la teorı́a de filtros el trabajar con la transformada z, de manera que los
filtros se escriben en la variable z. En algunos textos z representa a B y en otros a F . A las
raı́ces de θ(z) se les llama ceros del filtro y a las de φ(B) polos del filtro.
Los desarrollos sobre filtros racionales son muy numerosos. En este texto tan solo men-
cionaremos algún ejemplo como ilustración.
Un filtro racional básico, pero útil, es el que tiene un cero y un polo muy cercanos.
Por ejemplo, si queremos filtrar una tendencia lineal, es habitual usar el filtro ∆ = 1 − B,
que en la notación habitual de filtros, escribirı́amos como 1 − z. Sin embargo, ésta es tan
solo una posibilidad. Por ejemplo, podemos usar también el filtro que define
1−p p(1 − B)
H{0} (B) = H1 (B) = 1 − L1 (B) = 1 − = , (118)
1 − pB 1 − pB
donde p < 1 es un valor real cercano a 1. Empleamos dos notaciones distintas para este
filtro. La primera notación utiliza un subı́ndice 1 porque el filtro tiene un cero en z = 1
(por eso elimina una tendencia lineal) y la segunda notación usa un subı́ndice {0} porque
la raı́z unitaria z = 1 también se puede identificar con la frecuencia cero al ser 1 = ei0 . El
filtro también tiene un polo en z = p−1 > 1 y cercano a uno. Es, por tanto, un filtro estable.
1−p
H1 (B) es diferencia del filtro identidad y el filtro de paso bajo L1 (B) = 1−pB . L1 (B) tiene el
término 1 − p en el numerador para que su ganancia sea 1 en la frecuencia cero (ejercicio).
Solución
El cuadrado de la ganancia de L1 (B) es
Lo importante es que, cuanto más cercano esté p a 1, más parecido es este filtro a un
filtro ideal que elimina la frecuencia cero y deja pasar las demás.
Como ejercicio, se pide calcular el cuadrado de la función de ganancia del filtro H1 (B) y
comprobar que se anula para la frecuencia cero. Se pide también calcular numéricamente y
dibujar esta función de ganancia, su cuadrado, y sus funciones de cambio de fase y de cambio
de tiempo, todo ello para los polos p−1 −1
1 = 1,01 y p2 = 1,03.
Solución
El cuadrado de la ganancia de H1 (B) es
60
0
En particular, para λ = 0 queda (1−p)2
= 0, pues p 6= 1.
Las sentencias de R
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
p=1/1.01
F1<-p*(1+0i-exp(-(0+1i)*l))/(1+0i-p*exp(-(0+1i)*l))#Polo en 1.01
par(mfrow=c(3,1))
plot(f,Mod(F1),type=’l’,xlim=c(0,6))
lines(f,(Mod(F1))^2,type=’l’,col="blue")
plot(f,Arg(F1), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(F1)/l, type =’p’, pch=".",ylim=c(-4,4),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(F1))^2,type=’l’,col="blue",lty=4)
crean los gráficos de la figura 14 para el caso de p1 . Los del caso de p2 están en la figura y
se hacen análogamente.
Vemos que, como era de esperar, el filtro basado en p1 es más puro en cuanto a filtrar
solo la frecuencia 0 que el basado en p2 por estar p−1 −1
1 más cerca de 1 que p2 .
H{±ω0 } (B) = H{ω0 } (B)H{−ω0 } (B) = He±iω0 (B) = Heiω0 (B)He−iω0 (B) =
1−p 1−p
(1 − Leiω0 (B))(1 − Le−iω0 (B)) = (1 − )(1 − )=
iω
1 − pe 0 B 1 − pe−iω0 B
p(1 − eiω0 B) p(1 − e−iω0 B) 2 1 − 2 cos(ω0 )B + B
2
= p , (121)
1 − peiω0 B 1 − pe−iω0 B 1 − 2p cos(ω0 )B + p2 B 2
Solución
El cuadrado de la ganancia de He±iω0 (B) es
61
1.0
0.8
0.6
Mod(F1)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(F1)
0
−1
−2
−3
0 1 2 3 4 5 6
f
4
2
Arg(F1)/l
0
−2
−4
0 1 2 3 4 5 6
Figura 14: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para el filtro H1 (B) = p(1−B)
1−pB
, p−1 = 1,01
p(1 + B)
H{π} (B) = H−1 (B) = , (122)
1 + pB
Naturalmentre, si queremos eliminar varias frecuencias, podemos hacerlo aplicando en
cascada varios filtros, cada uno que elimine una de esas frecuencias. Por ejemplo, para in-
62
1.0
0.8
0.6
Mod(F1b)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(F1b)
0
−1
−2
−3
0 1 2 3 4 5 6
f
4
2
Arg(F1b)/l
0
−2
−4
0 1 2 3 4 5 6
Figura 15: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para el filtro H1 (B) = p(1−B)
1−pB
, p−1 = 1,05
(1 − B) 1 + B2 1+B
H{0,±π/2,π} (B) = H1 (B)He±iπ/2 (B)H−1 (B) = p0 p21 p2 2 2
1 − p0 B 1 + 2p1 B + p1 B 1 + p2 B
(123)
donde p0 , p1 y p2 son números reales, ligeramente menores que 1, cuyos inversos definen los
63
polos de cada uno de los tres filtros. Estamos suponiendo que necesitamos pasar exactamente
una vez cada uno de los filtros de cada frecuencia para eliminarlas. Este filtro harı́a un efecto
análogo al que harı́a el filtro ∆4 = 1 − B 4 . En efecto, su numerador tiene (1 − B)(1 + B 2 )(1 +
B) = 1 − B 4 , la diferencia es que este filtro, usando unos p0 , p1 y p2 adecuados a cada serie
concreta (que quizás se pudieran deducir de un algoritmo aplicado al pseudo-espectro de la
serie) harı́a más lineal a esa serie.
En algunos casos, tendremos que pasar algunos de los filtros más de una vez y otros
ninguna vez. Por ejemplo, el análogo del filtro ∆∆4 serı́a el H{0,0,±π/2,π} que usa dos veces
H{0} , pues ∆∆4 = (1 − B)(1 − B 4 ) = (1 − B)2 (1 + B + B 2 + B 3 ) tiene el mismo numerador
que H{0,0,±π/2,π} .
Otro ejemplo serı́a que tuviéramos que pasar dos veces el filtro de la tendencia (algo
bastante habitual) y ninguna vez el filtro de la frecuencia π (por no estar esta frecuen-
cia presente en nuestra serie temporal), entonces podrı́amos usar el filtro H{0,0,±π/2} (B) =
H12 (B)He±iπ/2 (B)
Como ejercicio se pide calcular numéricamente la función de ganancia, de cambio de fase
y de cambio de tiempo del filtro H{0,±π/2,π} (B) = H1 (B)He±iπ/2 (B)H−1 (B), con p0 = 1/1,01,
p1 = 1/1,05 y p2 = 1/1,03, lo que quiere decir que la estacionalidad asociada a la frecuencia
π/2 que se quiere eliminar es más aleatoria que la asociada a ±π/2 y ésta es más aleatoria
que la asociada a la tendencia. Además, la tendencia no serı́a muy fuere, pues solo aplicamos
una vez el filtro H1 (B). Estas aleatoriedades y fuerzas de las distintas frecuencias se podrı́an
deducir del pseudo-espectro de la serie temporal que se quiere ajustar de estacionalidad. En
el pseudo-espectro verı́amos un pico más ancho en una frecuencia cuanto más aleatoria sea
la estacionalidad o tendencia asociada a esa frecuencia y un pico más tendente a infinito en
una tendencia o frecuencia más fuertes.
Solución
Las sentencias de R nos calculan y dibujan en la figura 16 las funciones de ganancia, su
cuadrado, de cambio de fase y de cambio de tiempo del filtro H(0,π/2,π) (B).
l=seq(0,pi,2*pi/5000)
f=l*6/pi
g=l*2/pi
ll=matrix(0,nrow=1,ncol=length(l))
D0<-1;
q0<-1/1.01;
Ge0<-q0*(1-exp(-(0+1i)*l))/(1+0i-q0*exp(-(0+1i)*l)) #Polo en 1.01
D1<-cos(pi/2);
q1<-1/1.05;
Ge1<-q1^2*(1-2*D1*exp(-(0+1i)*l)+exp(-(0+1i)*2*l))/(1+0i-2*q1*D1*exp(-(0+1i)*l)+q1^2*e
D2<-cos(pi);
q2<-1/1.03;
Ge2<-q2*(1+exp(-(0+1i)*l))/(1+0i+q2*exp(-(0+1i)*l))
Ge012<-Ge0*Ge1*Ge2
par(mfrow=c(3,1))
plot(g,Mod(Ge012),type=’l’,xlim=c(0,2))
64
lines(g,(Mod(Ge012))^2,type=’l’,col="blue")
plot(g,Arg(Ge012), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,2))
lines(g,ll,col="red",type="l",lty=3)
plot(g,Arg(Ge012)/l, type =’p’, pch=".",ylim=c(-4,4),xlim=c(0,2))
lines(g,ll,col="red",type="l",lty=3)
lines(g,(Mod(Ge012))^2,type=’l’,col="blue",lty=4)
Vemos que las propiedades del filtro son las que esperábamos.
También mencionaremos que, dado cualquier filtro H(B), se puede evitar el desfase tem-
poral a costa de pasar en cascada H(B) y otro filtro igual, pero en F , H(F ). Llamaremos
al filtro resultante H † (B) , H(B)H(F ). Es decir, dada la serie que se quiere filtrar yt , se
aplica primero, por ejemplo, H(B) a ella de pasado a futuro (como siempre). Si llamamos zt
a la serie resultante, después, se aplica H(F ) de futuro a pasado a zt , o, equivalentemente,
se aplica de nuevo H(B) (de pasado a futuro) a la serie zt invertida en el tiempo (puesta de
final a principio).
Como estamos aplicando dos filtros en cascada, la función de transferencia será el pro-
ducto de las de los dos filtros. Por tanto, la ganancia será el cuadrado de la del filtro simple
(ejercicio). Es decir, si queremos utilizar este filtro doble, tenemos que pensar H(B) para
que tenga una ganancia igual a la raı́z cuadrada de la que nos interese.
Como ejercicio, se pide calcular numéricamente y dibujar las funciones de ganancia,
su cuadrado, de cambio de fase y de cambio de tiempo de H1† (B) = H1 (B)H1 (F ) para
p−1 = 1,04.
Solución
Las siguientes sentencias de R calculan y dibujan en la figura 17 las funciones de ganancia,
su cuadrado, de cambio de fase y de cambio de tiempo del filtro H1† (B) = H1 (B)H1 (F ).
l=seq(0,pi,2*pi/5000)
f=l*6/pi
ll=matrix(0,nrow=1,ncol=length(l))
p=1/1.04 #Filtro sin desfase del tipo H(B)H(F)
F3c<-(p^2*(1-exp(-(0+1i)*l))*(1-exp((0+1i)*l)))/((1+0i-p*exp(-(0+1i)*l))*(1+0i-p*exp((
par(mfrow=c(3,1))
plot(f,Mod(F3c),type=’l’,xlim=c(0,6))
lines(f,(Mod(F3c))^2,type=’l’,col="blue")
plot(f,Arg(F3c), type =’p’, pch=".",ylim=c(-pi,pi),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
plot(f,Arg(F3c)/l, type =’p’, pch=".",ylim=c(-4,4),xlim=c(0,6))
lines(f,ll,col="red",type="l",lty=3)
lines(f,(Mod(F3c))^2,type=’l’,col="blue",lty=4)
Vemos que, en efecto, no hay desfase ni, por tanto, cambio de tiempo, con este filtro.
65
0.8
Mod(Ge012)
0.4
0.0
Figura 16: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para el filtro H1 (B) = p(1−B)
1−pB
, p−1 = 1,01
p(1 − B)
zt = yt , o bien (1 − pB)zt = p(1 − B)yt (124)
1 − pB
sin tener un modelo para zt , aunque esperamos que zt sea estacionario y de media cero y
entonces podrı́amos suponer z1 = 0 para comenzar a iterar. En efecto, comenzarı́amos con
t = 2 perdiendo una observación en la serie diferenciada como es habitual, pues tampoco
66
0.8
0.6
Mod(F3c)
0.4
0.2
0.0
0 1 2 3 4 5 6
f
3
2
1
Arg(F3c)
0
−1
−2
−3
0 1 2 3 4 5 6
f
4
2
Arg(F3c)/l
0
−2
−4
0 1 2 3 4 5 6
Figura 17: Funciones de ganancia, su cuadrado (azul), cambio de fase y cambio de tiempo
(junto al cuadrado de la ganancia), para el filtro H1† (B) = H1 (B)H1 (F ), con p−1 = 1,04
Al hacer esto estamos cometiendo un error en los żj , que decrece con t por ser zt un proceso
estacionario, pero que no es despreciable, sobre todo al principio de la serie, pues p está
próximo a 1.
Otra posibilidad es diferenciar yt y estimar un modelo ARMA a la serie diferenciada, pero
67
teniendo en cuenta el filtro H1 (B). Es decir, deberı́amos ajustar un modelo del tipo
φ(B)zt = θ(B)εt
φ(B)xt = (p−1 −2 −1 2 −1
0 − B)(p1 + 2p1 B + B )(p2 + B)θ(B)εt .
φ̂(B)xt = (p−1 −2 −1 2 −1
0 − B)(p1 + 2p1 B + B )(p2 + B)θ̂(B)ε̂t .
68
y que nos permitirı́a a su vez estimar (por ser xt = (p−1 −2 −1 2 −1
0 − B)(p1 + 2p1 B + B )(p2 + B)zt )
θ̂(B)
φ̂(B)ẑt = θ̂(B)ε̂t , es decir ẑt = ε̂t
φ̂(B)
p−1
0 −B
Además, el ciclo tendencia de yt serı́a ct = 1−B
zt y la componente estacional de yt serı́a
p−2 −1
1 +2p1 B+B
2 p−1
st = 1+B 2
2
z.
1+B t
Por tanto, podrı́amos estimarlas como
p−1
0 −B
ĉt = ẑt
1−B
y
p−2 −1
1 + 2p1 B + B
2
p−1
2
ŝt = ẑt
1 + B2 1+B
respectivamente.
Este esquema se puede generalizar sin dificultad a otras tendencias y estacionalidades
más o menos fuertes ası́ como a series mensuales.
zt = x0t β + yt , (127)
el cual seguirá, bajo la hipótesis de que las autocorrelaciones de los residuos son nulas, una
distribución χ2k−r , donde r es el número de parámetros que se estiman en el modelo de yt
(no en el modelo global, es decir, no se incluyen los parámetros de regresión) sin contar la
varianza de las innovaciones.
69
8.1. Variables de intervención
Las variables de intervención son series deterministas ψt que están diseñadas para tratar
ciertos sucesos, como huelgas, cambios en la polı́tica económica, catástrofes, etc., que afectan
a la serie de interés yt . Normalmente, una variable de intervención está definida mediante
ceros y unos.
Podemos dar un modelo del tipo
b
zt = β ω(B)B
δ(B)
ψt + yt (130)
para una sola variable de intervención ψt . En él, b es el retardo con que actúa ψt , mientras
que ω(B) y δ(B) son, respectivamente, el numerador y denominador de un filtro, que indica
la forma concreta en que afecta la intervención a la serie yt . La ecuación (130) es un caso
b
particular de (127) en el que hay una única variable xt = ω(B)B
δ(B)
ψt . Supondremos que ω(B) =
a c
1 + ω1 B + · · · + ωa B y δ(B) = 1 + δ1 B + · · · + δc B .
En cuanto a ψt , si llamamos T a un instante fijo de tiempo, los casos más habituales son:
(
0 si t 6= T
Impulso: ψt = ItT = (131a)
1 si t = T
n
T
X
Varios impulsos: ψt = It j (131b)
j=1
(
0 si t < T
Escalón: ψt = EtT = (131c)
1 si t ≥ T
(
0 si t < T
Rampa: ψt = RtT = (131d)
t − T + 1 si t ≥ T
De las definiciones, está claro que ∆RtT = EtT y que ∆2 RtT = ∆EtT = ItT . Utilizando
polinomios ω(B) y δ(B) adecuados y sumando varios términos con variables de intervención
se puede conseguir adaptar el análisis de intervención a muchas situaciones prácticas. Un
modelo general serı́a de la forma
m
ωj (B)B bj
X
zt = βj δj (B)
ψj,t + yt , (132)
j=1
70
zt = βψt + yt (133)
y
m
X
zt = βj ψj,t + yt , (134)
j=1
ηt = βξt + εt , (137)
Si, además, los εt son gaussianos, la estimación es, también, de máxima verosimilitud. En
este caso, podemos contrastar la significatividad del parámetro estimado β̂ usando el hecho
de que
2
V ar(β̂) = Pσεξ2 (139)
t
71
estimaciones, pero la forma de espacio de estado y el filtro de Kalman escapan al nivel de
este texto introductorio.
Por eso, para el caso simplificado de (133), veremos un procedimiento de estimación que
es más sencillo de comprender. El mismo procedimiento se podrı́a emplear para estimar
(134), utilizando regresión múltiple.
Partimos de una estimación inicial de la intervención β̂ψt
1. Se calcula ŷt = zt − β̂ψt
y
ˆ P
η̂t ξ̂t
β̂ = P 2 ,
ξ̂t
(141)
4. Se itera en los pasos anteriores, estimando nuevos modelos para yt y nuevas estimacio-
nes de β hasta alcanzar la convergencia.
8.2. Outliers
En muchas series aparecen observaciones anómalas, a las que llamaremos outliers, que
conviene identificar y tratar. Cuando el instante en que aparece el outlier es conocido, se
puede utilizar el análisis de intervención. Cuando ese instante no es conocido, primero hay
que intentar detectar el outlier para luego tratarlo, viendo el tipo de efecto que produce en
la serie.
Suponiendo el instante T en que aparece el outlier conocido, un posible modelo para el
efecto de un outlier es el que resulta de tomar en (130) b = 0 y ψt = ItT , es decir,
zt = yt + α ω(B) IT ,
δ(B) t
(142)
donde yt es la serie libre del efecto del outlier, zt es la serie observada y α representa el efecto
inicial del outlier.
Se suelen considerar cuatro tipos de outliers, que son
(
yt si t 6= T
1. Outlier aditivo (AO): ω(B) = δ(B) = 1, zt = yt + αItT =
yt + α si t = T
ω(B) 1
2. Cambio temporal (TC): δ(B)
= = 1+δB+δ 2 B 2 +δ 3 B 3 +· · · , con δ ∈ (−1, 1), luego
1−δB
y t
si t < T,
1 T T T 2 T
zt = yt +α 1−δB It = yt +α(It +δIt−1 +δ It−2 +· · · ) = yt + α si t = T,
n
yt + αδ si t = T + n, n ≥ 1.
Como δ ∈ (−1, 1), conforme t > T crece, zt converge a yt , es decir, el efecto del outlier
decrece (geométricamente).
72
ω(B) 1
3. Cambio de nivel (LC): δ(B)
= = 1 + B + B 2 + B 3 + · · · . En este caso tenemos
1−B (
1 yt si t < T,
zt = yt + α 1−B ItT = yt + α(ItT + It−1
T T
+ It−2 + ···) =
yt + α si t ≥ T.
Como primer ejercicio, comprobar que un cambio de nivel que afecta a una serie temporal
yt , es equivalente a un outlier aditivo que afecta a la serie diferenciada ∆yt y que una rampa
que afecta a una serie temporal yt , es equivalente a un cambio de nivel que afecta a la serie
diferenciada ∆yt y a un outlier aditivo que afecta a la serie diferenciada dos veces ∆2 yt .
Solución
1
El modelo para el cambio de nivel es zt = yt + α 1−B ItT , por tanto, diferenciando
miembro a miembro, ∆zt = ∆yt + αItT , que es el modelo para un outlier aditivo en la
serie diferenciada. Volviendo atrás en este razonamiento, tenemos la equivalencia.
1
El modelo para la rampa es zt = yt + α 1−B EtT , por tanto, diferenciando miembro a
miembro, ∆zt = ∆yt + αEtT , que es el modelo para un cambio de nivel en la serie
diferenciada. Aplicando ahora el caso anterior tenemos el resultado.
1. Un cambio de nivel en una serie yt que siga un modelo de paseo aleatorio es equivalente
a un outlier aditivo en la innovación de la serie diferenciada ∆yt .
73
Solución
Es yt = ∆−2 εt , por tanto, zt = αRtT +∆−2 εt . Diferenciando dos veces es ∆2 zt = αItt +εt .
De nuevo, se puede retroceder en el razonamiento para demostrar la equivalencia.
Solución
1
12
= (1 + B + B 2 + · · · )(1 + B 12 + B 24 + · · · ) =
(1 − B)(1 − B )
(1+B+B 2 +· · ·+B 11 +2B 12 +2B 13 +· · ·+2B 23 +3B 24 +3B 25 +· · ·+3B 35 +4B 36 +· · · ,
Esta expansión infinita actúa sobre un impulso Itt0 , como B j Itt0 = It−j
t0
vale uno sólo
en t = t0 + j, vemos que el efecto es producir una escalera a partir del punto t0 con
escalones de altura α que duran, cada uno, 12 meses. Es decir, estamos ante un efecto
que crece (o decrece si α < 0) sin cota en el tiempo. Por eso, salvo a corto plazo, es
difı́cil que podamos adaptar este efecto a una situación práctica.
74
# ponemos en potencias crecientes , tambien quitamos
# el 1 inicial, pues filter() lo da por supuesto
> (f3<-f2[2:length(f2)])
[1] 1.000000e+00 2.138202e-17 -7.154185e-17 4.224516e-17
[5] -8.690655e-17 1.866919e-16 -1.134540e-16 5.498454e-19
[9] 5.667280e-17 -4.175727e-17 -6.784008e-17 1.000000e+00
[13] -1.000000e+00
# usaremos f3 como filtro autorregresivo
> y2<-filter(I,f3,method="recursive")
> plot(y2,type=’l’)
# calcularemos el filtro de medias moviles del numerador
> (m<-convolve(c(-0.2,1),c(1,0,0,0,0,0,0,0,0,0,0,0,-0.8),type =’open’))
[1] 1.600000e-01 -8.000000e-01 -5.068645e-17 -3.361027e-17
[5] -1.597262e-18 -2.838286e-17 5.288971e-17 -1.345650e-16
[9] -5.459732e-19 4.967195e-17 2.905855e-17 -6.448680e-17
[13] -2.000000e-01 1.000000e+00
> m2<--rev(m)
> (m3<-m2[2:length(m2)])
[1] 2.000000e-01 6.448680e-17 -2.905855e-17 -4.967195e-17
[5] 5.459732e-19 1.345650e-16 -5.288971e-17 2.838286e-17
[9] 1.597262e-18 3.361027e-17 5.068645e-17 8.000000e-01
[13] -1.600000e-01
# aplicaremos el filtro de medias moviles m3 al resultado de aplicar
# el filtro autorregresivo, es decir, ejecutaremos los dos filtros en
# cascada (en serie). El sides=1 hace que la media movil no sea
# centrada, sino unilateral, que es lo que necesitamos.
> y3<-filter(y2,m3,method="convolution",sides=1)
# en el grafico anterior, incluiremos el resultado actual
> lines(y3,type=’l’,col=’blue’,lty=2)
En la Figura 18 vemos, en trazo contiuo, el efecto del filtro del apartado primero y, en
trazo discontinuo, el del apartado segundo. Podemos apreciar que la parte de medias
móviles no cambia el hecho de que el filtro tenga un efecto que crece sin cota.
En la salida, notamos que las multiplicaciones de polinomios tienen algunos coeficientes
muy pequeños que deberı́an ser cero. Esto se debe a que la función convolve emplea
la transformada rápida de Fourier y carece de importancia práctica, pues el efecto de
estos números tan pequeños es despreciable.
Si los instantes de tiempo en que aparecen los outliers y el tipo de cada outlier son
conocidos, entonces el modelo se estima como un modelo de análisis de intervención.
La determinación de los instantes en que aparece un outlier se realiza en varios pasos,
con un esquema que puede ser parecido al siguiente:
75
8
6
y2
4
2
0
Figura 18: Efecto de un outlier en la innovación con α = 1 en los modelos ∆∆12 yt = εt (negro
continuo) y ∆∆12 yt = (1 − 0,2B)(1 − 0,8B 12 )εt (azul discontinuo). Siempre es V ar(εt ) = 1.
2. A partir de este modelo, se calculan los residuos ε̂t = φ̂(B) z y se marca como sospechoso
θ̂(B) t
de contener un cambio de nivel a cada instante de tiempo en el cual ε̂t sea mayor que
un valor prefijado, dependiente de una estimación robusta σ̂ε de la desviación tı́pica
de los residuos (ε̂t > k1 σ̂ε para una constante k1 adecuada, que suele oscilar entre 2,5
y 3,5). La estimación robusta, a su vez, suele ser de la forma σ̂ε = k2 M , donde M es la
mediana de los |ε̂t | y k2 otra constante.
4. Se contrasta la posible presencia en ht de cada uno de los otros efectos (outlier aditivo,
cambio transitorio y outlier aditivo en la innovación) en cada uno de los instantes
de tiempo. Se incluye el efecto que resulte estadı́sticamente más significativo de entre
todos ellos. Se descuenta ese efecto de la serie ht , obteniéndose una nueva serie. A esta
serie se le aplica de nuevo lo mismo que hemos aplicado a la ht , iterando este proceso
hasta que no se encuentre ya ningún efecto significativo.
76
5. Todos los efectos que hayan resultado significativos en los pasos 3 y 4 se incluyen
conjuntamente en la serie zt observada y se estima el modelo resultante. Finalmente,
se eliminan (uno a uno) aquellos que no sean significativos, reestimando el modelo cada
vez que uno es eliminado.
Programas como TRAMO-SEATS, TSW o X13-ARIMA están diseñados de tal forma que pueden
automatizar este proceso.
77
En resumen, el regresor de año bisiesto será una serie temporal determinista bam
t , de la
misma longitud que la serie que estamos analizando yt , que toma valores
0 si m 6= 2,
am
bt = −0,25 si m = 2 y a no es año bisiesto,
0,75 si m = 2 y a es año bisiesto.
Si llamamos β al coeficiente que, multiplicado por bt , define el efecto del año bisiesto, para
eliminar el efecto de año bisiesto podemos utilizar el modelo RegARIMA (modelo de regresión
con errores ARIMA) dado por
θ(B)
yt − βbt = εt
φ(B)
Si llamamos β̂ al parámetro β estimado, la serie corregida de efecto de año bisiesto será
ytb = yt − β̂bt , ó
ytb = yt e−β̂bt
según que trabajemos con la serie yt sin tomar o tomando logaritmos respectivamente.
78
es la suma de los Euamj
extendida a todos los dı́as uj que pertenecen al grupo i-ésimo Gi
(en palabras, es el número de dı́as del grupo i que caen en el mes m del año a) y αi es
un parámetro desconocido que representa el efecto de cada dı́a de ese grupo. De esta forma
reducimos el número de parámetros a estimar de k a g.
En realidad, en lugar de (147), se suele emplear
g Bi
X 1 X
dam
t = αi (eam
i − ēm m
i ), donde ēi = eam (148)
i=1
Bi − Ai a=A i
i
θ(B)
yt − α1 (eam m am m
1 − ē1 ) − α2 (e2 − ē2 ) = εt , (150)
φ(B)
79
8.3.3. Dı́a laborable (Trading day)
Muchas series temporales de interés recogen, con una frecuencia mensual o trimestral,
información relacionada con actividades económicas. Para estas series, la distribución irre-
gular en cada mes o en cada trimestre, a lo largo de los años, de los distintos dias de la
semana, produce un efecto no deseable.
Como ya se ha dicho, entre los años 1901 y 2099 un año de cada 4 es bisiesto (empezando
en 1904). Por otra parte, hay siete dı́as en una semana, 365 dı́as en un año no bisiesto y el
resto de dividir 365 entre 7 es 1, es decir, si no hubiera años bisiestos, cada siete años se
repetı́rı́a la misma sucesión de fechas y dı́as de la semana. Uniendo ambos hechos y teniendo
en cuenta que 4 y 7 son números primos entre si, tenemos que, entre 1901 y 2099, cada
4 × 7 = 28 años se repite la misma secuencia de fechas y dı́as de la semana.
A continuación explicaremos el modelo que se emplea en el INE para estimar el efecto de
dı́a laborable. Este método es adecuado para variables de flujo, como lo son casi todas las
que se estudian en las encuestas del INE.
El tratamiento es parecido al de los efectos de Semana Santa. Agrupamos los dı́as de
cada mes en g clases. Entre otras muchas posibilidades, podemos, por ejemplo, tomar g = 7
y que las clases sean los dias de la semana (lunes, martes, ..., domingos) de cada mes o tomar
g = 2 y que las ( clases sean los dias laborables y no laborables de cada mes.
amd 1 si el dı́a u pertenece a la clase i,
Sea Iui =
0 en otro caso.
Sea αi un valor promedio (desconocido) del efecto de la clase i, con i ∈ {1, · · · , g}, el
número de dı́as de la clase i que tiene el mes m del año a será
X
Niam = amd
Iui . (152)
u
Por tanto, N am = i Niam es el número total de dı́as que tiene el mes m de año a. Entonces,
P
el efecto de dı́a laborable del mes m del año a se puede expresar en la forma
g
X
zt = ztam = Niam αi . (153)
i=1
Sea ahora ξi = αi − ᾱ, con i ∈ {1, · · · , g} la desviación media del efecto de dı́a laborable en
un dı́a de clase i respecto del efecto promedio a largo plazo ᾱ.
Este efecto promedio a largo plazo Pse puede calcular, P
para un número suficientemente
grande de meses, en las formas (N = a,m i Niam , Ni = a,m Nia,m )
P
Pg am Pg Pg
αi a.m Nia,m
P
i=1 Ni αi
P
a,m i=1 αi Ni
ᾱ = P am
= = i=1 , (154a)
a,m N N N
g
X
1
ᾱ = g
αi , (154b)
i=1
donde la última forma simplificada solo se aplica en el caso particular de que, a largo plazo,
las g clases tengan el mismo número de dı́as, es decir, Ni /N = 1/g para todo grupo i (este
80
es el caso si, por ejemplo, los g = 7 grupos representan los dias de la semana de lunes a
domingo). En el caso (154a), es
g g
XX XX
Niam ξi = Niam (αi − ᾱ) = N ᾱ − N ᾱ = 0, (155)
a,m i=1 a,m i=1
N̄1
ξ2 = − ξ1 (159)
N̄2
Ahora (157) queda
N̄1 am
zt = ztam = ξ1 N1am + ξ2 N2am + ᾱN am = ξ1 [N1am − N2 ] + ᾱN am (160)
N̄2
Es decir, hemos descompuesto el efecto de los dı́as laborables zt en dos componentes,
la primera solo depende de la composición de cada mes en dı́as laborables y no laborables
y la segunda es la longitud de cada mes. Los parámetros a estimar asociados a estas dos
componentes son ξ1 y ᾱ respectivamente.
En lugar de (160) se suele trabajar con
N̄1 am
zt = ztam = ξ1 [(N1am − N̄1m ) − (N − N̄2m )] + ᾱ(N am − N̄ m ), (161)
N̄2 2
1
PBm 1
PBm 1
PBm
donde N̄1m = Bm −A m a=A m
N1
am
, N̄2
m
= Bm −A m a=A m
N2
am
y N̄ m
= B m −A m a=Am N
am
son, respectivamente, las medias de los N1am , N2am y N am para cada mes m, tomada a lo
largo de los Bi − Ai años en los que hay información de ese mes.
81
El motivo de utilizar (161) es, como en el caso de los efectos de la Semana Santa, que
los valores de las series N1am , N2am y N am pueden tener estacionalidad (variar con el mes del
año) y, de usar (160), estarı́amos corrigiendo esta estacionalidad.
Notamos que el regresor bt = N am − N̄ m coincide con el de dı́a bisiesto que ya habı́amos
visto. Por eso decı́amos que el efecto de dı́a bisiesto se puede corregir por separado o conjun-
tamnete con el de dı́a laborable. En cualquier caso, en un ajuste de calendario de una serie,
incluiremos este regresor sólo una vez.
Para estimar ξ1 y ᾱ en (160) se utilizan técnicas de estimación de modelos RegARIMA,
(modelos de regresión con residuos que siguen procesos ARIMA). En concreto, si la serie que
estamos analizando es yt , se estima el modelo RegARIMA
θ(B)
yt − zt = yt − ξ1 ut − ᾱbt = εt , (162)
φ(B)
N̄1
donde ut = (N1am − N̄1m )− N̄ 2
(N2am − N̄2m ) y bt = Ntam − N̄tm son las dos series deterministas
que actúan como regresores.
Si llamamos ξˆ1 y ᾱ
ˆ a los parámetros estimados, definimos la serie corregida de efectos de
dı́as laborables como
yt∗ = yt − ẑt = yt − ξˆ1 ut − ᾱ
ˆ bt (163)
para el caso de que se analice la serie yt en niveles y
ˆ
yt∗ = yt e−ẑt = yt e−ξ̂1 ut −ᾱbt (164)
en caso de que se tomen logaritmos a la serie yt .
Si no queremos hacer ajuste estacional, sino tan solo corregir el efecto de los dı́as labo-
rables, con esto hemos terminado. Si queremos, además, hacer ajuste estacional, tendremos
que realizar otros procesos posteriores.
82
D, el número de dı́a dentro del mes
XNM, son 19 variables, una para cada valor de NM, que son dos dı́gitos con valores 01,
02,...,19 y contienen un 1 si ese dı́a es un dı́a de entre lunes y viernes y es festivo en la
comunidad (o ciudad) autónoma número NM y 0 si es laborable en esa comunidad (o
ciudad) autónoma. En algunos casos (por ejemplo, en provincias insulares) la variable
contiene un número entre 0 y 1 que representa el peso de las zonas de la comuni-
dad autónoma donde es fiesta ese dı́a. La codificación concreta de las comunidades y
ciudades autónomas no es relevante para realizar los cálculos.
YNM, son 19 variables análogas a las XNM, que toman valores 0 o 1 (o, a veces, valores
intermedios) si el dı́a es un sábado y es o no laborable.
ZNM, son 19 variables, análogas a las XNM y las YNM, pero para domingos (hay
domingos laborables en algunos sectores de actividad).
UNO, es una variable que toma el valor 1 para cada dı́a, se usa para contar dı́as
totalizando esta variable.
En el segundo fichero solo hay 19 registros, uno por cada comunidad o ciudad autónoma (en
el mismo orden que las letras NM de las variables del fichero anterior) y una variable W , que
es el peso que tiene esa comunidad o ciudad autónoma en la serie de interés yt . Este peso
se utiliza para calcular los regresores de calendario, ponderando por él. Esto es necesario
debido a que hay dı́as que son laborables en unas comunidades o ciudades autónomas, pero
no en otras, y lo mismo ocurre con el Jueves Santo y el Lunes de Pascua.
En este ejemplo se calcularán efectos de calendario para un ı́ndice de producción in-
dustrial, por lo cual, los pesos del segundo fichero se refieren a producción industrial y las
variables YNM y ZNM no se emplearán (para cálcular los efectos de calendario, consideraremos
los sábados y domingos siempre como no laborables en el sector industrial).
Las siguientes sentencias de R leen los datos de un fichero de texto, escogen algunas
variables y cambian otras de nombre para crear el fichero CalIPI que hemos descrito y
calculan el regresor de dı́a bisiesto (BI o bt ) calculando la longitud de cada mes del fichero,
la longitud media de cada uno de los 12 meses del año y restando. Vemos en la salida que el
regresor resulta tener solo valores 0, −0,25 y 0,75 como se dijo en la sección correspondiente.
83
> CalIPIa<-read.csv(file="/home/CalendarioIPI4annos.csv",header=TRUE,sep=",",dec=".")
> head(CalIPIa)
FECHA DAY MONTH YEAR WEEKDAY FIESTA NDIA BIS
1 1/1/2010 1 1 2010 5 AO NUEVO 1 0
2 1/2/2010 2 1 2010 6 1 0
3 1/3/2010 3 1 2010 7 1 0
4 1/4/2010 4 1 2010 1 1 0
5 1/5/2010 5 1 2010 2 1 0
6 1/6/2010 6 1 2010 3 EPIFANA DEL SEOR 1 0
NDOM NSAB LMXSS JSS VSS LPSS XH01AND XH02ARA XH03AST XH04BAL
1 0 0 0 0 0 0 1 1 1 1
2 0 1 0 0 0 0 0 0 0 0
3 1 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 1 1 1 1
XH05CAN XH06CANT XH08CLM XH07CL XH09CAT XH10CV XH11EXT XH12GAL
1 1 1 1 1 1 1 1 1
2 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 1 1 1 1 1 1 1 1
XH13MAD XH14MUR XH15NAV XH16PV XH17RIO XH18CEU XH19MEL XS01AND
1 1 1 1 1 1 1 1 0
2 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 1 1 1 1 1 1 1 0
XS02ARA XS03AST XS04BAL XS05CAN XS06CANT XS08CLM XS07CL XS09CAT
1 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0
XS10CV XS11EXT XS12GAL XS13MAD XS14MUR XS15NAV XS16PV XS17RIO
1 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0
XS18CEU XS19MEL XD01AND XD02ARA XD03AST XD04BAL XD05CAN
84
1 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0
XD06CANT XD08CLM XD07CL XD09CAT XD10CV XD11EXT XD12GAL XD13MAD
1 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0
XD14MUR XD15NAV XD16PV XD17RIO XD18CEU XD19MEL
1 0 0 0 0 0 0
2 0 0 0 0 0 0
3 0 0 0 0 0 0
4 0 0 0 0 0 0
5 0 0 0 0 0 0
6 0 0 0 0 0 0
> Selec<-c(2:5,11:71)
> CalIPIb<-CalIPIa[,Selec]
> UNO<-matrix(1,nrow=nrow(CalIPIb),ncol=1)
> CalIPI<-data.frame(CalIPIb,UNO)
> (Nu1<-paste("X",1:19,sep="")) # esto nos crea el vector literal X1,...,X19
[1] "X1" "X2" "X3" "X4" "X5" "X6" "X7" "X8" "X9" "X10"
[11] "X11" "X12" "X13" "X14" "X15" "X16" "X17" "X18" "X19"
> In1<-which(names(CalIPI)=="XH01AND")
> Fi1<-which(names(CalIPI)=="XH19MEL") # nros. de variables inicial y final
> names(CalIPI)[In1:Fi1]<-Nu1
> Nu2<-paste("Y",1:19,sep="") # esto nos crea el vector literal Y1,...,Y19
> In2<-which(names(CalIPI)=="XS01AND")
> Fi2<-which(names(CalIPI)=="XS19MEL") # nros. de variables inicial y final
> names(CalIPI)[In2:Fi2]<-Nu2
> Nu3<-paste("Z",1:19,sep="") # esto nos crea el vector literal Z1,...,Z19
> In3<-which(names(CalIPI)=="XD01AND")
> Fi3<-which(names(CalIPI)=="XD19MEL") # nros. de variables inicial y final
> names(CalIPI)[In3:Fi3]<-Nu3
> Nu4<-c("D","M","A","DS","LMXSS","JSS","VSS","LPSS")
> names(CalIPI)[1:8]<-Nu4
> head(CalIPI)
D M A DS LMXSS JSS VSS LPSS X1 X2 X3 X4 X5 X6 X7 X8 X9 X10
1 1 1 2010 5 0 0 0 0 1 1 1 1 1 1 1 1 1 1
2 2 1 2010 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 3 1 2010 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0
85
4 4 1 2010 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 5 1 2010 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 6 1 2010 3 0 0 0 0 1 1 1 1 1 1 1 1 1 1
X11 X12 X13 X14 X15 X16 X17 X18 X19 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 Y9
1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
Y10 Y11 Y12 Y13 Y14 Y15 Y16 Y17 Y18 Y19 Z1 Z2 Z3 Z4 Z5 Z6 Z7 Z8
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Z9 Z10 Z11 Z12 Z13 Z14 Z15 Z16 Z17 Z18 Z19 UNO
1 0 0 0 0 0 0 0 0 0 0 0 1
2 0 0 0 0 0 0 0 0 0 0 0 1
3 0 0 0 0 0 0 0 0 0 0 0 1
4 0 0 0 0 0 0 0 0 0 0 0 1
5 0 0 0 0 0 0 0 0 0 0 0 1
6 0 0 0 0 0 0 0 0 0 0 0 1
> (DiasMesAnno<-aggregate(CalIPI$UNO, by=list(CalIPI$M,CalIPI$A), sum, na.rm=TRUE))
Group.1 Group.2 x
1 1 2010 31
2 2 2010 28
3 3 2010 31
4 4 2010 30
5 5 2010 31
6 6 2010 30
7 7 2010 31
8 8 2010 31
9 9 2010 30
10 10 2010 31
11 11 2010 30
12 12 2010 31
13 1 2011 31
14 2 2011 28
15 3 2011 31
16 4 2011 30
17 5 2011 31
18 6 2011 30
19 7 2011 31
86
20 8 2011 31
21 9 2011 30
22 10 2011 31
23 11 2011 30
24 12 2011 31
25 1 2012 31
26 2 2012 29
27 3 2012 31
28 4 2012 30
29 5 2012 31
30 6 2012 30
31 7 2012 31
32 8 2012 31
33 9 2012 30
34 10 2012 31
35 11 2012 30
36 12 2012 31
37 1 2013 31
38 2 2013 28
39 3 2013 31
40 4 2013 30
41 5 2013 31
42 6 2013 30
43 7 2013 31
44 8 2013 31
45 9 2013 30
46 10 2013 31
47 11 2013 30
48 12 2013 31
> (DiasMes<-aggregate(DiasMesAnno$x, by=list(DiasMesAnno$Group.1), mean, na.rm=TRUE))
Group.1 x
1 1 31.00
2 2 28.25
3 3 31.00
4 4 30.00
5 5 31.00
6 6 30.00
7 7 31.00
8 8 31.00
9 9 30.00
10 10 31.00
11 11 30.00
12 12 31.00
> (DiasMesAnnoRegresor<-merge(DiasMesAnno, DiasMes, by.x="Group.1", by.y="Group.1"))
Group.1 Group.2 x.x x.y
87
1 1 2010 31 31.00
2 1 2013 31 31.00
3 1 2012 31 31.00
4 1 2011 31 31.00
5 2 2010 28 28.25
6 2 2011 28 28.25
7 2 2013 28 28.25
8 2 2012 29 28.25
9 3 2010 31 31.00
10 3 2011 31 31.00
11 3 2012 31 31.00
12 3 2013 31 31.00
13 4 2010 30 30.00
14 4 2011 30 30.00
15 4 2012 30 30.00
16 4 2013 30 30.00
17 5 2010 31 31.00
18 5 2011 31 31.00
19 5 2012 31 31.00
20 5 2013 31 31.00
21 6 2010 30 30.00
22 6 2011 30 30.00
23 6 2012 30 30.00
24 6 2013 30 30.00
25 7 2010 31 31.00
26 7 2011 31 31.00
27 7 2012 31 31.00
28 7 2013 31 31.00
29 8 2010 31 31.00
30 8 2011 31 31.00
31 8 2012 31 31.00
32 8 2013 31 31.00
33 9 2010 30 30.00
34 9 2011 30 30.00
35 9 2012 30 30.00
36 9 2013 30 30.00
37 10 2010 31 31.00
38 10 2011 31 31.00
39 10 2012 31 31.00
40 10 2013 31 31.00
41 11 2011 30 30.00
42 11 2010 30 30.00
43 11 2012 30 30.00
44 11 2013 30 30.00
45 12 2012 31 31.00
88
46 12 2011 31 31.00
47 12 2010 31 31.00
48 12 2013 31 31.00
> (DiasMesAnnoRegresor$BI<-DiasMesAnnoRegresor$x.x-DiasMesAnnoRegresor$x.y)
[1] 0.00 0.00 0.00 0.00 -0.25 -0.25 -0.25 0.75 0.00 0.00
[11] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[21] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[31] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[41] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> (DiasMesAnnoRegresor<-DiasMesAnnoRegresor[with(DiasMesAnnoRegresor,
order(Group.2, Group.1)), ])
Group.1 Group.2 x.x x.y BI
1 1 2010 31 31.00 0.00
5 2 2010 28 28.25 -0.25
9 3 2010 31 31.00 0.00
13 4 2010 30 30.00 0.00
17 5 2010 31 31.00 0.00
21 6 2010 30 30.00 0.00
25 7 2010 31 31.00 0.00
29 8 2010 31 31.00 0.00
33 9 2010 30 30.00 0.00
37 10 2010 31 31.00 0.00
42 11 2010 30 30.00 0.00
47 12 2010 31 31.00 0.00
4 1 2011 31 31.00 0.00
6 2 2011 28 28.25 -0.25
10 3 2011 31 31.00 0.00
14 4 2011 30 30.00 0.00
18 5 2011 31 31.00 0.00
22 6 2011 30 30.00 0.00
26 7 2011 31 31.00 0.00
30 8 2011 31 31.00 0.00
34 9 2011 30 30.00 0.00
38 10 2011 31 31.00 0.00
41 11 2011 30 30.00 0.00
46 12 2011 31 31.00 0.00
3 1 2012 31 31.00 0.00
8 2 2012 29 28.25 0.75
11 3 2012 31 31.00 0.00
15 4 2012 30 30.00 0.00
19 5 2012 31 31.00 0.00
23 6 2012 30 30.00 0.00
27 7 2012 31 31.00 0.00
31 8 2012 31 31.00 0.00
35 9 2012 30 30.00 0.00
89
39 10 2012 31 31.00 0.00
43 11 2012 30 30.00 0.00
45 12 2012 31 31.00 0.00
2 1 2013 31 31.00 0.00
7 2 2013 28 28.25 -0.25
12 3 2013 31 31.00 0.00
16 4 2013 30 30.00 0.00
20 5 2013 31 31.00 0.00
24 6 2013 30 30.00 0.00
28 7 2013 31 31.00 0.00
32 8 2013 31 31.00 0.00
36 9 2013 30 30.00 0.00
40 10 2013 31 31.00 0.00
44 11 2013 30 30.00 0.00
48 12 2013 31 31.00 0.00
> (bt<-ts(DiasMesAnnoRegresor$BI,frequency=12,start=c(2010,1)))
Jan Feb Mar Apr May Jun Jul Aug Sep Oct
2010 0.00 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
2011 0.00 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
2012 0.00 0.75 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
2013 0.00 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Nov Dec
2010 0.00 0.00
2011 0.00 0.00
2012 0.00 0.00
2013 0.00 0.00
En cuanto a los regresores de Semana Santa, en primer lugar tenemos que calcular las
amd amd
series Iu1 y Iu2 , esto se consigue calculando primero
P19los dı́as inhábiles de lunes a viernes
amd
como suma ponderada de los XNM, es decir Kt = N M =1 XN Mt wN M , entonces se hace
amd amd
Iu1 = Kt (JSSt + V SSt + LPt ) y Iu2 = LM M SSt + (1 − Kt )(JSSt + LP SSt ). Puede
comprobarse, analizando todos los casos posibles, que estas series son las que habı́amos
descrito para los efectos de Semana Santa.
Las sentencias de R que hacen estos cálculos y luego obtienen los regresores de dı́as
laborables de Semana Santa eam 1 y festivos de Semana Santa eam2 son:
> Peso<-read.csv(file="~/Calendario/Pesos.csv",header=FALSE,sep=" ",dec=".")
> (Pesos<-as.vector(Peso$V1)/100) # dividimos por 100 porque los pesos suman 100
[1] 0.10299297 0.04839827 0.02751639 0.01147483 0.01732239 0.01486142
[7] 0.04225102 0.06230858 0.23629398 0.09734737 0.00865160 0.05869341
[13] 0.10311822 0.02760232 0.02993623 0.09846422 0.01276678 0.00000000
[19] 0.00000000
> CalIPI$K<-CalIPI$X1*Pesos[1]+ CalIPI$X2*Pesos[2]+ CalIPI$X3*Pesos[3]+
+ CalIPI$X4*Pesos[4]+ CalIPI$X5*Pesos[5]+ CalIPI$X6*Pesos[6]+
+ CalIPI$X7*Pesos[7]+ CalIPI$X8*Pesos[8]+ CalIPI$X9*Pesos[9]+
90
+ CalIPI$X10*Pesos[10]+ CalIPI$X11*Pesos[11]+
+ CalIPI$X12*Pesos[12]+ CalIPI$X13*Pesos[13]+
+ CalIPI$X14*Pesos[14]+ CalIPI$X15*Pesos[15]+ CalIPI$X16*Pesos[16]+
+ CalIPI$X17*Pesos[17]+ CalIPI$X18*Pesos[18]+ CalIPI$X19*Pesos[19]
> CalIPI$I1<-CalIPI$K*(CalIPI$JSS+CalIPI$VSS+CalIPI$LP)
> CalIPI$I2<-CalIPI$LMXSS+(1-CalIPI$K)*(CalIPI$JSS+CalIPI$LPSS)
> E1<-aggregate(CalIPI$I1,by=list(CalIPI$M,CalIPI$A),sum, na.rm=TRUE)
> E1m<-aggregate(E1$x, by=list(E1$Group.1), mean, na.rm=TRUE)
> E1Regresor<-merge(E1, E1m, by.x="Group.1", by.y="Group.1")
> E1Regresor$e1<-E1Regresor$x.x-E1Regresor$x.y
> E1Regresor<-E1Regresor[with(E1Regresor, order(Group.2, Group.1)), ]
> (e1<-ts(E1Regresor$e1,frequency=12,start=c(2010,1)))
Jan Feb Mar Apr May Jun
2010 0.0000000 0.0000000 -0.4165897 0.3821541 0.0000000 0.0000000
2011 0.0000000 0.0000000 -0.4165897 0.4922682 0.0000000 0.0000000
2012 0.0000000 0.0000000 -0.4165897 0.3821541 0.0000000 0.0000000
2013 0.0000000 0.0000000 1.2497690 -1.2565764 0.0000000 0.0000000
Jul Aug Sep Oct Nov Dec
2010 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
2011 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
2012 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
2013 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000
> E2<-aggregate(CalIPI$I2,by=list(CalIPI$M,CalIPI$A),sum, na.rm=TRUE)
> E2m<-aggregate(E2$x, by=list(E1$Group.1), mean, na.rm=TRUE)
> E2Regresor<-merge(E2, E2m, by.x="Group.1", by.y="Group.1")
> E2Regresor$e2<-E2Regresor$x.x-E2Regresor$x.y
> E2Regresor<-E2Regresor[with(E2Regresor, order(Group.2, Group.1)), ]
> (e2<-ts(E2Regresor$e2,frequency=12,start=c(2010,1)))
Jan Feb Mar Apr May Jun Jul
2010 0.000000 0.000000 1.416590 -1.382154 0.000000 0.000000 0.000000
2011 0.000000 0.000000 -1.583410 1.507732 0.000000 0.000000 0.000000
2012 0.000000 0.000000 -1.583410 1.617846 0.000000 0.000000 0.000000
2013 0.000000 0.000000 1.750231 -1.743424 0.000000 0.000000 0.000000
Aug Sep Oct Nov Dec
2010 0.000000 0.000000 0.000000 0.000000 0.000000
2011 0.000000 0.000000 0.000000 0.000000 0.000000
2012 0.000000 0.000000 0.000000 0.000000 0.000000
2013 0.000000 0.000000 0.000000 0.000000 0.000000
Finalmente, calcularemos el regresor de dı́a laborable ut . Para ello, tan solo necesitamos
calcular el número de dias laborables y no laborables de cada mes y algunos promedios suyos.
Suponemos, por tratarse de regresores para un indice industrial, que los sábados y domingos
son todos no laborables. Por tanto, podemos usar la variable Kt que habı́amos defindo para
los regresores de Semana Santa y crear una serie nueva Lt que indica si el dı́a es no laborable,
91
(
1 si DS = 6 ó 7 (sábado o domingo),
en concreto Lt = .
Kt en otro caso.
En el programa que implementa esto, la variable Lt se llama N2amd. Con esta variable,
podemos calcular el número de dı́as no laborables de cada mes sumando en la forma N2am =
Pl(a,m) amd
d=1 Lt , donde l(a, m) es la longitud del mes m del año a. El número de dı́as laborables
será N1 = l(a, m) − N2am . El programa es:
am
92
8.4. Ausencia de observaciones
Si en la serie temporal yt no disponemos de algunas observaciones, podemos intentar
estimarlas utilizando la información que nos dan las restantes observaciones.
La hipótesis que haremos es que los instantes en que faltan las observaciones están to-
mados al azar. Esto implica que, por ejemplo, no faltan precisamente las observaciones con
valores grandes (o pequeños).
En concreto, utilizaremos la esperanza condicionada, intentando calcular
donde Ym representa un vector donde se apilan las observaciones ausentes de nuestra serie,
mientras que Yo representa un vector con las observaciones de que disponemos.
Supongamos que nos falta la observación yi . El método que describimos se podrı́a emplear,
teóricamente, para estimarla en forma óptima. La función de autocorrelación inversa IACF
está formada por las llamadas autocorrelaciones inversas. La autocorrelación inversa νk de
retardo k se define como la autocorrelación entre yt e yt−k , eliminado el efecto de todas las
demás observaciones (sean anteriores a yt−k , posteriores a yt o intermedias entre ambas).
Dado un proceso ARMA(p,q) estacionario con modelo φ(B)yt = θ(B)εt , el llamado proceso
inverso xt , que sigue el modelo θ(B)xt = φ(B)ut , obtenido intercambiando los polinomios
autorregresivo y de medias móviles en el modelo de yt y sustituyendo el ruido blanco εt por
otro ut tal que V ar(ut ) = (V ar(εt ))−1 , tiene como autocorrelaciones las autocorrelaciones
inversas de yt . Calcular las autocorrelaciones del proceso inverso xt es una forma sencilla de
calcular las autocorrelaciones inversas de yt .
Una vez conocidas (o estimadas a partir de la serie yt observada) las νk , la estima-
ción (interpolación) óptima de una observación ausente yi se puede expresar en la forma
ŷi = ∞
P
ν (y
j=1 j i+j + y i−j ). Como en la práctica, la serie observada es finita y1 , · · · , yT y no
conoceremos las νk , sino que las estimaremos a partir P del proceso inverso del proceso que se
ajuste a nuestra serie finita, deberı́amos escribir ŷi = ∞ j=1 ν̂j (ŷi+j + ŷi−j ), donde ŷi+j , para
i + j > T serı́a la predicción óptima de yi+j , para i + j < 0 serı́a la predicción óptima de la
serie hacia el pasado (o la predicción óptima hacia el futuro de la serie puesta del revés) y,
en otro caso, serı́a la observación de que disponemos.
El método anterior es poco práctico, en su lugar se puede utilizar el filtro de Kalman o
también el procedimiento que describimos a continuación.
Si faltan k observaciones, en los instantes t1 , · · · , tk , se procede en la siguiente forma:
1. Imputar los valores yt1 , · · · , ytk desconocidos por valores arbitrarios, zt1 , · · · , ztk (por
ejemplo, ceros). En el resto de instantes, hacer, simplemente, zt = yt .
2. Aplicar análisis de intervención a la serie ası́ completada, incluyendo un impulso en
cada instante t1 , · · · , tk , es decir,
k
X
zt = ωj Itj + yt (168)
j=1
3. Estimar (168). Si denotamos por ω̂j a las estimaciones de los ωj , las estimaciones de
los valores perdidos son ŷtj = ztj − ω̂j .
93
Se puede demostrar que de esta forma se obtiene (en una sola iteración) la estimación óptima
de los valores perdidos y que ésta es independiente de los valores arbitrarios empleados en
el paso 1 anterior.
9. Funciones de transferencia
9.1. Introducción
El estudio conjunto de dos o más series temporales, es decir, de series temporales múlti-
ples, se encuentra fuera del ámbito de este curso. Este estudio se puede abordar utilizando
los modelos VARMA, generalización de los ARMA al caso vectorial. Como caso particular, los
modelos VAR, que no tienen parte de medias móviles son más sencillos de ajustar a los datos.
En este curso trataremos tan solo el caso en que una de las series temporales, la explicada,
yt no influye en las otras, xjt , j ∈ {1, · · · , r}, que son las explicativas y se consideran exógenas,
es decir, sus modelos se determinan por separado, independientemente del de yt . En cambio,
se supone que las series xjt , j ∈ {1, · · · , r} influyen en yt . En este caso, no son necesarios
los modelos VAR o VARMA, sino que se puede utilizar el modelo de función de transferencia,
también llamado de regresión dinámica o de regresión de series temporales. En la sección 9.5
veremos cómo se puede comprobar la hipótesis de que las series xjt no dependen de la yt .
El modelo es
yt = f1 (B)x1t + · · · + fr (B)xrt + εt , (169)
donde se supone que las series xjt , j ∈ {1, · · · , r} son independientes entre sı́ y que cada una
de ellas es independiente del ruido blanco εt . Cada uno de los r filtros fj (B) se supone que
es un polinomio causal infinito, es decir,
En la práctica, para evitar tener que trabajar con un número infinito de parámetros de los
filtros, se suele suponer que cada filtro (170) se puede expresar en forma racional, como
cociente de polinomios finitos, de manera que el modelo (169) queda
ω1 (B)B b1 ωr (B)B br
yt = x1t + · · · + xrt + εt , (171)
δ1 (B) δr (B)
donde, para cada j ∈ {1, · · · , r}, ωj (B) = ωj0 + ωj1 B + · · · + ωjaj B aj , δ( B) = 1 + δj1 B +
· · · + δcj B cj (polinomio estable), y bj ≥ 0 es el retardo con el que actúa xjt sobre yt .
94
(si no lo fueran habrı́a que diferenciar cada serie un cierto número de veces para que lo
fueran). Con una sola serie explicativa (169) y (171) se reducen a
ω(B)B b
yt = f (B)xt + εt = f0 xt + f1 xt−1 + f2 xt−2 + · · · + εt = xt + εt . (172)
δ(B)
Sea γxy (k) = Ext yt+k la covarianza entre xt e yt+k . Se cumple que γxy (k) = γyx (−k), para
todo retardo k.
Si escribimos (172) en t + k y multiplicamos la ecuación resultante por xt queda
expresión que relaciona los pesos del filtro fj con las autocovarianzas de xt y con las cova-
rianzas cruzadas γxy .
La observación que lleva al método del pre-blanqueo es ver que, si xt fuera ruido blanco,
(174) se simplificarı́a a
γxy (k) = fk γx (0), (175)
con lo cual una estimación natural de los pesos del filtro serı́a
γxy (k) σx σy ρxy (k) σy ρxy (k)
fˆk = = 2
= , (176)
γx (0) σx σx
a(B) a(B)
zt = yt = f (B)ut + εt . (177)
c(B) c(B)
Es decir, tenemos otro modelo de función de transferencia entre una nueva serie zt , resultado
de filtrar yt y ut , pero como ut es ruido blanco, y está incorrelado con a(B) ε (por estar xt
c(B) t
incorrelada con εt ), podemos usar (176) y estimar los pesos en la forma
σz
fˆk = ρuz (k). (178)
σu
Este resultado justifica el método de pre-blanqueo, cuyos pasos son
3. Calcular las autocorrelaciones cruzadas entre ut y zt , a las que llamaremos ρ̂uz (k).
95
4. Estimar fˆk = σ̂σ̂uz ρ̂k . A los fˆj se les denomina pesos de la función de transferencia o
pesos de respuesta a impulso para la serie xt .
5. Despreciar las ρ̂k que no sean significativas (su desviación tı́pica es (T − k)1/2 )
6. Con los fˆk obtenidos que tengan autocorrelaciones ρ̂k significativas, identificar los órde-
b
nes a, b y c del filtro ω(B)B
δ(B)
comparándo estos fˆk con los que vienen en algunos libros
para filtros de órdenes bajos.
ˆ
9. Estimar un modelo para este ruido, d(B)ε̂ t = n̂(B)ψt .
b
10. Tenemos el modelo tentativo yt = ω̂(B)B
δ̂(B)
xt + n̂(B)
ˆ
d(B)
ψt . Quitando denominadores converti-
mos esto en un modelo ARIMA que podemos reestimar, obteniendo la estimación final de
ω(B), δ(B), n(B), d(B) y σψ (al quitar denominadores, aparecen nuevos parámetros,
a partir de ellos estimamos los parámetros originales).
1. Como δ(B) es un polinomio estable, aproximamos (172) por el modelo yt = (f0 +f1 B +
· · · + fk B k )xt + εt , para un cierto k grande y estimamos esta aproximación por mı́nimos
cuadrados ordinarios.
En realidad, esta estimación no es eficiente, pues εt no será en general, ruido blanco
(por muchos motivos, el más importante es que en el modelo (172) casi siempre nos
faltarán algunos regresores adicionales a xt ). Por ese motivo, es preferible utilizar los
modelos
yt = (f0 + f1 B + · · · + fk B k )xt + 1
ψ,
1+φ1 B t
(179a)
yt = (f0 + f1 B + · · · + fk B k )xt + 1
ψ,
(1+φ1 B)(1+Φ1 B s ) t
(179b)
96
para los casos no estacional y estacional, respectivamente, en los que permitimos au-
tocorrelación en los εt sin aumentar mucho la complejidad del modelo.
2. Contrastamos la significatividad de los fˆj (es sencillo hacerlo, son parámetros de re-
gresión) y eliminamos los que no sean significativos.
4. Ahora nos encontramos en una situación análoga a la que tenı́amos después del paso
5 en el método de pre-blanqueo. Para identificar los grados a, b y c utilizaremos el
método corner (Liu (2009), sección 5.12).
b
5. Finalmente, reestimamos el modelo identificado yt = ω(B)B
δ(B)
xt + n(B) ψ , donde pone-
d(B) t
ˆ
mos n(B) en lugar de n̂(B) y d(B) en lugar de d(B) para indicar que no usamos los
parámetros estimados, sino que solo conservamos la información de los grados de estos
dos polinomios y reestimamos sus parámetros junto con los demás parámetros.
b
Dos puntos clave a resaltar. El primero es la sustitución del filtro ω(B)B
δ(B)
por su aproxima-
Pk j
ción autorregresiva j=0 fj B , la cual permite estimar los pesos fj de una forma sencilla y
extender el método al caso de varios regresores xt . El segundo es la utilización del método
b
corner, que automatiza en gran medida la identificación de los órdenes del filtro ω(B)B
δ(B)
en la
última etapa y también permite identificar los filtros de varios regresores simultáneamente.
1. Se estima el modelo
θ(B)
yt = (f0 + f1 B + · · · + fk B k )xt + ψt , (180)
φ(B)
θ(B)
donde ψ
φ(B) t
es un modelo ARIM A(p, d, q) × (P, D, Q)s . La identificación del mode-
lo ARIMA se hace por modelización automática. Llamaremos fˆj a los parámetros de
regresión estimados.
97
2. Se contrasta la significatividad de los fˆj . Si, después de este proceso, las b primeros no
resultan ser significativos, este b se toma como el retardo de la función de transferencia.
3. Se reestima el modelo (180), pero sin los b primeros parámetros que no resultaron
significattivos. Sean f˙j los parámetros estimados en este paso.
4. Para todas las posibles combinaciones de valores pequeños a y c de grados de los
polinomios ω(B) y δ(B) se estiman los coeficientes de estos polinomios por el método
de Shanks (1967) (que se detalla más abajo) y se eligen los a y c óptimos usando el
criterio que también se detalla más abajo.
5. Con los b, a y c identificados en los pasos 2 y 4 y con los órdenes (p, d, q, P, D, Q) del
modelo ARIMA identificado en los pasos 1 y 3, se reestiman, por máxima verosimilitud,
todos los parámetros del modelo
ω0 + ω1 B + · + ωa B a b θ(B)
yt = c
B xt + ψt . (181)
1 + δ1 B + · · · + δc B φ(B)
ω0 + ω1 B + · · · + ωd B d ≈ (1 + δ1 B + · · · + δd B d )(e0 + e1 B + · · · + er B r ). (183)
En primer lugar, en (183) se estima δ(B) igualando en sus términos izquierdo y derecho
los coeficientes de las potencias B d+1 , · · · , B k−b . Esto se hace porque desde B d+1 las ecua-
ciones obtenidas no dependen de los ωj . Estas ecuaciones son (pueden variar ligeramente
dependiendo de que a sea menor, igual o mayor que c)
0 = δd e1 + δd−1 e2 + · · · + δ1 ed + ed+1 ,
98
En (185) hay d incógnitas (pueden ser menos si c > a) y k−b−d−1 ecuaciones. Se supone
que k − b − d − 1 > d, es decir, que k > b + 2d + 1 para que el sistema esté sobredeterminado
y resolverlo en el sentido de los mı́nimos cuadrados. Esta restricción no es importante en la
práctica, por ejeplo, si b = 2 y d = 3, será k > 9, lo que no supone un problema si las series
temporales son de longitudes como las que se suelen manejar en la práctica.
Una vez obtenido δ(B), se calculan, por división larga, los k − b − a primeros coeficientes
ν1 , · · · , νr−d en la expansión
1
= 1 + ν1 B + ν2 B 2 + · · · (186)
1 + δ̂1 B + · · · + δ̂c Bc
y (182) se transforma en
De nuevo, se crea un sistema de ecuaciones, esta vez igualando los coeficientes de todas las
potencias B 0 , B 1 , · · · , B k−b , que está sobredeterminado si k −b+1 > a, o sea, si k > a+b−1,
lo cual está garantizado por la condición anterior (k > b + 2d + 1). El sistema se resuelve en
el sentido de los mı́nimos cuadrados y ası́ se obtiene ω(B).
El criterio para elegir entre los distintos a y b puede ser un criterio que penalice el
número de parámetros, como el AIC o el BIC. En concreto, SSMMATLAB minimiza, para todos
los posibles a y c tales que (por defecto) 0 ≤ d ≤ 2, una función del tipo
donde C(k) es unaPfunción de penalización (SSMMATLAB usa la asociada al criterio AIC co-
rregido) y σ 2 = k1 (f˙i − f˘i )2 y los f˘i son los que se obtienen con los ωi y δi estimados por
mı́nimos cuadrados según se ha explicado.
Una aplicación importante de las funciones de transferencia consiste en mejorar las pre-
dicciones de una serie económica utilizando un indicador adelantado. En la sección 11.5 de
Box et al. (1994) se proporcionan más detalles a este respecto.
donde Φ(B), Θ(B) y sus submatrices son todas matrices polinomiales en el operador B. Si
el modelo (188) se expresa en la forma
Φ11 (B) Φ12 (B) yt Θ11 (B) Θ12 (B) Σ11 0
= ε , cov(εt ) = (189)
0 Φ22 (B) xt 0 Θ22 (B) t 0 Σ22
99
se dice que el proceso es triangular. Es decir, estamos suponiendo que las matrices polino-
miales Φ(B) y Θ(B) son triangulares inferiores por bloques y que la matriz de covarianzas
de las innovaciones es diagonal por bloques.
Una forma sencilla de contrastar la triangularidad es hacer un análisis conjunto de todas
las series, yt y xjt , j ∈ {1, · · · , r} mediante un modelo VAR de orden suficientemente grande,
de la forma
Φ11 (B) Φ12 (B) yt Σ11 Σ12
= εt , cov(εt ) = . (190)
Φ21 (B) Φ22 (B) xt Σ21 Σ22
Si los coeficientes de Φ21 (B) y los de Σ12 = Σ21 no son significativos, entonces la hipótesis
de triangularidad está justificada. La ventaja de hacerlo ası́ es que un modelo VAR es más
sencillo de estimar que un modelo VARMA.
El motivo de exigir que la matriz de covarianzas de las innovaciones sea diagonal por
bloques es que, de no serlo, habrı́a correlación instantánea entre los dos grupos de series yt
y xt y esta correlación instantánea puede indicar tanto que yt dependa de xt , como que xt
dependa de yt o también que cada una depende de la otra. Esto se debe a la relación entre
las formas estructural y reducida de un modelo econométrico. Para simplificar la notación,
veamos un ejemplo de un proceso VAR(1) en dos variables, el caso de un VARMA(p,q) general
en más variables
se trata de
forma
análoga.
2
yt 1 a c d ε1t σ1 0
Sean zt = , A0 = , A1 = εt = , cov(εt ) = Σ = y la
xt b 1 e f ε2t 0 σ22
forma estructural A0 zt + A1 zt−1 = εt , es decir,
1 a yt c d yt−1 ε
+ = 1t (191)
b 1 xt e f xt−1 ε2t
100
9.6. Análisis teórico del modelo de función de transferencia
Sean x2t , · · · , xrt los r − 1 inputs, que se suponen independientes entre sı́. También se
supone que el output yt no influye en ellos (triangularidad e incorrelación de los errores).
Entonces, podemos escribir el modelo de función de transferencia en la forma
φ11 (B) φ12 (B) · · · φ1r (B) yt θ11 (B) θ12 (B) · · · θ1r (B) εt
0 φ22 (B) · · · 0 x2t 0
θ22 (B) · · · 0 u2t
··· = ,
··· ··· · · · · · · · · · ··· ··· · · · · · ·
0 0 · · · φrr (B) xrt 0 0 · · · θrr (B) urt
2 (194a)
εt σε 0 ··· 0
2
u2t 0 σ2u ··· 0
· · · · · · · · · · · · · · · ,
cov = (194b)
2
urt 0 0 · · · σru
Es decir, tenemos un modelo VARMA conjunto para yt y los xj,t . Este modelo está restringido
a ser triangular superior y a que los errores estén incorrelados entre sı́. También vemos
que el modelo de cada input es univariante, si φj , φjj , θj , θjj , el modelo de xjt es
φj (B)xjt = θj (B)ujt . Suponiendo que estos modelos univariantes sean invertibles, será
φ1 (B)yt + φ12 (B)x2t + · · · + φ1r (B)xrt = θ1 (B)εt + θ12 (B)u2t + · · · + θ1r (B)urt . (196)
es decir, si hemos estimado los modelos de los inputs φ̂j (B)xjt = θ̂j (B)ujt , j ∈ {2, · · · , r} y
hemos estimado la función de transferencia según (180) en la forma
k2 kr
X X θ̂1 (B)
yt = fˆ2k x2,t−k + · · · + fˆrk xr,t−k + εt , (199)
k=1 k=1 φ̂1 (B)
también tenemos por (198) una estimación del denominador de los filtros de esa función
de transferencia, que es φ̂1 (B)θ̂j (B). Por poner un ejemplo, si yt tiene estacionalidad y hay
un solo input x2t que no la tiene, es muy probable que al ajustar (199), obtengamos un
φ̂1 (B) estacional, indicando que el denominador del filtro, que es φ̂1 (B)θ̂j (B), tiene que ser
estacional.
Llegando a este punto, varias estrategias son posibles, algunas de ellas son:
101
1. Si solo nos interesa la predicción de yt , (199) puede ser válido y no serı́a necesario
hallar los numeradores y denominadores de los filtros. Quizás tan solo eliminar (uno a
uno) los parámetros no significativos de (199), tanto los fˆjk como los de θ̂1 (B) y φ̂1 (B),
para ası́ mejorar las estimaciones de los demás parámetros y las predicciones.
2. Estimar los numeradores de los filtros nj (B) por el método de Shanks en la forma
nj (B)
fˆj (B) = , (200)
φ̂1 (B)θ̂j (B)
es decir, de (198) usar solo los denominadores. En este caso hay varias opciones, por
ejemplo, como, por (198) el grado de nj (B) es mayor o igual que los grados de φ̂j (B)
y de θ̂j (B), se probarı́an solo algunos grados de nj (B) que cumplieran esta restricción.
3. Estimar los numeradores y denominadores de los filtros nj (B) y dj (B) por el método
de Shanks en la forma
nj (B)
fˆj (B) = , (201)
dj (B)
conservando tan solo la información del grado de los denominadores φ̂1 (B)θ̂j (B) y la
restricción del grado de los numeradores del punto anterior.
4. Parecido al punto anterior, pero especificando numeradores y denominadores multipli-
cativos, para capturar mejor la estacionalidad con pocos parámetros, es decir,
n1j (B)n2j (B s )
fˆj (B) = . (202)
d1j (B)d2j (B s )
102
marginal de yt es el que utiliza tan solo información de las autocovarianzas de yt , es decir,
dado (194a), obtendrı́amos las autocovarianzas de yt y, con ellas, obtendrı́amos el modelo
marginal de yt . No hay una fórmula sencilla para escribir el modelo marginal a partir de los
elementos del modelo conjunto. Si llamamos
σa2 (1 + θ2 ) = 1,29,
σa2 θ = −0,2.
103
con solución aproximada σa2 = 1,2582 y θ = −0,15896.
El error de predicción de la función de transferencia será el elemento (1, 1) de (15), es
decir eT (k), que vale 1 para k = 1 y 1,29 para k ≥ 2, mientras que el error de predicción
del modelo marginal vale, por (14) eT (1) = 1,2582 y eT (k) = 1,29 para k ≥ 2 En este caso
vemos que hay ganancia de precisión en la predicción inmediata posterior (k = 1) usando la
función de transferencia, pero no para k ≥ 2.
Como ejercicio, se pide analizar el caso en que el modelo conjunto sea
1−B 0 yt 1 −0,5B εt
= , Σ = I2 .
0 1−B xt 0 1 ut
Solución
Como el modelo tiene la parte autorregresiva en forma diagonal, para hallar el modelo
marginal de yt tan solo hay que hacer una factorización de covarianza a la parte de medias
móviles.
El modelo marginal con dos errores es (1 − B)yt = εt − 0,5ut−1 . La media móvil tiene
varianza 5/4 y autocovarianzas nulas, luego la factorización de covarianza es trivial y el
modelo marginal final es (1 − B)yt = at , V ar(at ) = 5/4.
Como (1 − B)−1 = 1 + B + B 2 + · · · , los pesos del modelo marginal son ψj = 1 ,
j ∈ {0, 1, 2, · · · }.
Los pesos Ψj del modelo conjunto son las matrices de coeficientes de cada potencia de
B en la matriz polinomial Ψ(B) = Θ−1 (B)Θ(B), es decir,
−1
1−B 0 1 −0,5B 1 + B + B2 + · · · −0,5(B + B 2 + B 3 + · · · )
= ,
0 1−B 0 1 0 1 + B + B2 + · · ·
(206)
de donde
1 −0,5
Ψ0 = I2 , Ψj = , j ∈ {1, 2, · · · }. (207)
0 1
El error de predicción del modelo marginal es, por (14), eT (k) = 5k
4
, mientras que el de la
función de transferencia es, por (15) (tomando sus elementos (1, 1)), eT (k) = 5k−1
4
, que es
algo menor.
104
Esta otra forma es la forma de espacio de estado. En ella, un modelo de series temporales
se expresa mediante un proceso de Markov ampliado (de dimensión en general superior a
uno), pero, en el cual, por la propiedad de Markov, el proceso, en el presente, solo depende
del propio proceso en el instante de tiempo anterior. Las dos principales ventajas son la
flexibilidad de la forma de espacio de estado, que se puede adaptar a muchas variaciones
de los modelos y el hecho de que existen algoritmos, como el célebre filtro de Kalman, que
permiten realizar cálculos exactos en forma muy eficiente con este tipo de procesos.
En este curso daremos una breve introducción a la forma de espacio de estado, poniendo
énfasis en los aspectos que pueden tener más relevancia al trabajar con series temporales
como las utilizadas en estadı́sticas oficiales y, en particular, al hacer ajuste estacional.
Las referencias de esta sección son Harvey (1989), Gómez (2016), Commandeur and
Koopman, Durbin and Koopman (2012) y Casals and Trindade (2016).
La forma de espacio de estado lineal en tiempo discreto se puede escribir usando varias
expresiones alternativas, que son unas equivalentes a otras. Sin embargo, algunas de ellas
son más cómodas que otras, tanto para obtener desarrollos teóricos, como para hacer los
cálculos numéricos.
Nosotros partiremos de una expresión bastante general de la forma de espacio de estado,
que, además, evita algunos de los problemas que aparecen al usar otras expresiones. Si yt es
un proceso estacionario observado de dimensión g, la expresión es
yt = Zt αt + dt + St εt (208a)
αt+1 = Tt αt + ct + Rt ηt (208b)
α0 a0 Σ0 0 0
ηt ∼ N 0 0 Qt Gt (208c)
εt 0 0 G0t Ht
donde la primera ecuación (ecuación de medición) nos dice como se relaciona el proceso
observado yt con el estado del sistema αt , que es un proceso no observado de dimensión
r, mientras que la segunda ecuación (ecuación de transición) nos dice cómo evoluciona el
estado del sistema. La última ecuación nos dice que todo sigue una distribución normal
multivariante. En ella α0 es el estado inicial del sistema y Σ0 su matriz de covarianzas
inicial. Los procesos εt y ηt son ruidos blancos gausianos de dimensiones respectivas h y l.
Todos los demás elementos tienen las dimensiones que hacen que las operaciones reflejadas
en el modelo tengan sentido.
Las ecuaciones (208a) y (208b), cuando las matrices Zt , dt , St , Tt , ct y Rt son constantes,
se pueden escribir en la forma
yt = Zαt + d + Sεt (209a)
αt+1 = T αt + c + Rηt (209b)
Veamos como ejemplo una manera de escribir un proceso ARMA en forma de espacio de
estado. De entre varias posibilidades, escribiremos la llamada forma canónica observable, o
forma de Akaike. Sea el proceso ARMA(p,q) estacionario dado por el modelo φ(B)yt = θ(B)εt ,
con εt ruido blanco gausiano de varianza σ 2 . Llamando r , máx(p, q), la forma de Akaike es
yt = 1 0 · · · 0 1×r αt + εt (210a)
105
0 1 0 ··· 0
ψ1
0 0 1 ···
0
ψ2
αt+1 = .. .. .. ..
···
αt + ηt (210b)
. . . .
ψr−1
0 0 0 ··· 1
−φ∗r −φ∗r−1 −φ∗r−2 · · · −φ∗1 r×r ψr r×1
α0 a0 Σ0 0 0
η t ∼ N 0 0 σ 2 σ 2 (210c)
εt 0 0 σ2 σ2
donde εt = ηt , ψ(B) ,(θ(B)/φ(B) son los pesos de la representación del proceso como media
φj si j ≤ p,
móvil infinita y φ∗j =
0 si j > p.
Si el proceso es estacionario αt son las predicciones del proceso para los instantes t +
1, · · · , t + r. Si no es estacionario, lo mismo es cierto, suponiendo que las condiciones iniciales
estén bien especificadas (no sirven las condiciones iniciales (208c) para este caso).
Por ejemplo, para el ARMA(1,1) dado por (1 + φB)yt = (1 + θB)εt , es r = 1 y queda
yt = αt + εt (211a)
106
Por ejemplo,
para un proceso ARIMA(1,1,1), es Z = S = A = B = 1 , T = −φ ,
R = θ − φ y queda
zt = 1 1 αt + εt (214a)
−φ 0 θ−φ
αt+1 = αt + εt , (214b)
1 1 1
Los modelos estructurales se expresan habitualmente en forma de espacio de estado. Un
modelo básico, que expresa la serie como suma de tendencia µt , componente estacional γt y
componete irregular εt serı́a de la forma
yt = µt + γt + εt , (215)
donde cada componente sigue, a su vez, algun modelo, por ejemplo, para el caso de series
trimestrales,
µt = µt−1 + νt + ψt , (216a)
νt = νt−1 + ξt , (216b)
γt + γt−1 + γt−2 + γt−3 = ωt (216c)
y εt puede ser ruido blanco. νt se interpreta como la pendiente de la tendencia.
La forma de espacio de estado de este modelo serı́a, tomando como estado αt = (µt , γt )T ,
εt
ψt
yt = 1 0 αt + 1 0 0 0
ξt (217a)
ωt
1 1 0 0 0 0 1 0 0
0 1 0 0 0 0 0 1 0 εt
αt + 0 0 0 1 ψt ,
αt+1 = 0 0 −1 −1 −1 (217b)
0 0 0 0 ξt
0 0 1 0 0
ωt
0 0 0 1 0 0 0 0 0
donde los cuatro ruidos blancos que aparecen suponemos que stán incorrelados entre sı́.
Hay otras posibles especificaciones para la tendencia, una es, simplemente, suponer que
νt = 0 en (216a) y, por tanto, quitar (216b). Otra la veremos más adelante en (238b).
La componete estacional también se puede definir de otras formas, por ejemplo, utilizan-
do sinusoides (un senos y un coseno) con frecuencias dadas por las frecuencias de Fourier
de la estacionalidad que estemos considerando. Por ejemplo, para observaciones mensuales
tenemos frecuencias de Fourier {π/6, · · · , 5π/6, π} y, para observaciones trimestrales, las
frecuencias de Fourier son {π/2, π}.
También se puede, a veces, incluir el ciclo ct explı́citamente en el modelo y separado de
la tendencia. Es decir, serı́a
yt = µt + ct + γt + εt , (218)
donde el ciclo puede seguir un modelo con sinusoides semejantes a las que mencionábamos
para la componete estacional, pero solo para una cierta frecuencia λc asociada a ese ciclo. La
frecuencia del ciclo será baja, menor que la primera frecuiuencia estacional, que es π/6 en el
107
caso mensual y π/2 en ek caso trimestral, pues se considera que el ciclo económico tiene un
perı́odo mayor que un año.
El modelo del ciclo, en forma de espacio de estado, serı́a
ut δ1,t
ct = 1 0 + 0 0 (219a)
vt δ2,t
ut ρ cos(λc ) ρ sen(λc ) ut 1 0 δ1,t
= + , (219b)
vt −ρ sen(λc ) ρ cos(λc ) vt 0 1 δ2,t
donde ρ es un parámetro de amortiguamento (si tiene un valor menor de 1) o de estabilidad
(si su valor es 1) del ciclo.
Como ejercicio, se puede intentar ver que la forma reducida del ciclo es un proceso
ARMA(2,1), es decir, pasar (219) a forma ARMA (eliminando el estado para obtener la parte
autorregresiva y resolviendo un problema de factorización de covarianza para obtener la
parte de medias móviles).
La ventaja de la forma de espacio de estado es que se puede evaluar la verosimilitud exacta
del modelo que sigue yt , obtener los valores filtrados del estado αt (que son αt/t , E[αt /Y1:t ]
y αt/t−1 , E[αt /Y1:t−1 ]), ası́ como estimar valores perdidos, todo ello recursivamente, sin
más que utilizar el conocido filtro de Kalman, cuyas ecuaciones, para el caso de que yt sea
estacionario son, definiendo α1/0 = α0 y Σ1/0 = Σ0 ,
Todo lo anterior se puede extender al caso de que yt sea un proceso no estacionario, que
es el caso que a nosotros nos suele ocupar.
Además, utilizando un filtro en dos pasadas (una desde t = 1 hasta t = T y otra desde
t = T hasta t = 1) se pueden obtener, también con bajo coste computacional, los valores
suavizados αt/T , E[αt /Y1:T ], donde T está fijo y t varı́a desde 1 a T , esto es, obtener la
mejor estimación posible del estado en cada instante de tiempo hasta T basada en nuestras
observaciones hasta el instante T , los cuales son fundamentales en múltiples aplicaciones,
entre ellas en ajuste estacional, benchmarking o desagregación temporal. Es por eso que
108
todos los programas de ordenador modernos que trabajan con modelos de series temporales
utilizan internamente la forma de espacio de estado para hacer los cálculos.
La extensión del filtro de Kalman al caso no estacionario se realiza aumentando el filtro,
esto quiere decir que se define un estado de dimensión mayor que k del cual αt es una parte
y se modifican las ecuaciones del filtro para que tengan en cuenta ese estado ampliado. En
pocas palabras, en el caso estacionario, se puede suponer que el proceso observado yt procede
del pasado remoto y las condiciones iniciales que dimos para el estado α0 son, simplemente,
las de la distribución estacionaria del estado, que es sencilla de calcular en cada aplicación.
En cambio, si el proceso yt no es estacionario, ya no se puede suponer que el proceso procede
del pasado remoto, pues el proceso tiene una tendencia. Entonces hay que suponer que el
proceso tiene un instante inicial y el estado asociado al valor del proceso en ese instante
inicial es desconocido. El filtro aumentado permite, pasados unos pocos instantes de tiempo,
estimar en una forma cómoda ese estado inicial desconocido y, a partir de ese punto, seguir
iterando con el filtro sin aumentar del caso estacionario.
109
En el caso habitual de trabajar con series que siguen modelos lineales, la forma de espa-
cio de estado proporciona un marco adecuado para tratar el problema de la desagregación
temporal.
La notación que utilizaremos emplea el subı́ndice t en alta frecuencia como en yt y el
subı́ndice u y un punto encima en baja frecuencia, como en ẏu . Cuando se expresan los
modelos en forma matricial los vectores son inicialmente vectores columna, pero pueden
resultar ser vectores fila tras hacer algunas operaciones matriciales.
Existen varios modelos clásicos de desagregación temporal. Entre ellos citaremos los de
Chow-Lin, Litterman o Fernández. Estos tres modelos se expresan en las formas escalar y
matricial respectivas
yt = βzt + αt , (224a)
y = βz + α, (224b)
donde
110
Este modelo en baja frecuencia se puede estimar por GLS (mı́nimos cuadrados generalizamos)
si calculamos Cov(α), pues E(α̇) = M E(α) = 0 y V , Cov(α̇) = M Cov(α)M T . Por ejemplo,
en el caso de Chow-Lin, Cov(α) se deduce de la expresión para las autocovarianzas de un
σ 2 φk
proceso AR(1), que es γk = 1−φ 2 , es decir, es
φ2 · · · φ4k−1
1 φ
φ 1 φ · · · φ4k−2
σ2 φ2
4k−2
V , Cov(α) = φ 1 · · · φ (228)
1 − φ2
···
··· ··· ··· ···
φ4k−1 φ4k−2 φ4k−3 · · · 1
Suponiendo que hayamos estimado en una primera etapa φ mediante φ̂ y por tanto V me-
diante V̂ , la estimación por GLS de (227) es, en una segunda etapa,
A continuación hay que proyectar en alta frecuencia para estimar los yt , esto se hace usando
la expresión
ŷ = z β̂ + V̂ M T (M V̂ M T )−1 (ẏ − ż β̂) (230)
El enfoque de dos etapas descrito se puede mejorar, estimando simultáneamente φ y β
mediante máxima verosimilitud, por ejemplo, usando el filtro de Kalman aplicado a la forma
de espacio de estado del modelo. De hecho, ası́ es como los programas de ordenador modernos
suelen estimar el modelo.
En los casos de Litterman y Fernández se puede diferenciar la ecuación (224), suponiendo
que yt − βzt no sea un proceso estacionario, es decir, que no haya cointegración entre ambas
series, al menos para la combinación lineal yt − βzt , y proceder con las series diferenciadas
en forma análoga a lo ya expuesto para el caso de Chow-Lin. En el caso del métoodo de
Fernández, como φ = 0, no necesitamos la primera etapa del proceso descrito.
En los casos de Litterman y Fernández también serı́a posible calcular Cov(α) y trabajar
con (224) directamente, sin diferenciar, pero es más complicado, debido a que αt no es un
proceso estacionario. En estos casos, se podrı́a, por ejemplo, calcular Cov(α) usando el filtro
de Kalman, pero entonces es más sencillo tratar todo el modelo en forma de espacio de estado
desde el principio, que es lo que suelen hacer los programas de ordenador.
En general, al intentar realizar desagregación temporal, la falta de observabilidad del
modelo de espacio de estado resultante puede ser un problema. Con los modelos clásicos,
como los de Chow-Lin, Litterman o Fernández no se presenta este problema.
Como ejemplo, pondremos el modelo de Chow-Lin que desagrega mensualmente una serie
trimestral usando un indicador xt mensual, que suponemos fuertemente exógeno, en forma
de espacio de estado, de tal manera que comprobemos que no se pierde la observabilidad.
El modelo de alta frecuencia mensual se puede expresar en la forma
111
de medición en los instantes t, t + 1 y t + 2, a poder expresar el modelo de alta frecuencia
en intervalos de tres instantes de tiempo, en la forma,
yt 1 xt 0 0 0 εt
yt+1 = φ αt + xt+1 β + σ 1 0 0 εt+1 (232a)
yt+2 φ2 xt+2 φ 1 0 εt+2
εt
αt+3 = φ3 αt + σ φ2 φ 1 εt+1
(232b)
εt+2
T
Introducimos un nuevo tiempo τ que recorre los trimestres. Si llamamos zτ = zt , zt+1 , zt+2
a los tres valores apilados de una variable o serie zt cualquiera en los tres instantes de tiempo
que forman el trimestre τ , el modelo anterior de alta frecuencia apilado se escribe
1 0 0 0
yτ = φ ατ + xτ β + σ 1 0 0 ετ (233a)
2
φ φ 1 0
ατ +1 = φ3 ατ + σ φ2 φ 1 ετ
(233b)
A continuación, dependiendo de lo que observemos trimestalmente, definimos una matriz D
de agregación temporal
adecuada, por ejemplo, si observamos la suma trimestral de los xt ,
será D = 1 1 1 , si observamos la media trimestral de los xt , D = 1/3 1/3 1/3 , si
observamos el último mes de cada trimestre, D = 0 0 1 , etc.
Premultiplicando la ecuación de medición anterior
por D obtenemos ya el modelo de baja
frecuencia que, para el caso D = 1/3 1/3 1/3 , resulta
1+φ+φ2 σ
ȳτ = 3
αt + x̄τ β + 1 + φ 1 0 ετ
3
(234a)
= φ3 ατ + σ φ2 φ 1 ετ
ατ +1 (234b)
Veamos que este modelo es observable.
En efecto, la matriz de observabilidad será O =
1+φ+φ2 3 1+φ+φ2 6 1+φ+φ2 , que tiene rango 1, pues la ecuación φ2 + φ + 1 = 0 no tiene
3
φ 3
φ 3
soluciones reales.
El modelo en baja frecuencia lo podemos escribir en forma estándar simplemente añadien-
do el parámetro de regresión al estado y la ecuación (trivial) que rige su dinámica a la
ecuación de transición, es decir
α
1+φ+φ2 τ
ȳτ = x̄ τ + σ 1 + φ 1 0 ετ , (235a)
3 βτ
3 2
ατ +1 φ 0 ατ φ φ 1
= +σ ε , (235b)
βτ +1 0 1 βτ 0 0 0 τ
y es este último modelo el que estimamos con el filtro de Kalman difuso, pues el estado tiene
la componente βτ no estacionaria.
Para modelos sencillos como el de Chow-Lin, el modelo en baja frecuencia es observable
y no hay problemas, pero hay otros modelos en que el modelo en baja frecuencia es no
112
observable y hay que transformarlo a otro submodelo de baja frecuencia en que todas las
componentes del estado sean observables y no estimar el resto, o bien establecer hipótesis
adicionales (especı́ficas para cada caso y no contenidas en el modelo original), de tal forma
que, si se cumplen esas hipótesis, el modelo en baja frecuencia ya sea observable.
Como ejercicio, se propone comprobar que en el siguiente ejemplo, el modelo en baja
frecuencia no es observable. El ejemplo consiste en una serie temporal semestral yt = µt +
st + εt , que expresamos como suma de una tendencia µt , una componente estacional st y un
ruido blanco ε∗t . con varianza σε2 , donde la tendencia sigue un paseo aleatorio µt = µt−1 + a∗t
y la componete estacional sigue el modelo st = −st−1 + b∗t , con a∗t y b∗t ruidos blancos de
varianzas respectivas σa2 y σb2 . Se supone que los tres ruidos blancos son independientes entre
sı́. Se supone que se observa anualmente el dato del segundo semestre. Se puede tomar como
T
estado el vector αt = µt st .
10.3. Benchmarking
El Benchmarking es, en cierto sentido, un proceso inverso al de desagregación tempo-
ral. Se trata de que ahora observamos una serie temporal en alta frecuencia (por ejemplo,
mensualmente) basada en una encuesta y disponemos de información de baja frecuencia re-
lacionada con esa serie y, generalmente, más fiable que la propia serie, como pueda ser, por
ejemplo, datos anuales de un censo o también de otra encuesta que mide lo mismo que se
recoge en la serie temporal, pero con menor error.
Las técnicas de Benchmarking lo que intentan hacer es utilizar la información de baja
frecuencia para mejorar las estimaciones de la serie de alta fecuencia.
De nuevo, la forma de espacio de estado nos permite tratar el problema en una forma
cómoda y muy flexible.
Por poner un ejemplo de esta flexibilidad, supongamos que tenemos una serie temporal
estacional trimestral observada zt , basada en una encuesta, que mide con error a otra serie
de interés yt , de tal forma que
zt = yt + bt νt , (236)
donde bt es la desviación tı́pica del estimador zt (esto incluye la posibilidad de que los zt sean
heteroscedásticos)y νt es un proceso ARMA(p,q) estacionario. Habitualmente, los valores de
los bt serán conocidos por los expertos en muestreo que diseñan la encuesta de la que se
obtiene zt y también estas personas conocerán los valores de p y q.
Supondremos también que todos los años, (por ejemplo al principio de cada año), reci-
bimos información procedente de otra fuente que nos da el total xt de la serie observada
durante todo el año de forma mucho más fiable que usando los datos de la serie temporal zt
(recalcamos que xt solo tiene una observación cada año). Se trata de especificar un modelo en
forma de espacio de estado que nos permita aprovechar esta información anual para mejorar
las estimaciones de la serie trimestral.
En primer lugar, la relación (de benchmarking) entre las x y las y es de la forma (solo
para los t en que se recibe xt )
yt
yt−1
xt = M
yt−2 + et ,
(237)
yt−3
113
donde M = 1 1 1 1 y et es ruido blanco. Si lo que se recibiera fuera, por ejemplo, una
estimación mejorada de yt (mejor que zt ), la relación de benchmarking serı́a más simple, del
tipo xt = yt + et . Por supuesto, se pueden acomodar facilmente distintas extensiones, como
varias relaciones de benchmarking, que pueden ser distintas para cada año, también puede
haber más de una relación algunos años, ninguna otros años, algunas relaciones pueden ser
exactas, etc.
Ahora debemos especificar un modelo para yt . Para concretar, de entre las muchas posi-
bles especificaciones, escogeremos un modelo estructural de la forma
yt = µt + γt + εt , (238a)
que contiene, por este orden, los ruidos blancos de la tendencia, de la componente estacional,
at = εt , el ruido blanco de νt y el ruido blanco del benchmark. Si, por ejemplo, νt sigue un
modelo AR(1), es
νt = φνt−1 + ct . (240)
Definamos una nueva serie temporal ψt que intercale entre los zt los xt en cada instante en
que están disponibles. Para concretar, supongamos que al principio de cada año se recibe la
x correspondiente al año anterior y que nuestras observaciones constan de k años completos,
comenzando en el primer trimestre de un año, con lo cual, la serie intercalada será
z1 , z2 , z3 , z4 , x4∗ , z5 , z6 , z7 , z8 , x8∗ , z9 , · · · , z4(k−1) , x4(k−1)∗ , z4k−3 , z4k−2 , z4k−1 , z4k , x4k∗ . (241)
En el vector de estado metemos todos los elementos necesarios para poder reconstruir las
últimas cuatro observaciones (el último año), es decir
αt = [µt , µt−1 , µt−2 , µt−3 , γt , γt−1 , γt−2 , γt−3 , εt , εt−1 , εt−2 , εt−3 , νt ], (242)
por eso hemos incluyido el error εt en el estado, para poder conservar su valor en los últimos
cuatro instantes.
La matriz de transición Tt es, simplemente, I13 cuando tenemos una de las observaciones
intercaladas x4j ∗ , j ∈ {1, · · · , k} y, en otro caso, es una matriz diagonal por bloques, con
cuatro bloques
2 −1 0 0 −1 −1 −1 0 0 0 0 0
1 0 0 0
, B1 = 1 0 0 0 , C1 = 1 0 0 0 , φ .
A1 =
0 1 0 0 0 (243)
1 0 0 0 1 0 0
0 0 1 0 0 0 1 0 0 0 1 0
114
Es decir, incluyendo el error de cada ecuación,
ψt
A1 0 0 0 A2
ξt
0 B1 0 0 B2
αt = α + at , t ∈ {1, · · · , 4k} (244a)
0 0 C1 0 t−1 C2
ct
0 0 0 φ 0 0 0 1 0
et
Zt = 1 1 1 1 1 1 1 1 1 1 1 1 0 + 0 0 0 0 1 ωt , t ∈ {4∗ , 8∗ , · · · , 4k ∗ }
(246b)
Ahora el modelo está en forma de espacio de estado y podemos estimarlo usando el filtro de
Kalman junto con un algoritmo de optimización, que nos encuentre los parámetros óptimos,
que son φ y las cinco varianzas de los ωt . Algunos puntos a destacar son:
El proceso νt puede ser más general, por ejemplo, un ARMA(p,q). Los expertos en
muestreo pueden determinar p y q dependiendo del diseño muestral de la encuesta en
que se basa yt .
115
Si los benchmarks están libres de sesgo, es posible estimar el sesgo con que zt estima
a yt , sin más que cambiar la ecuación de medición por otra del tipo
zt = h + 1 0 0 0 1 0 0 0 1 0 0 0 bt αt , t ∈ {1, · · · , 4k}, (247)
donde h es el sesgo con que zt estima a yt . En otras palabras, el modelo para zt cambia
a zt = h + yt + bt νt .
Referencias
G.E.P. Box, G.M. Jenkins, and G.C. Reinsel. Time Series Analysis: Forecasting and Control.
Prentice Hall, 1994.
Peter J. Brockwell and Richard A. Davis. Time Series: Theory and Methods. Springer-Verlag,
New York, second edition, 1991.
Garcı́a Hiernaux A. Jérez M. Sotoca S. Casals, J. and A.A. Trindade. State Space Methods
for Time Series Analysis. CRC Press, 2016.
J.J.F. Commandeur and S.J. Koopman. An Introduction to State Space Time-Series Analy-
sis. Oxford University Press.
J. Durbin and S.J. Koopman. Time Series Analysis by State Space Methods. Oxford Uni-
versity Press, second edition, 2012.
Victor Gómez. Transfer Function Model Identification. BEIO, 25(2):109–115, 2009. http:
//www.seio.es/Archivo-de-boletines/BEIO-Archivo.html.
Victor Gómez. Multivariate Time Series with Linear State Space Structure. Springer-Verlag,
2016.
E.J. Hannan and M. Deistler. The Statistical Theory of Linear Systems. John Wiley, 1988.
Andrew C. Harvey. Forecasting, Strucrural Time Series Models and the Kalman Filter.
Cambridge University Press, cambridge, 1989.
L.-M. Liu. Time Series Analysis and Forecasting. Scientific Computing Associates, second
edition, 2009.
G.C. Reinsel. Elements of Multivariate Time Series Analysis. Springer-Verlag, New York,
second edition, 1993.
J.L. Shanks. Recursion Filters for Digital Processing. Geophysics, 32:33–51, 1967.
116
R. S. Tsay and G.C. Tiao. Consistent Estimates of Autoregressive Parameters and Exten-
ded Sample Autocorrelation Function for Stationary and Non-stationary ARMA Models.
Journal of the American Statistical Association, 79:84–96, 1984.
R. S. Tsay and G.C. Tiao. Use of Canonical Analysis in Time Series Model Identification.
Biometrika, 72:299–316, 1985.
W.W.S. Wei. Time Series Analysis: Univariate and Multivariate Methods. Addison-Wesley,
1990.
117