Francisco Parra
Introducción
Asociar la evolución el PIB con la de los índices de bolsa (IBEX en España) es una practica común, en general se cree que los indices bursátiles anticipan la evolución de la economía, o que las crisis de los mercados financieros de una u otra manera acaban afectando a la evolución del PIB.
En general las crisis de las Las crisis que han vivido los mercados financieros mundiales desde 1990 son las siguientes: 1990: Invasión de Kuwait. 1992: No danés a Maastricht 1994: Crisis Mexicana 1997: Crisis asiáticas. 1998: Crisis del Long Term Capìtal Management 2000-2003: Crisis tecnológica. Ofensiva terrorista en Estados Unidos. Escándalos contables en Estados Unidos. Crisis de Argentina y Brasil. 2007: Crisis de las hipotecas sub-prime.
y en todas ellas se han producido movimientos en las tasas de crecimiento del PIB, especialmente la crisis de 2007. Sin embargo, dejando fuera los shock que originan alteraciones en todos los mercados, como ha ocurrido con la invasión de Kuwait y la Crisis de las hipotecas sub-prime, una estrecha relación entre mercados reales y financieros, requeriría de un analisis más fino, en el sentido de que los cambios periodicos en un indice de alguna u otra manera se manifiestan tambien en el mercado real.
Para observar estas relaciones entre cambios periodicos en el PIB y en los indices bursátiles, planteamos como objetivo estudiar las relaciones en el dominio de la frecuencia entre ambas medidas, circunscritas en este caso a la cotización del IBEX y en el PIB español.
El análisis dedica unos primeros apartados a exponer la metodología estadística utilizada, y un aparatado en donde se observan y cuantifican dichas relaciones.
Analisis del espectro
Nerlove (1964) y Granger (1969) fueron los primeros investigadores en aplicar el analisis espectral a las series de tiempo en economía. El uso del analisis espectral requiere un cambio en el modo de ver las series económicas, al pasaser de la perspectiva del tiempo al dominio de la frecuencia. El analisis espectral parte de la supsición de que cuanquier serie {Xt}, puede ser transformada en ciclos formados con senos u cosenos:
\[ \begin{equation} X_t=\eta+\sum_{j=1}^N[a_j\cos(2\pi\frac{ft}n)+b_j\sin(2\pi\frac{ft}n)] \end{equation} \] (1)
donde \( \eta \) es la media de la serie, \( a_j \) y \( b_j \) son su amplitud,\( f \) son las frecuencias que del conjunto de las \( n \) observaciones,\( t \) es un indice de tiempo que va de 1 a N, siendo N el numero de periodos para los cuales tenemos observaciones en el conjunto de datos, el cociente \( \frac{ft}n) \) convierte cada valor de \( t \) en escala de tiempo en proporciones de \( 2n \) y rango \( j \) desde \( 1 \) hasta \( n \) siendo \( n=\frac{N}2 \) (es decir, 0,5 ciclos por intervalo de tiempo). Las dinámica de las altas frecuencias (los valores más altos de f) corresponden a los ciclos cortos en tanto que la dinámica de la bajas frecuencias (pequeños valores de f) van a corresponder con los ciclos largos. Si nosotros hacemos que \( \frac{ft}n=w \) la ecuación (1) quedaría, asi :
\[ \begin{equation} X_t=\eta+\sum_{j=1}^N[a_j\cos(\omega_j)+b_j\sin(\omega_j)] \end{equation} \](2)
El analisis espectral puede utilizarse para identificar y cuantificar en procesos aparentemente aperiodicos, sucesiones de cicos de periodo de corto y largo plazo. Una serie dada \( {X_t} \) puede contener diversos ciclos de diferentes frecuencias y amplitudes, y esa combinación de frecuencias y amplitudes de carcter cíclico la hacer aparecer como un serie no periodica e irregular. De hecho la ecuación (2), muestra que cada observación \( t \) de una serie de tiempo, es el resultado sumar los valores en \( t \) que resultan de N ciclos de diferente longitud y amplitud, a los que habría que añadir si cabe un termino de error.
Una manera practica de pasar desde el dominio del tiempo al dominio de la frecuencia es pre-multiplicando los datos originales por una matriz ortogonal, W, sugerida por Harvey (1978), con el elemento (j,t)th :
\[ \begin{equation} w_{jt} = \left\lbrace \begin{array}{ll} \left(\frac{1}T\right) ^\frac{1}2 & \forall j=1\\ \left(\frac{2}T\right) ^\frac{1}2 \cos\left[\frac{\pi j(t-1)}T\right] & \forall j=2,4,6,..\frac{(T-2)}{(T-1)}\\ \left(\frac{2}T\right) ^\frac{1}2 \sin\left[\frac{\pi (j-1)(t-1)}T\right] & \forall j=3,5,7,..\frac{(T-2)}T\\ \left(\frac{1}T\right) ^\frac{1}2 (-1)^{t+1} & \forall j=T \end{array} \right. \end{equation} \](3)
La matriz \( W \) tiene la ventaja de ser ortogonal por lo que \( WW^T=I \).
Función gdf(a) y Función gdt (a)
La función gdf(a) transforma los datos del dominio del tiempo al dominio de la frecuencia pre-multiplicandolos por la matriz ortogonal,\( W \), sugerida por Harvey (1978) y la función gdt (a) transforma los datos del dominio de la frecuencia al dominio del tiempo.
gdf <- function(a) {
a <- matrix(a, nrow = 1)
n <- length(a)
uno <- as.numeric(1:n)
A <- matrix(rep(sqrt(1/n), n), nrow = 1)
for (i in 3:n - 1) {
if (i%%2 == 0) {
A1 <- matrix(sqrt(2/n) * cos(pi * i * (uno - 1)/n), nrow = 1)
A <- rbind(A, A1)
} else {
A2 <- matrix(sqrt(2/n) * sin(pi * (i - 1) * (uno - 1)/n), nrow = 1)
A <- rbind(A, A2)
}
}
AN <- matrix(sqrt(1/n) * (-1)^(uno + 1), nrow = 1)
A <- rbind(A, AN)
A %*% t(a)
}
gdt <- function(a) {
a <- matrix(a, nrow = 1)
n <- length(a)
uno <- as.numeric(1:n)
A <- matrix(rep(sqrt(1/n), n), nrow = 1)
for (i in 3:n - 1) {
if (i%%2 == 0) {
A1 <- matrix(sqrt(2/n) * cos(pi * i * (uno - 1)/n), nrow = 1)
A <- rbind(A, A1)
} else {
A2 <- matrix(sqrt(2/n) * sin(pi * (i - 1) * (uno - 1)/n), nrow = 1)
A <- rbind(A, A2)
}
}
AN <- matrix(sqrt(1/n) * (-1)^(uno + 1), nrow = 1)
A <- rbind(A, AN)
t(A) %*% t(a)
}
Function cdt (a)
Otiene la matriz auxiliar para operaciones con vectores en dominio de tiempo y dominio de la frecuencia, pre-multiplica un vector por la matriz ortogonal, \( W \) y por su transpuesta, Parra F. (2013)
La multiplicación de dos series armónicas de diferente frecuencia:
\[ \begin{equation} [a_j\cos (\omega_j)+b_j\sin (\omega_j)]x [a_i\cos (\omega_i)+b_i\sin (\omega_i)] \end{equation} \]
da como resultado la siguiente suma: \[ \begin{equation} \begin{array}{c} a_ja_i\cos(\omega_j)\cos(\omega_i)+a_jb_i\cos (\omega_j)\sin (\omega_i)\\ +a_ib_j\sin (\omega_j)\cos (\omega_i)b_i\sin (\omega_i)+b_jb_i\sin(\omega_j)\sin(\omega_i) \end{array} \end{equation} \]
considerando las identidades del producto de senos y cosenos, quedaría:
\[ \begin{equation} \begin{array}{c} \frac{a_ja_i+b_jb_i}{2} \cos(\omega_j- \omega_i)+\frac{b_ja_i-b_ja_j}{2}\sin(\omega_j- \omega_i)\\ +\frac{a_ja_i-b_jb_i}{2}\cos(\omega_j+ \omega_i)+\frac{b_ja_i+b_ja_i}{2}\sin(\omega_j+ \omega_i) \end{array} \end{equation} \]
La circularidad de \( \omega \) determina que la serie producto de dos series en \( t \), resulte una nueva serie cuyos coeficientes de Fourier sean una combinación lineal de los coeficientes de Fourier de las series multiplos.
Partiendo de las dos series siguientes:
\[ \begin{equation} \begin{array} {cc} y_t=\eta^y+a_0^y\cos(\omega_0)+b_0^y\sin(\omega_0)+a_1^y\cos(\omega_1)+b_1^y\sin(\omega_1)+ a_2^y\cos(\omega_2)+b_2^y\sin(\omega_2)+a_3^y\cos(\omega_3)\\ x_t=\eta^x+a_0^x\cos(\omega_0)+b_0^x\sin(\omega_0)+a_1^x\cos(\omega_1)+b_1^x\sin(\omega_1)+ a_2^x\cos(\omega_2)+b_2^x\sin(\omega_2)+a_3^x\cos(\omega_3) \end{array} \end{equation} \]
Dada una matriz \( \Theta^{\dot x\dot x} \) de tamaño 8x8 :
\[ \Theta^{\dot x\dot x} = \eta^x I_8+\frac{1}2\left( \begin{array}{cccccccc} 0& a_0^x& b_0^x & a_1^x & b_1^x & a_2^x & b_2^x& 2a_3^x \\ 2a_0^x& a_1^x& b_1^x & a_0^x+a_2^x & b_0^x+b_2^x & a_1^x+2a_3^x & b_1^x& 2a_2^x \\ 2b_0^x& b_1^x&- a_1^x & -b_0^x+b_2^x & a_0^x-a_2^x &- b_1^x &a_1^x- a_3^x &- 2b_2^x \\ 2a_1^x& a_0^x+a_2^x&- b_0^x+b_2^x & 2a_3^x &0 & a_0^x+a_2^x & b_0^x-b_2^x& 2a_1^x \\ 2b_1^x& a_0^x+b_2^x&- b_0^x-a_2^x &0& -2a_3^x & -b_0^x+b_2^x & a_0^x-a_2^x& -2b_1^x \\ 2a_2^x& a_1^x+2a_3^x&- b_1^x & a_0^x+a_2^x &-b_0^x-b_2^x & a_1^x &- b_1^x& 2a_0^x \\ 2b_2^x& b_1^x& a_1^x-2a_3^x & b_0^x-b_2^x &a_0^x-a_2^x & -b_1^x &- a_1^x& -2b_0^x \\ 2a_3^x& a_2^x& -b_2^x & a_1^x &- b_1^x & a_0^x & -b_0^x& 0 \end{array} \right) \] Se demuestra que:
\[ \dot z=\Theta^{\dot x\dot x}\dot y \]
donde \( \dot y = Wy \),\( \dot x = Wx \), y \( \dot z = Wz \).
En el dominio del tiempo:
\[ z_t= x_t y_t=W^T\dot x W^T\dot y=W^T Wx_t W^T\dot y=x_tI_nW^T\dot y \]
\[ W^T\dot z=x_tI_nW^T\dot y \]
\[ \dot z=Wx_tI_nW^T\dot y \]
Entonces:
\[ \Theta^{\dot x\dot x}=W^Tx_tI_nW \]
La matriz cuadrada \( \Theta^{\dot x\dot x} \) puede ser utilizada para obtener los resultados en el dominio de la frecuencia de diversas funciones de series de tiempo . Por ejemplo, si se desea obtener el desarrollo de los coeficientes en fourier de \( z_t=x_t^2 \), entonces:
\( \dot z= Wx_tI_nW^T\dot x \)
En consecuencia, si \( z_t=x_t^n \)
\( \dot z= Wx_t^{n-1}I_nW^T\dot x \)
Si ahora queremos obtener el desarrollo en coeficientes de fourier de \( z_t=\frac{x_t}{y_t} \), entonces:
\( \dot z= W[\frac{1}y_t]I_nW^T\dot x \)
cdf <- function(a) {
a <- matrix(a, nrow = 1)
n <- length(a)
uno <- as.numeric(1:n)
A <- matrix(rep(sqrt(1/n), n), nrow = 1)
for (i in 3:n - 1) {
if (i%%2 == 0) {
A1 <- matrix(sqrt(2/n) * cos(pi * i * (uno - 1)/n), nrow = 1)
A <- rbind(A, A1)
} else {
A2 <- matrix(sqrt(2/n) * sin(pi * (i - 1) * (uno - 1)/n), nrow = 1)
A <- rbind(A, A2)
}
}
AN <- matrix(sqrt(1/n) * (-1)^(uno + 1), nrow = 1)
A <- rbind(A, AN)
I <- diag(c(a))
B <- A %*% I
B %*% t(A)
}
Función periodograma (a)
Calcula y presenta el espectro de la serie “a”
Sea \( a \) un vector n x 1 el modelo transformado en el dominio de la frecuencia esta dado por:
\( \hat a= Wa \)
Denominando \( p_j \) el ordinal del periodograma de \( \hat a \) en la frecuencia \( \lambda_j=2\pi j/n \), y \( \hat a_j \) el j-th elemento de \( \hat a \), entonces
\[ \left\lbrace \begin{array}{ll} p_j=\hat a_{2j}^{2}+\hat a_{2j+1}^{2} & \forall j = 1,...\frac{n-1}{2}\\ p_j=\hat a_{2j}^{2}& \forall j = \frac{n}{2}-1 \end{array} \right . \]
\[ p_0=\hat a_{1}^{2} \]
Entonces el cuadrado del \( \hat a \) puede ser utilizado como un estimador consistente del periodograma de \( a \).
periodograma <- function(a) {
cf <- gdf(a)
n <- length(a)
if (n%%2 == 0) {
m1 <- c(0)
m2 <- c()
for (i in 1:n) {
if (i%%2 == 0)
m1 <- c(m1, cf[i]) else m2 <- c(m2, cf[i])
}
m2 <- c(m2, 0)
frecuencia <- seq(0:(n/2))
frecuencia <- frecuencia - 1
omega <- pi * frecuencia/(n/2)
periodos <- n/frecuencia
densidad <- (m1^2 + m2^2)/(4 * pi)
tabla <- data.frame(omega, frecuencia, periodos, densidad)
tabla$densidad[(n/2 + 1)] <- 2 * tabla$densidad[(n/2 + 1)]
data.frame(tabla[2:(n/2 + 1), ])
} else {
m1 <- c(0)
m2 <- c()
for (i in 1:(n - 1)) {
if (i%%2 == 0)
m1 <- c(m1, cf[i]) else m2 <- c(m2, cf[i])
}
m2 <- c(m2, cf[n])
frecuencia <- seq(0:((n - 1)/2))
frecuencia <- frecuencia - 1
omega <- pi * frecuencia/(n/2)
periodos <- n/frecuencia
densidad <- (m1^2 + m2^2)/(4 * pi)
tabla <- data.frame(omega, frecuencia, periodos, densidad)
data.frame(tabla[2:((n + 1)/2), ])
}
}
Función gperiodogrma (a)
Presenta gráficamente el espectro de la variabe a
gperiodograma <- function(a) {
tabla <- periodograma(a)
plot(tabla$frecuencia, tabla$densidad, main = "Espectro", ylab = "densidad",
xlab = "frecuencia", type = "l", col = "#ff0000")
}
Regresión band spectrum
Realiza la regresión band spectrum del vector de datos a con el vector de datos b para las frecuencias que figuran en el vector c.
Hannan (1963) fue quien propuso la regresión en dominio de la frecuencia (regresión band spectrum). Engle (1974), demostró que dicha regresión no alteraba los supuestos básicos de la regresión clásica, cuyos estimadores eran Estimadores Lineales Insesgados y Optimos (ELIO).
\[ \begin{equation} y=X\beta+u \end{equation} \](4)
donde \( X \) es una matriz \( n x k \) de observaciones de \( k \) variables independientes, \( \beta \) es un vecto \( k x I \) de parámetros, \( y \) es un vecto \( n x 1 \) de observaciones de la variable dependiente, y \( u \) en un vector \( n x I \) de pertubacciones de media cero y varianza constante, \( \sigma^2 \).
El modelo puese expresarse en el dominio de la frecuencia aplicando una transformación lineal a las variables dependiente e independientes,por ejemplo, premultiplicando todas las variables por la matriz ortogonal \( W \). La técnica de la “regresión band spectrum”,consiste en realizar el analisis de regresión en el dominio de la frecuencia pero omitinedo determinadas oscilaciones periodicas. Con este procedimiento pueden tratarse problemas derivados de la estacionalidad de las series o de autocorrelación en los residuos. Engle (1974) muesta que si los residuos están correlacionados serialmente y son generados por un procieso estacionario estocastico, la regresión en el dominio de la frecuencia es el estimador asintóticamente más eficiente de \( \beta \).
La transforamción de la ecuación (4) del dominio del tiempo al dominio de la frecuencia en Engle (1974), se bas en la matriz W, cuyo elemento \( (t, s) \) esta dado por:
\( w_{ts}=\frac{1}{\sqrt n} e^{i\lambda_t s} \),\( s= 0,1,...,n-1 \)
donde \( \lambda_t = 2\pi \frac{t}n \), \( t=0,1,...,n-1 \), y \( i=\sqrt{-1} \).
Premultiplicando las observaciones de (4) por W, obtenemos: \[ \begin{equation} \dot y=\dot X\beta+\dot u \end{equation} \](5)
donde \( \dot y = Wy \),\( \dot X = WX \), y \( \dot u = Wu \).
Si el vector de las perturbaciones en (4) cumple las hipoteis clásicas del modelo de regresión: \( E[u] = 0 \) y \( E[uu']=\sigma^2 I_n \). entonces el vector de perturbaciones transformado al dominio de la frecuencia, \( \dot u \), tendrá las mims propiedades. Por otro lado, dado que la matriz W es ortogonal., \( WW^{T}= I \), entonces \( W^T \) sería la transpuesta de la completa conjugada de W. De forma que las observaciones del modelo (5) acaban conteniendo el mismo tipo de información que las observaciones del modelo inicialmente planteado.
Si aplicamos MCO a (5) , dadas las propiedades de \( \dot u \), obtendríamos el mejor estimador lineal insesgando (ELIO) de \( \dot \beta \). El estimador obtenido sería de hecho identico al estimador MCO de (4).
Estimar (5) manteniendo unicamente determinadas frecuencias, puede llevarse a cabo omitiendo las observaciones correspondientes a las restantes frecuencias, si bien, dado que las variables en (5) son complejas, Engle (1974) sugiere la transformada inversa de Fourier para recomponer el modelo estimado en términos de tiempo.
Definiendo una matriz de tamaño \( A \) de tamaño n x n de ceros excepto en las posiciones de la diagonal principal correspondientes a las frecuencias que queremos incluir en la regresión y premultiplicando \( \dot y \) y \( \dot X \) por \( A \) eleminamos determindas observaciones y las reemplazamos por ceros para realizar la regresión band spectrum. Devolver al dominio del tiempo estas observaciones requiere:
\[ \begin{equation} y^* = W^{T}A\dot y = W^{T}AWy \\ x^* = W^{T}A\dot x = W^{T}AWx \end{equation} \](6)
Al regresar \( y^* \) sobre \( x^* \) obtenemos un \( \beta \) identico al estimador que obtendríamos al estimar por MCO \( \dot y \) frente a \( \dot x \).
Cuando se realiza la regresión band spectrum de esta mnera, ocurre un problema asociado a los grados de libertad de la regresión de \( y^* \) sobre \( x^* \) que asumen los programas estadisticos convencionales, \( n - k \), en vez de los grados de libertad reales que serían unicamente \( n'- k \), donde \( n' \) es el numero de frecuencias incluidas en la regresión band spectrum.
Si la regresión espectral va a ser usada para obtener un estimador asintóticamente eficiente de \( \beta \) en presencia de autocorrelación en el termino de error, la matriz \( A \) ha de ser reemplazada por otra matriz diagonal, \( V \). En dicha diagonal principal ha de incluirse el estimador de \( \int_u^{1/2}(\lambda) \), donde \( \int_u (\lambda) \) es el la transformación del termino de error obtenido en (4) al dominio de la frecuencia \( \lambda \). Puede utilizarse un programa convencional para obtener \( \beta \) haciendo una transformación análoga a (6); ver Engle and Gardner [1976]. Sin embargo, si el procedimiento va a ser iterativo, lo que podría llevar a una mejora en las propiededes de las muestra pequeñas, la transformada inversa de fourier debería emplearse en cada iteración.
La regresión con parámetros dependiente del tiempo .
Consideramos el modelo de regresión siguiente:
\[ \begin{equation} y_t=\beta_tx_t+u_t \end{equation} \](7)
donde \( x_t \) es un vector T x 1 de observaciones de las variable independiente, \( \beta_t \) es un vector de T x 1 del parametro \( \beta \) , \( y_t \) es un vector de T x 1 observaciones de la variable depenendiente, y \( u_t \) es un vector de errores distribuidos con media cero y varianza constante.
Asumiendo que las series, \( y_t \),\( x_t \),\( \beta_t \) and \( u_t \), pueden ser transformadas en el dominio de la frecuencia:
\[ y_t=\eta^y+\sum_{j=1}^N[a^y_j\cos(\omega_j)+b^y_j\sin(\omega_j) \]
\[ x_t=\eta^x+\sum_{j=1}^N[a^y_j\cos(\omega_j)+b^y_j\sin(\omega_j)] \]
\[ \beta_t=\eta^\beta+\sum_{j=1}^N[a^\beta_j\cos(\omega_j)+b^\beta_j\sin(\omega_j)] \]
Otenemos dichas series pre-multiplicando (7) por \( W \)
\[ \dot y=\dot x\dot\beta+\dot u \]
donde \( \dot y = Wy \),\( \dot x = Wx \), \( \dot \beta = W\beta \) y \( \dot u = Wu \)
El sistema (7) puede reescribirse como (ver anexo):
\[ \begin{equation} \dot y=Wx_tI_nW^T\dot \beta + WI_nW^T\dot u \end{equation} \] (8)
Si denominamos \( \dot e=WI_nW^T\dot u \), podrían buscarse los \( \dot \beta \) que minimizaran la suma cuadrática de los errores \( e_t=W^T\dot e \).
\( min \sum_{t=1}^T [W^T\dot e]^2 \) (9)
Utilizando los mínimos cuadrados ordinarios, encontramos una solución a (9), construyendo una matriz de regresores \( X \) cuya primera columna sería el vector de tamaño \( T \) \( (1,0,0,...)_T \), la segunda columna sería la primera fila de la matriz \( \Theta^{\dot x\dot x} \) y las columnas siguientes, corresponderían las filas de \( \Theta^{\dot x\dot x} \) correspondientes a las frecuencias de senos o cosenos que queremos regresar.
Los coeficietes de la solución MCO: \( \dot \beta = (x^Tx)^{-1}x^T\dot y \) serían: \( \dot \beta_0 \) el asociado a la constante, \( \dot \beta_1 \) el asociado a la pendiente, \( \dot \beta_2 ... \) los asociados a las frecuencias de senos y cosenos elegidas.
La solución mínimocuadrática del modelo de regresión simple \( y_t=\hat \beta_0+\hat \beta_1 x_t+\hat u_t \), sería \( W^T \dot\beta = W^T[(x^Tx)^{-1}x^T\dot y] \).
donde \( x \) es una matriz \( T \) x \( 2 \) cuya primera columna es el vector \( (1,0,0,...)_{T} \), la segunda columna sería la primera fila de la matriz \( \Theta^{\dot x\dot x} \), nótese que dicha columna viene a ser el vector transpuesto de coeficientes de fourier de \( x_t \) dividido entre dos y encabezado por el valor medio de \( x_t \), de manera que el producto matricial una vez desarrollado viene a ser la covarianza de \( x_t \) e \( y_t \) y la varianza de \( x_t \).
Si se trata de una regresión multiple \( y_t=\hat \beta_o+\hat \beta_1 x_t+ \hat \beta_2 z_t + \hat u_t \) la matriz \( x \) incluiría una tercera columna con la primera fila de la matriz \( \Theta^{\dot z\dot z} \).
Ejemplo: Modelo lineal general
Regresión con parametros dependientes entre el PIB y el IBEX
Partimos de los crecimientos interanuales del PIB español en indices de volumen del periodo I trimestre de 1996 a IV trimestre de 2013, y los crecimientos interanuales del IBEX trimestral
x <- t(read.csv("ibex.csv", header = FALSE, sep = ";", dec = ","))
y <- t(read.csv("pib.csv", header = FALSE, sep = ";", dec = ","))
plot(ts(t(y)), pch = 19, col = "blue")
gperiodograma(y)
plot(ts(t(x)), pch = 19, col = "red")
gperiodograma(x)
El periodograma del PIB Español muestra que la mayor parte de su varianza está explicada por las 10 frecuencias más altas, se plantea un modelo de regresión dependiente en el tiempo basado en los 30 primeros coeficientes de la transformación en el dominio de la frecuencia de la serie del IBEX, incluyendo constante y pendiente que como vemos aproxima los crecimientos interanuales del IBEX a los del PIB.
z <- c(rep(1, 72))
cy <- gdf(y)
cx <- cdf(x)
cz <- cdf(z)
c1 <- matrix(cz[1, ], nrow = 1)
c2 <- matrix(cx[1:30, ], nrow = 30)
X <- rbind(c1, c2)
B <- solve(X %*% t(X)) %*% (X %*% cy)
Y <- t(X) %*% B
fitted <- gdt(Y)
plot(ts(t(y)), pch = 19, col = "blue")
points(ts(fitted), pch = 19, col = "red")
b0 <- gdt(c(B[1, 1], rep(0, 71)))
bt <- gdt(c(B[2:31, 1], rep(0, 42)))
resultados <- cbind(b0, bt, t(y), fitted)
resultados
## V1
## [1,] 3.013 0.039529 5.6 3.91085
## [2,] 3.013 0.172348 5.6 7.35685
## [3,] 3.013 0.185690 6.7 6.01009
## [4,] 3.013 0.113866 6.2 6.65201
## [5,] 3.013 0.050065 5.7 4.91500
## [6,] 3.013 0.042317 5.4 5.21725
## [7,] 3.013 0.064218 6.5 7.41599
## [8,] 3.013 0.071866 7.9 6.38018
## [9,] 3.013 0.061766 6.4 7.21562
## [10,] 3.013 0.065256 7.2 6.81677
## [11,] 3.013 0.102793 7.5 6.02668
## [12,] 3.013 0.160692 7.1 9.14145
## [13,] 3.013 0.212161 8.3 5.45837
## [14,] 3.013 0.249680 7.8 3.53053
## [15,] 3.013 0.288976 7.1 6.00701
## [16,] 3.013 0.340176 6.8 7.83421
## [17,] 3.013 0.376716 9.7 10.90823
## [18,] 3.013 0.338799 8.6 7.05702
## [19,] 3.013 0.181479 7.8 6.02743
## [20,] 3.013 -0.067614 8.6 3.24169
## [21,] 3.013 -0.301602 8.5 7.03141
## [22,] 3.013 -0.405808 8.3 6.97569
## [23,] 3.013 -0.354899 8.2 10.69194
## [24,] 3.013 -0.239370 7.2 5.87703
## [25,] 3.013 -0.183006 6.7 5.08770
## [26,] 3.013 -0.226756 7.5 5.90849
## [27,] 3.013 -0.296953 7.0 8.76958
## [28,] 3.013 -0.288871 7.5 8.30513
## [29,] 3.013 -0.173600 7.7 7.13854
## [30,] 3.013 -0.017495 7.2 3.22797
## [31,] 3.013 0.093971 7.1 4.51758
## [32,] 3.013 0.136254 7.5 5.50766
## [33,] 3.013 0.149910 6.9 8.39763
## [34,] 3.013 0.181888 7.1 7.09167
## [35,] 3.013 0.235979 8.3 6.37994
## [36,] 3.013 0.277104 7.4 8.16770
## [37,] 3.013 0.272604 7.8 7.84083
## [38,] 3.013 0.226729 8.7 7.53017
## [39,] 3.013 0.180211 7.5 8.86616
## [40,] 3.013 0.175664 8.3 7.20649
## [41,] 3.013 0.215320 8.9 8.60866
## [42,] 3.013 0.251974 8.7 9.10438
## [43,] 3.013 0.233883 8.0 7.72647
## [44,] 3.013 0.166402 7.9 8.60469
## [45,] 3.013 0.116359 7.3 6.28911
## [46,] 3.013 0.136221 7.0 7.13527
## [47,] 3.013 0.188444 6.1 6.84078
## [48,] 3.013 0.174203 7.0 4.90993
## [49,] 3.013 0.054542 4.7 2.42874
## [50,] 3.013 -0.078339 4.4 4.09914
## [51,] 3.013 -0.086842 3.6 5.02510
## [52,] 3.013 0.049761 0.6 0.88539
## [53,] 3.013 0.190745 -2.8 -4.87211
## [54,] 3.013 0.178065 -4.5 -2.50643
## [55,] 3.013 0.012448 -4.6 2.95908
## [56,] 3.013 -0.144494 -3.1 -0.69874
## [57,] 3.013 -0.145710 -1.0 -1.69623
## [58,] 3.013 -0.006871 0.2 2.99293
## [59,] 3.013 0.135220 0.2 1.78842
## [60,] 3.013 0.183483 0.1 0.04249
## [61,] 3.013 0.162582 0.6 2.80657
## [62,] 3.013 0.147962 0.8 4.05085
## [63,] 3.013 0.162475 0.3 0.45079
## [64,] 3.013 0.174144 -1.4 0.42303
## [65,] 3.013 0.168505 -1.4 -0.97725
## [66,] 3.013 0.171204 -1.8 -3.26235
## [67,] 3.013 0.188371 -1.4 -0.52350
## [68,] 3.013 0.167173 -1.9 1.78086
## [69,] 3.013 0.056221 -1.1 2.93642
## [70,] 3.013 -0.104067 -0.9 0.84282
## [71,] 3.013 -0.192357 -0.3 -0.63222
## [72,] 3.013 -0.127334 -0.1 -0.20562
Buscando un mejor modelo regresion paso a paso
Se utiliza la función stepAIC del paquete MASS para seleccionar el mejor modelo entre los posibles considerando las frecuencias asociadas a la constante, pendiente y los 30 primeros coeficientes de fourier en la transformación del ibex en el dominio de la frecuencia. Se representa la gráfica temporal del crecimiento del PIB y la estimación en el dominio del tiempo de la ecuación seleccionada, el periodograma acumulado de los residuos del modelo y el diagrama de dispersión entre el crecimiento del PIB (Y) y el crecimiento del IBEX (X), en donde se incluye tambien el resultado de la regresión seleccionada.
x1 <- (X[1, ])
x2 <- (X[2, ])
x3 <- (X[3, ])
x4 <- (X[4, ])
x5 <- (X[5, ])
x6 <- (X[6, ])
x7 <- (X[7, ])
x8 <- (X[8, ])
x9 <- (X[9, ])
x10 <- (X[10, ])
x11 <- (X[11, ])
x12 <- (X[12, ])
x13 <- (X[13, ])
x14 <- (X[14, ])
x15 <- (X[15, ])
x16 <- (X[16, ])
x17 <- (X[17, ])
x18 <- (X[18, ])
x19 <- (X[19, ])
x20 <- (X[20, ])
x21 <- (X[21, ])
x22 <- (X[22, ])
x23 <- (X[23, ])
x24 <- (X[24, ])
x25 <- (X[25, ])
x26 <- (X[26, ])
x27 <- (X[27, ])
x28 <- (X[28, ])
x29 <- (X[29, ])
x30 <- (X[30, ])
library(MASS)
fit <- lm(cy ~ 0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 + x22 + x23 +
x24 + x25 + x26 + x27 + x28 + x29 + x30)
step <- stepAIC(fit, direction = "both")
## Start: AIC=161.2
## cy ~ 0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
## x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 +
## x22 + x23 + x24 + x25 + x26 + x27 + x28 + x29 + x30
##
## Df Sum of Sq RSS AIC
## - x17 1 0.3 294 159
## - x3 1 0.4 294 159
## - x19 1 0.5 294 159
## - x29 1 1.0 295 160
## - x23 1 1.2 295 160
## - x24 1 1.5 295 160
## - x21 1 2.1 296 160
## - x15 1 2.3 296 160
## - x9 1 2.7 296 160
## - x13 1 3.1 297 160
## - x20 1 5.3 299 160
## - x27 1 5.9 300 161
## - x30 1 6.8 301 161
## - x18 1 7.9 302 161
## <none> 294 161
## - x16 1 9.3 303 162
## - x11 1 10.1 304 162
## - x26 1 10.4 304 162
## - x28 1 12.9 307 162
## - x4 1 16.1 310 163
## - x25 1 17.1 311 163
## - x5 1 23.3 317 165
## - x8 1 27.0 321 166
## - x10 1 29.7 323 166
## - x14 1 43.4 337 169
## - x12 1 43.6 337 169
## - x6 1 52.7 346 171
## - x22 1 57.7 351 172
## - x2 1 95.6 389 180
## - x1 1 137.1 431 187
## - x7 1 165.3 459 191
##
## Step: AIC=159.3
## cy ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
## x12 + x13 + x14 + x15 + x16 + x18 + x19 + x20 + x21 + x22 +
## x23 + x24 + x25 + x26 + x27 + x28 + x29 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x19 1 0.4 294 157
## - x3 1 0.6 295 157
## - x29 1 0.9 295 158
## - x23 1 1.3 295 158
## - x24 1 1.8 296 158
## - x21 1 1.9 296 158
## - x9 1 2.4 296 158
## - x15 1 2.5 297 158
## - x13 1 2.8 297 158
## - x20 1 5.1 299 158
## - x27 1 6.2 300 159
## - x30 1 6.8 301 159
## - x18 1 7.9 302 159
## <none> 294 159
## - x16 1 9.4 303 160
## - x26 1 10.3 304 160
## - x11 1 10.8 305 160
## - x28 1 12.8 307 160
## + x17 1 0.3 294 161
## - x4 1 16.6 311 161
## - x25 1 17.0 311 161
## - x5 1 23.1 317 163
## - x8 1 27.1 321 164
## - x10 1 30.3 324 164
## - x14 1 43.1 337 167
## - x12 1 44.6 339 168
## - x6 1 52.4 346 169
## - x22 1 61.5 355 171
## - x2 1 100.7 395 178
## - x1 1 140.4 434 185
## - x7 1 167.5 461 190
##
## Step: AIC=157.4
## cy ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
## x12 + x13 + x14 + x15 + x16 + x18 + x20 + x21 + x22 + x23 +
## x24 + x25 + x26 + x27 + x28 + x29 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x3 1 0.9 295 156
## - x29 1 1.0 295 156
## - x23 1 1.9 296 156
## - x21 1 2.0 296 156
## - x15 1 2.2 297 156
## - x9 1 2.3 297 156
## - x24 1 2.7 297 156
## - x13 1 3.0 297 156
## - x20 1 5.1 299 157
## - x27 1 6.1 300 157
## - x30 1 6.4 301 157
## - x18 1 7.8 302 157
## <none> 294 157
## - x16 1 9.0 303 158
## - x26 1 10.3 305 158
## - x11 1 10.5 305 158
## - x28 1 12.5 307 158
## + x19 1 0.4 294 159
## - x4 1 16.6 311 159
## + x17 1 0.2 294 159
## - x25 1 17.3 312 160
## - x5 1 22.7 317 161
## - x8 1 30.0 324 162
## - x10 1 30.1 324 162
## - x14 1 42.8 337 165
## - x12 1 45.7 340 166
## - x6 1 54.7 349 168
## - x22 1 61.1 355 169
## - x2 1 106.3 401 178
## - x1 1 147.3 442 185
## - x7 1 179.3 474 190
##
## Step: AIC=155.6
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x15 + x16 + x18 + x20 + x21 + x22 + x23 + x24 +
## x25 + x26 + x27 + x28 + x29 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x29 1 0.9 296 154
## - x21 1 1.6 297 154
## - x23 1 1.9 297 154
## - x15 1 2.3 298 154
## - x9 1 2.3 298 154
## - x24 1 2.6 298 154
## - x13 1 3.0 298 154
## - x20 1 5.1 300 155
## - x30 1 5.9 301 155
## - x18 1 7.1 302 155
## - x27 1 7.1 302 155
## <none> 295 156
## - x16 1 9.1 304 156
## - x11 1 9.7 305 156
## - x26 1 11.9 307 156
## - x28 1 12.2 308 156
## - x4 1 15.6 311 157
## + x3 1 0.9 294 157
## + x19 1 0.8 295 157
## + x17 1 0.4 295 158
## - x25 1 18.7 314 158
## - x5 1 22.4 318 159
## - x8 1 29.3 325 160
## - x10 1 29.5 325 160
## - x14 1 42.1 337 163
## - x12 1 46.0 341 164
## - x6 1 56.8 352 166
## - x22 1 60.1 355 167
## - x2 1 106.5 402 176
## - x1 1 148.5 444 183
## - x7 1 179.3 475 188
##
## Step: AIC=153.8
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x15 + x16 + x18 + x20 + x21 + x22 + x23 + x24 +
## x25 + x26 + x27 + x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x21 1 1.8 298 152
## - x15 1 2.0 298 152
## - x23 1 2.0 298 152
## - x24 1 2.1 298 152
## - x9 1 2.3 298 152
## - x13 1 2.6 299 152
## - x20 1 5.2 301 153
## - x30 1 5.5 302 153
## - x27 1 6.6 303 153
## - x18 1 7.6 304 154
## <none> 296 154
## - x16 1 9.3 306 154
## - x11 1 10.0 306 154
## - x28 1 12.3 309 155
## - x26 1 14.2 310 155
## - x4 1 15.5 312 156
## + x29 1 0.9 295 156
## + x19 1 0.8 295 156
## + x3 1 0.8 295 156
## + x17 1 0.3 296 156
## - x25 1 21.2 317 157
## - x5 1 21.5 318 157
## - x8 1 28.5 325 158
## - x10 1 29.4 326 159
## - x14 1 44.1 340 162
## - x12 1 46.4 343 162
## - x6 1 57.3 353 165
## - x22 1 59.3 356 165
## - x2 1 106.5 403 174
## - x1 1 151.0 447 182
## - x7 1 179.9 476 186
##
## Step: AIC=152.3
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x15 + x16 + x18 + x20 + x22 + x23 + x24 + x25 +
## x26 + x27 + x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x24 1 1.6 299 151
## - x15 1 1.9 300 151
## - x23 1 2.4 300 151
## - x13 1 2.5 300 151
## - x9 1 3.2 301 151
## - x20 1 4.9 303 151
## - x30 1 6.1 304 152
## - x18 1 6.3 304 152
## - x27 1 7.8 306 152
## <none> 298 152
## - x16 1 11.1 309 153
## - x28 1 11.4 309 153
## - x11 1 13.0 311 153
## - x4 1 14.2 312 154
## + x21 1 1.8 296 154
## + x29 1 1.0 297 154
## + x19 1 0.8 297 154
## + x3 1 0.4 298 154
## + x17 1 0.1 298 154
## - x26 1 18.4 316 155
## - x25 1 19.5 317 155
## - x5 1 21.4 319 155
## - x8 1 26.8 325 156
## - x10 1 29.1 327 157
## - x14 1 44.1 342 160
## - x12 1 46.1 344 161
## - x22 1 57.6 356 163
## - x6 1 61.0 359 164
## - x2 1 105.2 403 172
## - x1 1 151.2 449 180
## - x7 1 192.9 491 186
##
## Step: AIC=150.6
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x15 + x16 + x18 + x20 + x22 + x23 + x25 + x26 +
## x27 + x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x15 1 2.1 302 149
## - x23 1 2.7 302 149
## - x13 1 3.0 302 149
## - x9 1 3.7 303 150
## - x30 1 5.9 305 150
## - x18 1 5.9 305 150
## - x20 1 6.1 306 150
## <none> 299 151
## - x16 1 10.5 310 151
## - x27 1 12.8 312 152
## - x4 1 12.8 312 152
## - x11 1 14.6 314 152
## - x28 1 14.9 314 152
## + x19 1 1.6 298 152
## + x24 1 1.6 298 152
## + x21 1 1.2 298 152
## + x29 1 0.6 299 152
## + x3 1 0.4 299 152
## + x17 1 0.3 299 153
## - x26 1 17.9 317 153
## - x25 1 18.9 318 153
## - x5 1 21.6 321 154
## - x8 1 26.8 326 155
## - x10 1 27.8 327 155
## - x14 1 42.6 342 158
## - x12 1 44.5 344 159
## - x22 1 58.9 358 162
## - x6 1 60.5 360 162
## - x2 1 103.9 403 170
## - x1 1 149.7 449 178
## - x7 1 195.6 495 185
##
## Step: AIC=149.1
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x16 + x18 + x20 + x22 + x23 + x25 + x26 + x27 +
## x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x23 1 2.9 305 148
## - x9 1 3.0 305 148
## - x13 1 3.2 305 148
## - x20 1 4.8 306 148
## - x30 1 4.8 306 148
## - x18 1 5.6 307 148
## <none> 302 149
## - x16 1 10.2 312 150
## - x27 1 11.6 313 150
## - x4 1 12.9 314 150
## - x11 1 13.2 315 150
## - x28 1 13.7 315 150
## + x15 1 2.1 299 151
## + x24 1 1.7 300 151
## + x21 1 1.2 300 151
## + x19 1 0.8 301 151
## + x17 1 0.6 301 151
## + x3 1 0.5 301 151
## + x29 1 0.3 301 151
## - x26 1 16.9 319 151
## - x5 1 19.9 321 152
## - x25 1 20.8 322 152
## - x10 1 25.7 327 153
## - x8 1 26.7 328 153
## - x14 1 45.5 347 157
## - x12 1 54.8 356 159
## - x22 1 57.0 359 160
## - x6 1 58.4 360 160
## - x2 1 102.1 404 168
## - x1 1 161.2 463 178
## - x7 1 194.4 496 183
##
## Step: AIC=147.8
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 + x12 +
## x13 + x14 + x16 + x18 + x20 + x22 + x25 + x26 + x27 + x28 +
## x30 - 1
##
## Df Sum of Sq RSS AIC
## - x9 1 2.6 307 146
## - x20 1 3.8 308 147
## - x13 1 4.3 309 147
## - x30 1 6.5 311 147
## - x18 1 7.0 312 148
## <none> 305 148
## - x16 1 9.6 314 148
## - x27 1 9.7 314 148
## - x11 1 11.7 316 148
## + x23 1 2.9 302 149
## - x4 1 14.9 319 149
## + x15 1 2.3 302 149
## + x24 1 2.0 302 149
## + x19 1 1.7 303 149
## + x21 1 1.5 303 150
## + x17 1 0.7 304 150
## + x3 1 0.5 304 150
## + x29 1 0.4 304 150
## - x28 1 18.6 323 150
## - x26 1 18.7 323 150
## - x25 1 22.8 327 151
## - x8 1 26.3 331 152
## - x5 1 26.9 331 152
## - x10 1 28.4 333 152
## - x14 1 45.6 350 156
## - x12 1 53.8 358 158
## - x6 1 56.1 361 158
## - x22 1 68.1 373 160
## - x2 1 102.4 407 167
## - x1 1 159.0 463 176
## - x7 1 192.2 497 181
##
## Step: AIC=146.4
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x10 + x11 + x12 + x13 +
## x14 + x16 + x18 + x20 + x22 + x25 + x26 + x27 + x28 + x30 -
## 1
##
## Df Sum of Sq RSS AIC
## - x13 1 2.7 310 145
## - x20 1 3.6 311 145
## - x30 1 7.4 315 146
## - x18 1 8.2 315 146
## <none> 307 146
## - x27 1 8.9 316 146
## - x16 1 9.3 316 147
## - x11 1 10.3 317 147
## + x9 1 2.6 305 148
## + x23 1 2.6 305 148
## + x24 1 2.4 305 148
## + x21 1 2.1 305 148
## + x19 1 1.8 305 148
## + x15 1 1.5 306 148
## + x29 1 0.4 307 148
## - x28 1 17.2 324 148
## + x3 1 0.3 307 148
## + x17 1 0.2 307 148
## - x26 1 19.4 327 149
## - x4 1 22.7 330 150
## - x25 1 23.5 331 150
## - x8 1 23.6 331 150
## - x5 1 24.4 332 150
## - x10 1 26.1 333 150
## - x12 1 52.5 360 156
## - x6 1 58.0 365 157
## - x14 1 61.7 369 158
## - x22 1 72.7 380 160
## - x2 1 99.9 407 165
## - x7 1 190.9 498 179
## - x1 1 250.5 558 187
##
## Step: AIC=145.1
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x10 + x11 + x12 + x14 +
## x16 + x18 + x20 + x22 + x25 + x26 + x27 + x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x20 1 2.9 313 144
## - x30 1 6.5 316 145
## <none> 310 145
## - x11 1 10.1 320 145
## - x27 1 10.2 320 145
## - x16 1 10.3 320 145
## - x18 1 12.0 322 146
## + x23 1 3.6 306 146
## + x24 1 3.0 307 146
## + x13 1 2.7 307 146
## + x19 1 2.4 307 146
## + x15 1 1.9 308 147
## + x21 1 1.7 308 147
## - x28 1 16.4 326 147
## + x9 1 1.0 309 147
## + x3 1 0.4 309 147
## + x29 1 0.1 310 147
## + x17 1 0.0 310 147
## - x26 1 18.8 329 147
## - x8 1 22.2 332 148
## - x5 1 23.2 333 148
## - x10 1 23.9 334 148
## - x4 1 24.5 334 148
## - x25 1 27.5 337 149
## - x12 1 58.3 368 156
## - x6 1 58.3 368 156
## - x14 1 63.8 374 156
## - x22 1 71.0 381 158
## - x2 1 121.2 431 167
## - x7 1 207.4 517 180
## - x1 1 248.2 558 185
##
## Step: AIC=143.7
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x10 + x11 + x12 + x14 +
## x16 + x18 + x22 + x25 + x26 + x27 + x28 + x30 - 1
##
## Df Sum of Sq RSS AIC
## - x30 1 4.7 317 143
## <none> 313 144
## - x18 1 11.6 324 144
## - x27 1 12.9 326 145
## - x11 1 13.3 326 145
## + x24 1 3.8 309 145
## + x20 1 2.9 310 145
## + x19 1 2.5 310 145
## + x23 1 2.5 310 145
## - x16 1 15.6 328 145
## + x13 1 1.9 311 145
## - x28 1 16.4 329 145
## + x21 1 1.3 311 145
## + x9 1 1.1 312 146
## - x26 1 16.9 330 146
## + x15 1 0.8 312 146
## + x3 1 0.4 312 146
## + x29 1 0.2 313 146
## + x17 1 0.0 313 146
## - x4 1 21.8 335 147
## - x5 1 23.9 337 147
## - x8 1 23.9 337 147
## - x25 1 26.4 339 148
## - x10 1 35.9 349 150
## - x12 1 55.7 368 154
## - x22 1 69.3 382 156
## - x14 1 71.6 384 157
## - x6 1 71.7 384 157
## - x2 1 126.2 439 166
## - x7 1 221.1 534 180
## - x1 1 252.4 565 184
##
## Step: AIC=142.8
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x10 + x11 + x12 + x14 +
## x16 + x18 + x22 + x25 + x26 + x27 + x28 - 1
##
## Df Sum of Sq RSS AIC
## <none> 317 143
## - x27 1 11.0 328 143
## + x30 1 4.7 313 144
## + x23 1 3.9 313 144
## - x26 1 14.3 332 144
## + x24 1 3.2 314 144
## - x11 1 15.6 333 144
## + x21 1 2.2 315 144
## + x9 1 1.7 316 144
## + x13 1 1.4 316 144
## + x19 1 1.3 316 144
## + x20 1 1.1 316 145
## + x15 1 0.4 317 145
## + x3 1 0.1 317 145
## + x29 1 0.1 317 145
## + x17 1 0.0 317 145
## - x18 1 18.7 336 145
## - x4 1 18.9 336 145
## - x16 1 19.0 336 145
## - x28 1 19.2 337 145
## - x8 1 23.4 341 146
## - x5 1 24.6 342 146
## - x10 1 37.8 355 149
## - x25 1 41.7 359 150
## - x12 1 55.1 372 152
## - x6 1 70.0 387 155
## - x22 1 73.0 390 156
## - x14 1 84.7 402 158
## - x2 1 131.3 449 166
## - x7 1 241.7 559 182
## - x1 1 247.7 565 182
step$anova # display resultss
## Stepwise Model Path
## Analysis of Deviance Table
##
## Initial Model:
## cy ~ 0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
## x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 +
## x22 + x23 + x24 + x25 + x26 + x27 + x28 + x29 + x30
##
## Final Model:
## cy ~ x1 + x2 + x4 + x5 + x6 + x7 + x8 + x10 + x11 + x12 + x14 +
## x16 + x18 + x22 + x25 + x26 + x27 + x28 - 1
##
##
## Step Df Deviance Resid. Df Resid. Dev AIC
## 1 42 293.7 161.2
## 2 - x17 1 0.3035 43 294.0 159.3
## 3 - x19 1 0.3909 44 294.4 157.4
## 4 - x3 1 0.9463 45 295.3 155.6
## 5 - x29 1 0.8551 46 296.2 153.8
## 6 - x21 1 1.7634 47 297.9 152.3
## 7 - x24 1 1.5533 48 299.5 150.6
## 8 - x15 1 2.0849 49 301.6 149.1
## 9 - x23 1 2.9255 50 304.5 147.8
## 10 - x9 1 2.6491 51 307.2 146.4
## 11 - x13 1 2.6597 52 309.8 145.1
## 12 - x20 1 2.8580 53 312.7 143.7
## 13 - x30 1 4.6736 54 317.3 142.8
step$coefficients
## x1 x2 x4 x5 x6 x7 x8 x10 x11
## 25.6234 0.6210 -0.2468 0.3027 0.5026 -0.9524 -0.2205 -0.3315 0.2220
## x12 x14 x16 x18 x22 x25 x26 x27 x28
## 0.3905 0.4216 0.2328 -0.2074 0.4452 0.2969 -0.1707 -0.1470 0.2028
fitted <- gdt(step$fitted.values)
plot(ts(t(y)), pch = 19, col = "blue")
points(ts(fitted), pch = 19, col = "red")
cpgram(ts(step$resid))
plot(t(x), t(y), pch = 19, col = "blue")
points(t(x), fitted, pch = 19, col = "red")
Los residuos del modelo tienen apariencia aleatoria, según la función cpgram del paquete MASS.
Conclusiones Los parametros beta obtenidos una vez se recuperan en el dominio del tiempo, constiuyen en realidad un ajuste del cociente entre el crecimiento del PIB y el crecimiento del IBEX, tal y como puede verse en la siguiente gráfica:
beta <- c(0.6210123, 0, -0.2467976, 0.3027482, 0.5026343, -0.9523802, -0.2204985,
0, -0.3315128, 0.221983, 0.3904721, 0, 0.4216091, 0, 0.2327889, 0, -0.2074449,
0, 0, 0, 0.4452179, 0, 0, 0.2968991, -0.1706734, -0.1469845, 0.2028064,
rep(0, 45))
alpha <- c(25.623, rep(0, 71))
beta_t <- gdt(beta)
alpha_t <- gdt(alpha)
plot((t(y) - alpha_t)/t(x), pch = 19, col = "blue")
lines(beta_t, pch = 19, col = "red")
Su valor medio es 0.0732, y en su distribución se observa que predominan los valores positivos, de manera que cabe admitir una relación a largo plazo entre ambas tasas de crecimiento.
summary(beta_t)
## V1
## Min. :-0.4209
## 1st Qu.:-0.0502
## Median : 0.1267
## Mean : 0.0732
## 3rd Qu.: 0.1871
## Max. : 0.3449
hist(beta_t)
Pero la relación entre ambas tasas de crecimiento oscila en torno a dicho valor medio con las frecuencias correspondientes al \( sin(\frac{2\pi}{72}) \),\( cos(\frac{4\pi}{72}) \), \( sin(\frac{4\pi}{72}) \),\( cos(\frac{6\pi}{72}) \), \( sin(\frac{6\pi}{72}) \),\( sin(\frac{8\pi}{72}) \),\( sin(\frac{10\pi}{72}) \),\( sin(\frac{12\pi}{72}) \),\( sin(\frac{14\pi}{72}) \) , \( sin(\frac{16\pi}{72}) \), \( sin(\frac{22\pi}{72}) \),\( cos(\frac{24\pi}{72}) \),\( sin(\frac{24\pi}{72}) \),\( cos(\frac{26\pi}{72}) \) y \( sin(\frac{26\pi}{72}) \).
Por un lado encontramos osicilaciones de baja frecuencia (la que ocurren 36 trimestres o 9 años, 18, 12 trimestes, etc… ), y por otro otras oscilaciones de más alta frecuencia que serían las que ocurren cada 3 trimestes (\( \frac{24\pi}{72} \)).
A la vista del periodograma de los parámetros se concluye que los de mayor amplitud son las oscilaciones del IBEX con frecuencias de 18 y 12 trimestres, es decir los que tiene lugar cada 3-5 años, serían los correspondientes a los \( cos(\frac{4\pi}{72}) \), \( sin(\frac{4\pi}{72}) \),\( cos(\frac{6\pi}{72}) \), \( sin(\frac{6\pi}{72}) \).
gperiodograma(beta_t)
Bibliography
Engle, Robert F. (1974), Band Spectrum Regression,International Economic Review 15,1-11.
Hannan, E.J. (1963), Regression for Time Series, in Rosenblatt, M. (ed.), Time Series Analysis, New York, John Wiley.
Harvey, A.C. (1978), Linear Regression in the Frequency Domain, International Economic Review, 19, 507-512.
Parra, F. (2013), Regresión con paramétros dependientes del tiempo, (http://econometria.wordpress.com/2013/07/29/estimacion-con-parametros-dependientes-del-tiempo/)
Ripley, B. Venables, B.; Bates, D.M.; Hornik, K. Gebhardt, G. and Firth, D. (2013): “Package MASS”. http://www.stats.ox.ac.uk/pub/MASS4/
Wilson, P.J. and Perry, L.J. (2004). Forecasting Australian Unemployment Rates Using Spectral Analysis Australian Jurnal of Labour Economics, vol 7,no 4, December 2004, pp 459-480.