UNIVERSIDAD DE EL SALVADOR
FACULTAD DE CIENCIAS ECONÓMICAS
ESCUELA DE ECONOMÍA
MÉTODOS PARA EL ANÁLISIS ECONÓMICO
LABORATORIO 3
DOCENTE:
MSF. CARLOS ADEMIR PÉREZ ALAS.
INTEGRANTES:
ABARCA ESPINOZA, FABIO FELICIANO. AE17013.
IRAHETA VILLEGAS, JUAN PABLO. IV14001.
QUINTANILLA COTO, JEFFERSON ANGELO. QC18007.
GRUPO TEORICO:
3
CIUDAD UNIVERSITARIA, SABADO 4 DE DICIEMBRE DE 2021.
Definicion: El contraste de Dickey-Fuller es una prueba de raíz única que detecta estadísticamente la presencia de conducta tendencial estocástica en las series temporales de las variables mediante un contraste de hipótesis.
En otras palabras, el contraste de Dickey-Fuller nos permite saber si hay presencia significativa de tendencia en las series temporales de las variables mediante un contraste de hipótesis.
¿Donde lo aplicamos? El contraste Dickey-Fuller es comúnmente aplicado en econometría para comprobar la presencia de tendencia sobre las series temporales. La particularidad del contraste Dickey-Fuller es que es la herramienta más fácil de usar comparado con otros contrastes más complejos que también prueban la presencia de tendencia en los datos.
Hipotesis de la prueba(Nula y Alternativa) El punto de partida es el proceso estocástico de raíz unitaria se inicia con: Yt = ρYt−1 + ut −1 ≤ ρ ≤ 1 Restando en ambos lados de la ecuación Yt-1 Yt - Yt-1 = pYt-1 - Yt-1 + ut-1 = (ρ − 1)Yt−1 + ut La cual se expresa como: DeltaYt = δYt−1 + ut Donde δ = (ρ − 1) y Delta, es el operador de primeras diferencias. Por tanto: DeltaYt = (Yt − Yt−1) = ut (Gujarati and Porter 2010)
Definicion de hipotesis nula; Si el parámetro alfa es igual a cero implica que la serie sigue un camino aleatorio, en consecuencia es no estacionaria; Si el parámetro alfa es distinto de cero y es negativo, entonces la serie es estacionaria.
En el contexto de la prueba Dickey-Fuller hay dos condiciones para que la serie de tiempo sea estacionaria:Rechazar la hipótesis nula y Que el estimador alfa sea negativo
Es decir: Hipótesis nula: H0:δ = 0 (es decir, existe una raíz unitaria, la serie de tiempo es no estacionaria o tiene tendencia estocástica).
Es decir: Hipótesis alternativa: H1:δ < 0 (es decir, la serie de tiempo es estacionaria, posiblemente alrededor de una tendencia determinista).
Esto se pude probar mediante un estadístico t de Student
Consideraciones en la prueba Dickey-Fuller 1-Distribución del estadístico bajo la hipótesis nula, tiende a valores negativos 2-Los resultados de la estimación del parámetro α son afectados por la presencia de autocorrelación en los errores de la prueba 3-Los componentes de constante y tendencia deben ser incorporados en la especificación de la prueba
En el ejemplo nosotros usamos adf.test(residuales) Para conocer especificamente el valor critico y p-value; Con esto interpretaremos si se rechazan las hipotesis o no son rechazadas adf.test(rnorm(100), k=0) Donde rnorm(100; Es una matriz de datos K=0; Es el orden dela prueba El valor cero que se encuentra en K, es porque solo necesitamos la raiz unitaria de la serie original y no de primer o segundo orden.
Criterio de desicion
Referente a la salida ls valores generados nos daran a conocer si estan entre el valor de rechazo o no rechazo, Ademas obtenemos el p-value que nos indica como buscarlo en la distribucion t-student
Cada versión de la prueba tiene su propio valor crítico que depende del tamaño de la muestra. En cada caso, la hipótesis nula es que hay una raíz unitaria, δ = 0. Las pruebas tienen un bajo poder estadístico en el que a menudo no es posible distinguir entre los procesos de raíz unitaria verdaderos (δ = 0) y los procesos de raíz unitaria cerca (δ es cercano a cero). Esto se conoce como el problema de observación de cerca de equivalencia. La intuición detrás de la prueba es el siguiente. Si la serie y es estacionaria (o tendencia estacionaria), entonces tiene una tendencia a volver a una constante (o determinista de tendencias). Por lo tanto los valores grandes tenderán a ser seguido por los valores más pequeños (cambios negativos), y valores pequeños de los valores más grandes (cambios positivos). En consecuencia, el nivel de la serie será un predictor significativo de cambio del período siguiente y tendrá un coeficiente negativo. Si, por otro lado, la serie está integrada, a continuación, los cambios positivos y negativos ocurrirán con probabilidades que no dependen del nivel actual de la serie; en un paseo aleatorio, donde se encuentra ahora, no afecta el camino al que se irá después
Criterio del rechazo, o no de rechazo de la Hipotesis Nula de la prueba
Al ubicar el valor critico en el grafico de t-student, se encuentra la zona de rechazar y no rechazar la hipotesis H0. Con este dato nosotros interpretamos si H0 es raiz unitaria (No es estacionario); Y por el otro lado H1 nos dice que no hay raiz unitaria(Estacionaria)
En cada caso, las hipótesis son:
Hipótesis nula: H0:δ = 0 (es decir, existe una raíz unitaria, la serie de tiempo es no estacionaria o tiene tendencia estocástica)
Hipótesis alternativa: H1:δ < 0 (es decir, la serie de tiempo es estacionaria, posiblemente alrededor de una tendencia determinista).
#Cargamos librerias necesarias para series de tiempo
##(Es opcional instalar todas estas librerias)##
library(lubridate)
library(tseries)
library(car)
library(astsa)
library(foreign)
library(timsac)
library(vars)
library(lmtest)
library(mFilter)
library(dynlm)
library(nlme)
library(broom)
library(knitr)
library(MASS)
library(parallel)
library(car)
library(mlogit)
library(dplyr)
library(tidyr)
library(forecast)
library(fpp2)
library(stats)
library(quantmod)
CARGAMOS BASE DATOS
library(readxl)
coint <- read_excel("C:\\Users\\Emerson\\Downloads\\coint.xls")
LLAMAMOS EL ARCHIVO PARA QUE ESTE SEA LEIDO
#Leer Documento
attach(coint)
names(coint)
## [1] "DPI" "PCE"
ANTES DE CONVERTIRLO A UN OBJETO DE SERIE DE TIEMPO SE PUEDEN CONVERTIR A LOGARITMO, DEPENDIENDO DE LOS VALORES ELEVADOS(NO SIEMPRE APLICA)
#Generar Logaritmos
lnPCE=log(PCE)
lnDPI=log(DPI)
#Generar variables de Series de Tiempo
DPI.ts=ts(lnDPI, start=c(1947,1),frequency = 4)
PCE.ts=ts(lnPCE, start=c(1947,1),frequency = 4)
#Hacer una tabla
datos1=cbind(DPI.ts,PCE.ts)
head(datos1,n=10)
## DPI.ts PCE.ts
## 1947 Q1 6.999422 6.924809
## 1947 Q2 6.978027 6.941190
## 1947 Q3 7.005608 6.944569
## 1947 Q4 6.993658 6.944762
## 1948 Q1 7.009680 6.949473
## 1948 Q2 7.043422 6.960632
## 1948 Q3 7.063391 6.962338
## 1948 Q4 7.066382 6.970542
## 1949 Q1 7.045428 6.971762
## 1949 Q2 7.048734 6.987121
plot(datos1, main="Tendencia")
#Generar Modelo
modelo1=lm(PCE.ts ~DPI.ts)
summary(modelo1)
##
## Call:
## lm(formula = PCE.ts ~ DPI.ts)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.062816 -0.019375 -0.001032 0.017186 0.078186
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.194233 0.023593 -8.233 1.14e-14 ***
## DPI.ts 1.011351 0.002902 348.542 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.02764 on 242 degrees of freedom
## Multiple R-squared: 0.998, Adjusted R-squared: 0.998
## F-statistic: 1.215e+05 on 1 and 242 DF, p-value: < 2.2e-16
residuales=modelo1$residuals
residualPlot(modelo1)
CON LA PRUEBA CONOCEREMOS SI SON VALORES ESTACIONARIOS O NO ESTACIONARIOS
#Prueba de Dickey-Fuller
y=ur.df(residuales)
summary(y)
##
## ###############################################
## # Augmented Dickey-Fuller Test Unit Root Test #
## ###############################################
##
## Test regression none
##
##
## Call:
## lm(formula = z.diff ~ z.lag.1 - 1 + z.diff.lag)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.050339 -0.004034 -0.000311 0.005048 0.042822
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## z.lag.1 -0.05978 0.02364 -2.529 0.0121 *
## z.diff.lag -0.31809 0.05924 -5.369 1.87e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.009841 on 240 degrees of freedom
## Multiple R-squared: 0.1503, Adjusted R-squared: 0.1433
## F-statistic: 21.23 on 2 and 240 DF, p-value: 3.228e-09
##
##
## Value of test-statistic is: -2.5289
##
## Critical values for test statistics:
## 1pct 5pct 10pct
## tau1 -2.58 -1.95 -1.62
y@teststat
## tau1
## statistic -2.528947
y@cval
## 1pct 5pct 10pct
## tau1 -2.58 -1.95 -1.62
#con intercepto
y2=ur.df(residuales, type="drift",selectlags="AIC")
summary(y2)
##
## ###############################################
## # Augmented Dickey-Fuller Test Unit Root Test #
## ###############################################
##
## Test regression drift
##
##
## Call:
## lm(formula = z.diff ~ z.lag.1 + 1 + z.diff.lag)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.050207 -0.003904 -0.000181 0.005176 0.042952
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.0001294 0.0006339 -0.204 0.8385
## z.lag.1 -0.0598500 0.0236882 -2.527 0.0122 *
## z.diff.lag -0.3180310 0.0593632 -5.357 1.98e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.00986 on 239 degrees of freedom
## Multiple R-squared: 0.1504, Adjusted R-squared: 0.1433
## F-statistic: 21.15 on 2 and 239 DF, p-value: 3.478e-09
##
##
## Value of test-statistic is: -2.5266 3.2058
##
## Critical values for test statistics:
## 1pct 5pct 10pct
## tau2 -3.46 -2.88 -2.57
## phi1 6.52 4.63 3.81
#Sin tendencia y sin intercepto
y3=ur.df(residuales, type="none",selectlags="AIC")
summary(y3)
##
## ###############################################
## # Augmented Dickey-Fuller Test Unit Root Test #
## ###############################################
##
## Test regression none
##
##
## Call:
## lm(formula = z.diff ~ z.lag.1 - 1 + z.diff.lag)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.050339 -0.004034 -0.000311 0.005048 0.042822
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## z.lag.1 -0.05978 0.02364 -2.529 0.0121 *
## z.diff.lag -0.31809 0.05924 -5.369 1.87e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.009841 on 240 degrees of freedom
## Multiple R-squared: 0.1503, Adjusted R-squared: 0.1433
## F-statistic: 21.23 on 2 and 240 DF, p-value: 3.228e-09
##
##
## Value of test-statistic is: -2.5289
##
## Critical values for test statistics:
## 1pct 5pct 10pct
## tau1 -2.58 -1.95 -1.62
#Dickey Fuller Aumentada
adf.test(residuales)
##
## Augmented Dickey-Fuller Test
##
## data: residuales
## Dickey-Fuller = -1.2524, Lag order = 6, p-value = 0.8904
## alternative hypothesis: stationary
El próposito de la Prueba de Soren Johansen se utiliza para verificar la existencia o no de cointegraccion entre dos o mas series temporales.
Hipótesisi Nula:\[Ho:r=0 \] \[\color{red}{\text{"No existe Cointegración".}}\]
Hipótesis Alternativa:\[H1:r=m\]
\[\color{red}{\text{"Existe Cointegración".}}\]
Librería que se utiliza en esta prueba son las siguientes:
• library(urca)
Prueba de Soren Johansen johansen
library(urca)
summary(ca.jo(ecb.consumo,type=“trace,”ecdet=“none,”spec=c(“longrun”),K=4))
Criterio de desicion
\(H0:r=0\) Se rechaza
Se puede afirmar que en la serie de tiempo no existe cointegración.
\(H1:r=m\) No se rechaza
Se puede afirmar que en la serie de tiempo existe cointegración
Criterio del rechazo, o no de rechazo de la Hipotesis Nula de la prueba
Se puede afirmar que si el estadistico de Prueba es mayor que el valor critico se tendran las evidencias suficientes para rechazar la Hipotesis Nula \(H0:r=0\), aseverando de esta manera que en la serie existe cointegración.
library(urca)
library(car)
load("C:\\Users\\Emerson\\Downloads\\Consumo.RData")
lpib_mex<-log( Consumo$pib_mex)
lcp_mex<-log( Consumo$cp_mex)
# Para aplicar el procedimiento deJohansen , primero se combinan las variables en un solo objeto
ecb.consumo<-cbind (lcp_mex,lpib_mex)
Prueba de la traza de cointegración sin tendencia y constante
#se aplica la prueba de la traza de cointegración sin tendencia y constante
library(urca)
summary(ca.jo(ecb.consumo,type ="trace",ecdet="none",spec=c("longrun"),K=4))
##
## ######################
## # Johansen-Procedure #
## ######################
##
## Test type: trace statistic , with linear trend
##
## Eigenvalues (lambda):
## [1] 0.1751774 0.0169835
##
## Values of teststatistic and critical values of test:
##
## test 10pct 5pct 1pct
## r <= 1 | 1.47 6.50 8.18 11.65
## r = 0 | 18.04 15.66 17.95 23.52
##
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
##
## lcp_mex.l4 lpib_mex.l4
## lcp_mex.l4 1.000000 1.000000
## lpib_mex.l4 -1.280708 -1.037871
##
## Weights W:
## (This is the loading matrix)
##
## lcp_mex.l4 lpib_mex.l4
## lcp_mex.d -0.3578910 -0.08189816
## lpib_mex.d -0.1079621 -0.07962291
Al realizar la Prueba los resultados nos muestran que para la primera hipótesis r=0 y alternativa r= 1 no se rechaza la hipótesis alternativa de cointegración el estadístico es mayor al valor critico del 10%, 18.04>15.66 es decir exixte cointegracion entre las variables. Para la segunda hipótesis r<= 1 y alternativa r= 2 no se rechaza la hipótesis nula de un solo vector de cointegración Por lo que se puede concluir que existe un vector de cointegración y se representa por (1,- 1.28).
Prueba de la traza de cointegración con constante
#se aplica la prueba de la traza de cointegración con constante
library(urca)
summary(ca.jo(ecb.consumo,type ="trace",ecdet="const",spec=c("longrun"),K=4))
##
## ######################
## # Johansen-Procedure #
## ######################
##
## Test type: trace statistic , without linear trend and constant in cointegration
##
## Eigenvalues (lambda):
## [1] 2.017097e-01 1.265562e-01 5.440093e-15
##
## Values of teststatistic and critical values of test:
##
## test 10pct 5pct 1pct
## r <= 1 | 11.64 7.52 9.24 12.97
## r = 0 | 31.01 17.85 19.96 24.60
##
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
##
## lcp_mex.l4 lpib_mex.l4 constant
## lcp_mex.l4 1.000000 1.000000 1.000000
## lpib_mex.l4 -1.255645 -1.414691 -1.064081
## constant 4.557479 7.198639 1.483342
##
## Weights W:
## (This is the loading matrix)
##
## lcp_mex.l4 lpib_mex.l4 constant
## lcp_mex.d -0.4955292 0.05574003 -1.774483e-11
## lpib_mex.d -0.2795953 0.09201028 -6.438725e-12
Al realizar la prueba lo resultados muestran que para la primera hipótesis r=0 y alternativa r= 1 se acepta la hipótesis alternativa de cointegración el estadístico es mayor al valor critico del 10%, 31.01 >17.85 Para la segunda hipótesis r<= 1 y alternativa r= 2 no se rechaza la hipótesis nula de dos vector de cointegración Por lo que se pueden identificar los vectores de cointegración (1, -1.25, 4.55) y (1 ,-1.41, 7.19).
Prueba de Johansen de la traza con tendencia
library(urca)
summary(ca.jo(ecb.consumo,type ="trace",ecdet="trend",spec=c("longrun"),K=4))
##
## ######################
## # Johansen-Procedure #
## ######################
##
## Test type: trace statistic , with linear trend in cointegration
##
## Eigenvalues (lambda):
## [1] 3.007210e-01 6.711864e-02 3.632077e-18
##
## Values of teststatistic and critical values of test:
##
## test 10pct 5pct 1pct
## r <= 1 | 5.98 10.49 12.25 16.26
## r = 0 | 36.74 22.76 25.32 30.45
##
## Eigenvectors, normalised to first column:
## (These are the cointegration relations)
##
## lcp_mex.l4 lpib_mex.l4 trend.l4
## lcp_mex.l4 1.000000000 1.000000000 1.000000000
## lpib_mex.l4 -2.613552539 -0.740358526 -1.944486294
## trend.l4 0.008212396 -0.002968024 0.007611815
##
## Weights W:
## (This is the loading matrix)
##
## lcp_mex.l4 lpib_mex.l4 trend.l4
## lcp_mex.d -0.10989875 -0.3329111 -2.471382e-12
## lpib_mex.d 0.03206499 -0.2557477 -4.370999e-13
Al igual que en el caso de la opción sin tendencia y constante, Nose rechaza la hipótesis de cointegración con solo vector El vector de cointegración es (1 -2.61 0.008).
La prueba de causalidad de Granger se usa para examinar si una serie de tiempo puede usarse para pronosticar otra.
Hipótesis nula (H0):
HO:\[X→Y\]
La serie de tiempo X no causa la serie de tiempo Y a la propia causa de Granger.
Hipótesis alternativa (H1):
H1:\[X≠Y\]
La serie de tiempo X causa la serie de tiempo Y a la propia causa de Granger.
Conocer el valor de una serie de tiempo X en un rezago dado es valioso para pronosticar el valor de una serie de tiempo Y en un período de tiempo posterior que se conoce como “causas de Granger”
Esto se logra tomando diferentes rezagos de una serie y usándolos para modelar el cambio en la segunda serie. Creamos dos modelos que predicen y, uno con solo valores pasados de y (Ω) y el otro con valores pasados de y y x (π). Los modelos se dan a continuación, donde k es el número de retrasos en la serie temporal:
\[SeaΩ=yt=β0+β_1 yt-1+⋯+β_k yt-k+e\] \[\pi=yt=\beta0+\beta_1\ yt-1+\ldots+\beta_k\ yt-k+\alpha_1\ xt-1+\ldots+\alpha_k\ xt-k+e\] La versión de Granger establece que x, es “media independiente” de la corriente y condicional en x actual y pasado. Granger extendido la definición de “y no causa x” es más fuerte que la condición de que y sea independiente de x futuro condicional de x actual y pasado; entonces la no causalidad es más fuerte que la exogeneidad estricta. Sin embargo, bajo una condición de regularidad débil, si y es independiente de x futuro condicional en x actual y pasado y y pasado, entonces y no causa x.
library(lmtest) # El paquete R "lmtest" incorpora el procedimiento de causalidad de Granger, que prueba los modelos de regresión lineal.Una colección de pruebas, conjuntos de datos y ejemplos para la verificación de diagnóstico en modelos de regresión lineal. Además, se proporcionan algunas herramientas genéricas para la inferencia en modelos paramétricos.
#En R, podemos usar la función grangertest del paquete lmtest para realizar una prueba Granger-Causality, que tiene la siguiente sintaxis:
#X: Esta es la primera serie temporal.
#Y: el segundo conjunto de la serie temporal.
data("EuStockMarkets") # Cargar los datos. Estandarizar la data
tsData<-EuStockMarkets[,1:2] # Este conjunto de datos contiene valores para los valores DAX, SMI, CAC y FTSE, pero estamos utilizando solo valores DAX y SMI.
head(tsData) # Mostar primeras 6 filas
## Time Series:
## Start = c(1991, 130)
## End = c(1991, 135)
## Frequency = 260
## DAX SMI
## 1991.496 1628.75 1678.1
## 1991.500 1613.63 1688.5
## 1991.504 1606.51 1678.6
## 1991.508 1621.04 1684.1
## 1991.512 1618.16 1686.6
## 1991.515 1610.61 1671.6
library(lmtest) # Realizar la prueba de causalidad de Granger
grangertest(DAX~SMI, order=3, data = tsData)
## Granger causality test
##
## Model 1: DAX ~ Lags(DAX, 1:3) + Lags(SMI, 1:3)
## Model 2: DAX ~ Lags(DAX, 1:3)
## Res.Df Df F Pr(>F)
## 1 1850
## 2 1853 -3 8.4968 1.322e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
grangertest # para examinar si los valores de SMI predicen los valores de DAX en el futuro.
## function (x, ...)
## {
## UseMethod("grangertest")
## }
## <bytecode: 0x0000000015d49938>
## <environment: namespace:lmtest>
La prueba F, la prueba t o la prueba de Wald (utilizadas en R) se calculan para probar las siguientes hipótesis nulas y alternativas: \[H0:\alpha_i=0\left[1,k\right]\] Sea cero para cada i del elemento.
\[H1:\alpha_i\neq0\left[1,k\right]\] Sea cero para al menos 1 i del elemento
Esencialmente, estamos tratando de determinar si podemos decir que estadísticamente x proporciona más información sobre los valores futuros de y que los valores pasados de y solo. Bajo esta definición, está claro que no estamos tratando de probar la causalidad real, solo que los dos valores están relacionados por algún fenómeno. En ese sentido, también debemos ejecutar este modelo a la inversa para verificar que y no proporcione información sobre los valores futuros de x. Si encontramos que este es el caso, es probable que exista alguna variable exógena, z, que deba controlarse o podría ser una mejor candidata para una mayor causalidad.
P-Value > Nivel de significancia, no se rechaza la hipotesis nula.
En las varibles se establece de que X no causa a y, en dado caso puede darse que sea a la inversa. Rechazar la HO Estadistico de prueba sea 0 *P-value<0.05 Las salidas que genera R El estadístico de prueba F se denota con la letra F igual a 8.4968 y el valor p que corresponde al estadístico de prueba F es Pr (> F) 1.322e-05.
el valor p es menor que 0.05 siendo de 0.04689
H0: αi = 0 [1, k] y la inversa H1: αi ≠ 0 [1, k NO Rechazar la hipótesis nula e inferir que la serie de tiempo si el valor p es mayor que un nivel de significancia particular (por ejemplo = 0.05).
El valor p de la prueba es 0.04689. Rechazamos la hipótesis nula porque este valor es menor que 0.05. Es decir, los valores de DAX predicen los valores de SMI en el futuro.
tsData <- EuStockMarkets[, 1:2]
head(tsData)
## Time Series:
## Start = c(1991, 130)
## End = c(1991, 135)
## Frequency = 260
## DAX SMI
## 1991.496 1628.75 1678.1
## 1991.500 1613.63 1688.5
## 1991.504 1606.51 1678.6
## 1991.508 1621.04 1684.1
## 1991.512 1618.16 1686.6
## 1991.515 1610.61 1671.6
library(lmtest)
grangertest(DAX ~ SMI, order = 3, data = tsData)
## Granger causality test
##
## Model 1: DAX ~ Lags(DAX, 1:3) + Lags(SMI, 1:3)
## Model 2: DAX ~ Lags(DAX, 1:3)
## Res.Df Df F Pr(>F)
## 1 1850
## 2 1853 -3 8.4968 1.322e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El estadístico de prueba F se denota con la letra F igual a 8.4968 y el valor p que corresponde al estadístico de prueba F es Pr (> F) 1.322e-05.
Podemos rechazar la hipótesis nula de la prueba porque el valor p es menor que 0.05 e inferir que conocer los valores de SMI es valioso para pronosticar los valores futuros de DAX.
prueba de causalidad de Granger a la inversa
grangertest(SMI ~ DAX, order = 3, data = tsData)
## Granger causality test
##
## Model 1: SMI ~ Lags(SMI, 1:3) + Lags(DAX, 1:3)
## Model 2: SMI ~ Lags(SMI, 1:3)
## Res.Df Df F Pr(>F)
## 1 1850
## 2 1853 -3 2.6576 0.04689 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
El valor p de la prueba es 0.04689. Rechazamos la hipótesis nula porque este valor es menor que 0.05. Es decir, los valores de DAX predicen los valores de SMI en el futuro.
Como resultado, podemos concluir que conocer los valores de SMI es útil para proyectar los valores de DAX en el futuro.