Cómo usar R para construir un modelo vectorial autorregresivo
Cómo utilizar R para crear un modelo vectorial autorregresivo (VAR)
Para implementar los siguientes pasos, el conjunto de datos ya está disponible. ¿Pueden los expertos presentar las funciones relevantes?
halfyear_vector=data.frame(hsi_ir_h_ts,cenlhkl_ir_h_ts,m2_h_ts,ue_h_ts,cpi_h_ts,exp_h_ts,gdp_h_ts)
halfyear_vector=ts(halfyear_vector,start=c(1995,1),frecuencia =2)
halfyear_vector
plot(halfyear_vector,plot.type="single",lty=1:7,col=1:7)
título ("indicadores clave")
legend("topleft",c("hsi_ir_h_ts","cenlhkl_ir_h_ts","m2_h_ts","ue_h_ts","cpi_h_ts","exp_h_ts","gdp_h_ts"), lty=1:7,col=1:7)
#Prueba de estabilidad
para (i en 1:7)
{
print(kpss.test(halfyear_vector[,i],null="Nivel"))
print(kpss.test(halfyear_vector[,i],null="Tendencia"))
p>print(kpss.test(diff(halfyear_vector[,i]),null="Nivel"))
print(kpss.test(diff(halfyear_vector[,i]), null ="Tendencia"))
}
#Requisito 1: Realizar la prueba ADF
#Prueba de causalidad de Granger
prueba de granger. (halfyear_vector,p=7)
#Requisito 2: Hacer indicador *** juicio lineal
#Requisito 3: Hacer juicio de orden VAR
# Modelo VAR ajuste
halfyear_VAR=VAR(halfyear_vector,p=3,type="both")
halfyear_VAR
#Requisito 4: Estabilidad del sexo del modelo de precios, autocorrelación , prueba de heterocedasticidad
#Requisito 5: Exportar modelo VAR
Predicción del modelo #VAR
halfyear_VAR_Predict=predict(halfyear_VAR,n.head =1,ci=0.9999 )
plot(halfyear_VAR_Predict)
#Requisito 6: Calcular los valores predichos de los cuantiles 95%, 99% y 99,9%
--- -------------
DM Diamondback
Esta publicación fue editada por última vez por DM Diamondback el 26/2/2015 a las 15:27
p>1. Utilice adf.test() en el paquete tseries
2. Puede calcular el rango de la matriz X qr(X)$rank. Si no es el rango completo, significa que hay Xi en él. Expresado por otras combinaciones lineales de 1000, hay una linealidad múltiple severa.
Puede realizar una regresión paso a paso utilizando el comando step(). Por ejemplo, si su modelo inicial es fm, step(fm) es suficiente
3. Puede establecer el juicio del término de retraso en adf. test(). adf.test(x, alternativa = c("estacionario", "explosivo"),
k = trunc((longitud(x)-1)^(1/3)))
Criterio AIC——
Para calcular el estadístico AIC, divida la suma de los residuos cuadrados (SS) del modelo por el tamaño de la muestra (n), luego tome el logaritmo y sume 2 veces el número de variables explicativas (k) dividido por el tamaño de la muestra.
AIC=log(SS/n)+2*k/n
Encuentre un determinado valor de k donde AIC alcanza el valor mínimo, entonces k es el orden de retraso óptimo.
Criterio SC——
SC=log(SS/n)+log(n)*k/n
4. en R Los métodos se utilizan comúnmente y LiMcLeod{portes} puede realizar pruebas multivariadas de Portmanteau Q. . . protest{portes} puede realizar una prueba Portmanteau Q unidireccional. Si configura el parámetro SquaredQ=T en la función, también puede elevar al cuadrado la secuencia y luego probar la autocorrelación. . . También equivale a realizar una prueba de heterocedasticidad. . .
La prueba de autocorrelación se puede realizar a través del gráfico ACF, la función es acf{stats}, o se utiliza la prueba de raíz unitaria ur.df{urca} para la prueba ADF o ur.pp{urca} se utiliza para la prueba PP, o ruido blanco Testing Box.test{stats} es equivalente a probar la autocorrelación de segundo orden de la secuencia. . .
El interior de {} es el nombre del paquete