autoarfima(data$VNI,ar.max = 2, ma.max = 2, criterion = "AIC", method = "full")
## $fit
##
## *----------------------------------*
## * ARFIMA Model Fit *
## *----------------------------------*
## Mean Model : ARFIMA(1,0,1)
## Distribution : norm
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## ar1 0.578982 0.11049 5.2400 0.0e+00
## ma1 -0.494705 0.11749 -4.2108 2.5e-05
## sigma 0.011067 0.00016 69.0609 0.0e+00
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## ar1 0.578982 0.10672 5.4251 0.0e+00
## ma1 -0.494705 0.12078 -4.0958 4.2e-05
## sigma 0.011067 0.00042 26.3662 0.0e+00
##
## LogLikelihood : 7354.111
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.1670
## Bayes -6.1598
## Shibata -6.1670
## Hannan-Quinn -6.1644
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.1079 0.7426
## Lag[2*(p+q)+(p+q)-1][5] 1.3874 0.9992
## Lag[4*(p+q)+(p+q)-1][9] 4.5220 0.5660
##
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 106.0 0
## Lag[2*(p+q)+(p+q)-1][2] 189.3 0
## Lag[4*(p+q)+(p+q)-1][5] 303.2 0
##
##
## ARCH LM Tests
## ------------------------------------
## Statistic DoF P-Value
## ARCH Lag[2] 226.6 2 0
## ARCH Lag[5] 251.2 5 0
## ARCH Lag[10] 254.9 10 0
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 4.8418
## Individual Statistics:
## ar1 0.3424
## ma1 0.4108
## sigma 3.8784
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 0.846 1.01 1.35
## Individual Statistic: 0.35 0.47 0.75
##
##
## Elapsed time : 0.02628589
##
##
## $rank.matrix
## ar1 ar2 ma1 ma2 im arf AIC converged
## 1 1 0 1 0 0 0 -6.167039 1
## 2 1 1 0 0 0 0 -6.166775 1
## 3 1 0 1 1 0 0 -6.166666 1
## 4 1 1 1 0 0 0 -6.166623 1
## 5 1 0 1 0 1 0 -6.166517 1
## 6 0 1 1 0 0 0 -6.166502 1
## 7 1 1 0 1 0 0 -6.166464 1
## 8 0 1 1 1 0 0 -6.166456 1
## 9 1 0 0 1 0 0 -6.166395 1
## 10 1 1 0 0 1 0 -6.166272 1
## 11 1 1 1 1 0 0 -6.166269 1
## 12 1 0 1 1 1 0 -6.166151 1
## 13 1 1 1 0 1 0 -6.166100 1
## 14 0 0 1 1 0 0 -6.166047 1
## 15 0 1 1 0 1 0 -6.166005 1
## 16 1 1 0 1 1 0 -6.165942 1
## 17 0 1 1 1 1 0 -6.165935 1
## 18 1 0 0 1 1 0 -6.165902 1
## 19 1 1 1 1 1 0 -6.165763 1
## 20 0 0 1 1 1 0 -6.165558 1
## 21 1 0 0 0 0 0 -6.164349 1
## 22 1 0 0 0 1 0 -6.163884 1
## 23 0 0 1 0 0 0 -6.163613 1
## 24 0 0 1 0 1 0 -6.163159 1
## 25 0 1 0 0 0 0 -6.161342 1
## 26 0 0 0 1 0 0 -6.161212 1
## 27 0 1 0 0 1 0 -6.160893 1
## 28 0 0 0 1 1 0 -6.160767 1
## 29 0 1 0 1 0 0 -6.160645 1
## 30 0 1 0 1 1 0 -6.160186 1
## 31 0 0 0 0 1 0 -6.157713 1
autoarfima(data$SSEC,ar.max = 2, ma.max = 2, criterion = "AIC", method = "full")
## $fit
##
## *----------------------------------*
## * ARFIMA Model Fit *
## *----------------------------------*
## Mean Model : ARFIMA(2,0,2)
## Distribution : norm
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## ar1 0.055127 0.013208 4.1737 0.000030
## ar2 -0.971151 0.008085 -120.1147 0.000000
## ma1 -0.050523 0.018106 -2.7904 0.005265
## ma2 0.942245 0.013031 72.3097 0.000000
## sigma 0.013601 0.000197 69.0592 0.000000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## ar1 0.055127 0.017658 3.1219 0.001797
## ar2 -0.971151 0.015511 -62.6109 0.000000
## ma1 -0.050523 0.023183 -2.1793 0.029310
## ma2 0.942245 0.011777 80.0089 0.000000
## sigma 0.013601 0.000740 18.3682 0.000000
##
## LogLikelihood : 6862.742
##
## Information Criteria
## ------------------------------------
##
## Akaike -5.7531
## Bayes -5.7410
## Shibata -5.7531
## Hannan-Quinn -5.7487
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 2.606 1.065e-01
## Lag[2*(p+q)+(p+q)-1][11] 11.784 1.521e-14
## Lag[4*(p+q)+(p+q)-1][19] 19.042 9.667e-04
##
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 102.4 0
## Lag[2*(p+q)+(p+q)-1][2] 158.8 0
## Lag[4*(p+q)+(p+q)-1][5] 315.9 0
##
##
## ARCH LM Tests
## ------------------------------------
## Statistic DoF P-Value
## ARCH Lag[2] 177.8 2 0
## ARCH Lag[5] 272.4 5 0
## ARCH Lag[10] 295.4 10 0
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 2.1169
## Individual Statistics:
## ar1 0.06799
## ar2 0.16695
## ma1 0.10248
## ma2 0.20467
## sigma 1.69092
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 1.28 1.47 1.88
## Individual Statistic: 0.35 0.47 0.75
##
##
## Elapsed time : 0.159405
##
##
## $rank.matrix
## ar1 ar2 ma1 ma2 im arf AIC converged
## 1 1 1 1 1 0 0 -5.753139 1
## 2 1 1 1 1 1 0 -5.752335 1
## 3 1 1 0 1 0 0 -5.752193 1
## 4 1 1 0 1 1 0 -5.751389 1
## 5 0 1 1 1 0 0 -5.751083 1
## 6 0 1 1 1 1 0 -5.750278 1
## 7 0 1 0 1 0 0 -5.750191 1
## 8 0 1 0 1 1 0 -5.749387 1
## 9 1 0 1 0 0 0 -5.746021 1
## 10 1 0 1 0 1 0 -5.745214 1
## 11 0 1 1 0 0 0 -5.743315 1
## 12 1 1 0 0 0 0 -5.743251 1
## 13 0 0 1 1 0 0 -5.743246 1
## 14 1 0 0 1 0 0 -5.743186 1
## 15 0 0 1 0 0 0 -5.742679 1
## 16 0 1 0 0 0 0 -5.742646 1
## 17 1 1 1 0 0 0 -5.742589 1
## 18 1 0 0 0 0 0 -5.742566 1
## 19 1 0 1 1 0 0 -5.742536 1
## 20 0 0 0 1 0 0 -5.742523 1
## 21 0 1 1 0 1 0 -5.742509 1
## 22 1 1 0 0 1 0 -5.742446 1
## 23 0 0 1 1 1 0 -5.742440 1
## 24 1 0 0 1 1 0 -5.742380 1
## 25 0 0 1 0 1 0 -5.741871 1
## 26 0 1 0 0 1 0 -5.741843 1
## 27 1 1 1 0 1 0 -5.741785 1
## 28 1 0 0 0 1 0 -5.741757 1
## 29 1 0 1 1 1 0 -5.741739 1
## 30 0 0 0 1 1 0 -5.741720 1
## 31 0 0 0 0 1 0 -5.741262 1
CÁC DẠNG MÔ HÌNH CHO CHUỖI VNI
GJR-GARCH(11)VNI
vni.garch11n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
vni.garch11n.fit <- ugarchfit(spec = vni.garch11n.spec, data = data$VNI)
vni.garch11t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
vni.garch11t.fit <- ugarchfit(spec = vni.garch11t.spec, data = data$VNI)
vni.garch11st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
vni.garch11st.fit <- ugarchfit(spec = vni.garch11st.spec, data = data$VNI)
vni.garch11g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
vni.garch11g.fit <- ugarchfit(spec = vni.garch11g.spec, data = data$VNI)
vni.garch11sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
vni.garch11sg.fit <- ugarchfit(spec = vni.garch11sg.spec, data = data$VNI)
GJR-GARCH(12)VNI
vni.garch12n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
vni.garch12n.fit <- ugarchfit(spec = vni.garch12n.spec, data = data$VNI)
vni.garch12t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
vni.garch12t.fit <- ugarchfit(spec = vni.garch12t.spec, data = data$VNI)
vni.garch12st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
vni.garch12st.fit <- ugarchfit(spec = vni.garch12st.spec, data = data$VNI)
vni.garch12g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
vni.garch12g.fit <- ugarchfit(spec = vni.garch12g.spec, data = data$VNI)
vni.garch12sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
vni.garch12sg.fit <- ugarchfit(spec = vni.garch12sg.spec, data = data$VNI)
GJR-GARCH(21)VNI
vni.garch21n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
vni.garch21n.fit <- ugarchfit(spec = vni.garch21n.spec, data = data$VNI)
vni.garch21t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
vni.garch21t.fit <- ugarchfit(spec = vni.garch21t.spec, data = data$VNI)
vni.garch21st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
vni.garch21st.fit <- ugarchfit(spec = vni.garch21st.spec, data = data$VNI)
vni.garch21g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
vni.garch21g.fit <- ugarchfit(spec = vni.garch21g.spec, data = data$VNI)
vni.garch21sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
vni.garch21sg.fit <- ugarchfit(spec = vni.garch21sg.spec, data = data$VNI)
GJR-GARCH(22)VNI
vni.garch22n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
vni.garch22n.fit <- ugarchfit(spec = vni.garch22n.spec, data = data$VNI)
vni.garch22t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
vni.garch22t.fit <- ugarchfit(spec = vni.garch22t.spec, data = data$VNI)
vni.garch22st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
vni.garch22st.fit <- ugarchfit(spec = vni.garch22st.spec, data = data$VNI)
vni.garch22g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
vni.garch22g.fit <- ugarchfit(spec = vni.garch22g.spec, data = data$VNI)
vni.garch22sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
vni.garch22sg.fit <- ugarchfit(spec = vni.garch22sg.spec, data = data$VNI)
CÁC DẠNG MÔ HÌNH CHO CHUỖI SSEC
GJR-GARCH(11)SSEC
ssec.garch11n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
ssec.garch11n.fit <- ugarchfit(spec = ssec.garch11n.spec, data = data$SSEC)
ssec.garch11t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
ssec.garch11t.fit <- ugarchfit(spec = ssec.garch11t.spec, data = data$SSEC)
ssec.garch11st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
ssec.garch11st.fit <- ugarchfit(spec = ssec.garch11st.spec, data = data$SSEC)
ssec.garch11g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
ssec.garch11g.fit <- ugarchfit(spec = ssec.garch11g.spec, data = data$SSEC)
ssec.garch11sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
ssec.garch11sg.fit <- ugarchfit(spec = ssec.garch11sg.spec, data = data$SSEC)
GJR-GARCH(12)SSEC
ssec.garch12n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
ssec.garch12n.fit <- ugarchfit(spec = ssec.garch12n.spec, data = data$SSEC)
ssec.garch12t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
ssec.garch12t.fit <- ugarchfit(spec = ssec.garch12t.spec, data = data$SSEC)
ssec.garch12st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)),mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
ssec.garch12st.fit <- ugarchfit(spec = ssec.garch12st.spec, data = data$SSEC)
ssec.garch12g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
ssec.garch12g.fit <- ugarchfit(spec = ssec.garch12g.spec, data = data$SSEC)
ssec.garch12sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(1, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
ssec.garch12sg.fit <- ugarchfit(spec = ssec.garch12sg.spec, data = data$SSEC)
GJR-GARCH(21)SSEC
ssec.garch21n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
ssec.garch21n.fit <- ugarchfit(spec = ssec.garch21n.spec, data = data$SSEC)
ssec.garch21t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
ssec.garch21t.fit <- ugarchfit(spec = ssec.garch21t.spec, data = data$SSEC)
ssec.garch21st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
ssec.garch21st.fit <- ugarchfit(spec = ssec.garch21st.spec, data = data$SSEC)
ssec.garch21g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
ssec.garch21g.fit <- ugarchfit(spec = ssec.garch21g.spec, data = data$SSEC)
ssec.garch21sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 1)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
ssec.garch21sg.fit <- ugarchfit(spec = ssec.garch21sg.spec, data = data$SSEC)
GJR-GARCH(22)SSEC
ssec.garch22n.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "norm")
ssec.garch22n.fit <- ugarchfit(spec = ssec.garch22n.spec, data = data$SSEC)
ssec.garch22t.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "std")
ssec.garch22t.fit <- ugarchfit(spec = ssec.garch22t.spec, data = data$SSEC)
ssec.garch22st.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sstd")
ssec.garch22st.fit <- ugarchfit(spec = ssec.garch22st.spec, data = data$SSEC)
ssec.garch22g.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "ged")
ssec.garch22g.fit <- ugarchfit(spec = ssec.garch22g.spec, data = data$SSEC)
ssec.garch22sg.spec <- ugarchspec(variance.model = list(model = "gjrGARCH", garchOrder = c(2, 2)), mean.model = list(armaOrder = c(2, 2), include.mean = TRUE), distribution.model = "sged")
ssec.garch22sg.fit <- ugarchfit(spec = ssec.garch22sg.spec, data = data$SSEC)
LỰA CHỌN MÔ HÌNH GJR-GARCH
VNI
vni.model.list <- list(garch11n = vni.garch11n.fit, garch11t = vni.garch11t.fit, garch11st = vni.garch11st.fit, garch11g = vni.garch11g.fit, garch11sg = vni.garch11sg.fit, garch12n = vni.garch12n.fit, garch12t = vni.garch12t.fit, garch12st = vni.garch12st.fit, garch12g = vni.garch12g.fit, garch12sg = vni.garch12sg.fit, garch21n = vni.garch21n.fit, garch21t = vni.garch21t.fit, garch21st = vni.garch21st.fit, garch21g = vni.garch21g.fit, garch21sg = vni.garch21sg.fit, garch22n = vni.garch22n.fit, garch22t = vni.garch22t.fit, garch22st = vni.garch22st.fit, garch22g =vni.garch22g.fit, garch22sg = vni.garch22sg.fit)
vni.info.mat <- sapply(vni.model.list, infocriteria)
rownames(vni.info.mat) <- rownames(infocriteria(vni.garch11n.fit))
vni.info.mat
## garch11n garch11t garch11st garch11g garch11sg garch12n
## Akaike -6.366443 -6.392991 -6.393128 -6.392391 -6.392347 -6.365604
## Bayes -6.344636 -6.368761 -6.366475 -6.368160 -6.365693 -6.341374
## Shibata -6.366471 -6.393026 -6.393171 -6.392426 -6.392389 -6.365639
## Hannan-Quinn -6.358507 -6.384173 -6.383428 -6.383573 -6.382647 -6.356786
## garch12t garch12st garch12g garch12sg garch21n garch21t
## Akaike -6.392152 -6.392289 -6.391551 -6.391508 -6.367030 -6.392465
## Bayes -6.365499 -6.363213 -6.364898 -6.362431 -6.340376 -6.363388
## Shibata -6.392195 -6.392340 -6.391594 -6.391558 -6.367072 -6.392515
## Hannan-Quinn -6.382452 -6.381708 -6.381852 -6.380926 -6.357330 -6.381883
## garch21st garch21g garch21sg garch22n garch22t garch22st
## Akaike -6.392565 -6.391993 -6.391908 -6.365906 -6.391740 -6.391829
## Bayes -6.361065 -6.362917 -6.360409 -6.336830 -6.360241 -6.357906
## Shibata -6.392624 -6.392044 -6.391967 -6.365957 -6.391799 -6.391897
## Hannan-Quinn -6.381101 -6.381412 -6.380445 -6.355325 -6.380277 -6.379483
## garch22g garch22sg
## Akaike -6.391284 -6.391190
## Bayes -6.359785 -6.357268
## Shibata -6.391343 -6.391259
## Hannan-Quinn -6.379821 -6.378845
vni.inds <- which(vni.info.mat == min(vni.info.mat), arr.ind=TRUE)
model.vni <- colnames(vni.info.mat)[vni.inds[,2]]
model.vni
## [1] "garch11st"
SSEC
ssec.model.list <- list(garch11n = ssec.garch11n.fit, garch11t = ssec.garch11t.fit, garch11st = ssec.garch11st.fit, garch11g = ssec.garch11g.fit, garch11sg = ssec.garch11sg.fit, garch12n = ssec.garch12n.fit, garch12t = ssec.garch12t.fit, garch12st = ssec.garch12st.fit, garch12g = ssec.garch12g.fit, garch12sg = ssec.garch12sg.fit, garch21n = ssec.garch21n.fit, garch21t = ssec.garch21t.fit, garch21st = ssec.garch21st.fit, garch21g = ssec.garch21g.fit, garch21sg = ssec.garch21sg.fit, garch22n = ssec.garch22n.fit, garch22t = ssec.garch22t.fit, garch22st = ssec.garch22st.fit, garch22g =ssec.garch22g.fit, garch22sg = ssec.garch22sg.fit)
ssec.info.mat <- sapply(ssec.model.list, infocriteria)
rownames(ssec.info.mat) <- rownames(infocriteria(ssec.garch11n.fit))
ssec.info.mat
## garch11n garch11t garch11st garch11g garch11sg garch12n
## Akaike -6.057687 -6.131470 -6.131821 -6.140891 -6.141646 -6.056411
## Bayes -6.035880 -6.107239 -6.105167 -6.116661 -6.114993 -6.032181
## Shibata -6.057715 -6.131505 -6.131863 -6.140926 -6.141688 -6.056446
## Hannan-Quinn -6.049751 -6.122652 -6.122121 -6.132073 -6.131946 -6.047593
## garch12t garch12st garch12g garch12sg garch21n garch21t
## Akaike -6.130920 -6.130982 -6.139999 -6.140807 -6.059343 -6.132070
## Bayes -6.104267 -6.101905 -6.113346 -6.111731 -6.032690 -6.102994
## Shibata -6.130963 -6.131032 -6.140041 -6.140857 -6.059386 -6.132121
## Hannan-Quinn -6.121220 -6.120400 -6.130299 -6.130225 -6.049644 -6.121489
## garch21st garch21g garch21sg garch22n garch22t garch22st
## Akaike -6.132096 -6.144553 -6.141769 -6.059958 -6.130410 -6.131790
## Bayes -6.100596 -6.115477 -6.110270 -6.030882 -6.098911 -6.097868
## Shibata -6.132155 -6.144603 -6.141828 -6.060009 -6.130469 -6.131859
## Hannan-Quinn -6.120633 -6.133971 -6.130306 -6.049377 -6.118947 -6.119445
## garch22g garch22sg
## Akaike -6.143714 -6.140930
## Bayes -6.112215 -6.107008
## Shibata -6.143773 -6.140999
## Hannan-Quinn -6.132251 -6.128585
ssec.inds <- which(ssec.info.mat == min(ssec.info.mat), arr.ind=TRUE)
model.ssec <- colnames(ssec.info.mat)[ssec.inds[,2]]
model.ssec
## [1] "garch21g"
THAM SỐ ƯỚC LƯỢNG MÔ HÌNH BIÊN PHÙ HỢP NHẤT
vni.garch11sg.fit
##
## *---------------------------------*
## * GARCH Model Fit *
## *---------------------------------*
##
## Conditional Variance Dynamics
## -----------------------------------
## GARCH Model : gjrGARCH(1,1)
## Mean Model : ARFIMA(2,0,2)
## Distribution : sged
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000797 0.000226 -3.5271 0.000420
## ar1 0.436795 0.075053 5.8198 0.000000
## ar2 0.246978 0.053969 4.5763 0.000005
## ma1 -0.347756 0.076354 -4.5545 0.000005
## ma2 -0.266452 0.056757 -4.6946 0.000003
## omega 0.000003 0.000002 1.5328 0.125318
## alpha1 0.068089 0.020390 3.3394 0.000840
## beta1 0.850880 0.024265 35.0660 0.000000
## gamma1 0.142334 0.032796 4.3400 0.000014
## skew 1.036017 0.026391 39.2571 0.000000
## shape 1.451977 0.059863 24.2551 0.000000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000797 0.000197 -4.04500 0.000052
## ar1 0.436795 0.020067 21.76630 0.000000
## ar2 0.246978 0.018742 13.17786 0.000000
## ma1 -0.347756 0.022088 -15.74380 0.000000
## ma2 -0.266452 0.023329 -11.42143 0.000000
## omega 0.000003 0.000007 0.44094 0.659256
## alpha1 0.068089 0.039697 1.71524 0.086302
## beta1 0.850880 0.067721 12.56458 0.000000
## gamma1 0.142334 0.045953 3.09737 0.001952
## skew 1.036017 0.028052 36.93247 0.000000
## shape 1.451977 0.074537 19.48000 0.000000
##
## LogLikelihood : 7630.677
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.3923
## Bayes -6.3657
## Shibata -6.3924
## Hannan-Quinn -6.3826
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 2.726 9.871e-02
## Lag[2*(p+q)+(p+q)-1][11] 9.218 1.797e-06
## Lag[4*(p+q)+(p+q)-1][19] 14.334 4.614e-02
## d.o.f=4
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.9969 0.3181
## Lag[2*(p+q)+(p+q)-1][5] 3.1926 0.3730
## Lag[4*(p+q)+(p+q)-1][9] 4.5666 0.4957
## d.o.f=2
##
## Weighted ARCH LM Tests
## ------------------------------------
## Statistic Shape Scale P-Value
## ARCH Lag[3] 0.07695 0.500 2.000 0.7815
## ARCH Lag[5] 0.31165 1.440 1.667 0.9371
## ARCH Lag[7] 1.35787 2.315 1.543 0.8494
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 25.6843
## Individual Statistics:
## mu 0.4214
## ar1 0.3319
## ar2 0.1068
## ma1 0.3929
## ma2 0.1176
## omega 7.1863
## alpha1 1.0807
## beta1 0.9517
## gamma1 0.4628
## skew 0.1018
## shape 0.1728
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 2.49 2.75 3.27
## Individual Statistic: 0.35 0.47 0.75
##
## Sign Bias Test
## ------------------------------------
## t-value prob sig
## Sign Bias 0.7438 0.4571
## Negative Sign Bias 0.1286 0.8977
## Positive Sign Bias 0.3159 0.7521
## Joint Effect 0.7016 0.8728
##
##
## Adjusted Pearson Goodness-of-Fit Test:
## ------------------------------------
## group statistic p-value(g-1)
## 1 20 15.87 0.6662
## 2 30 21.49 0.8408
## 3 40 36.17 0.5998
## 4 50 36.68 0.9029
##
##
## Elapsed time : 2.412114
ssec.garch21sg.fit
##
## *---------------------------------*
## * GARCH Model Fit *
## *---------------------------------*
##
## Conditional Variance Dynamics
## -----------------------------------
## GARCH Model : gjrGARCH(2,1)
## Mean Model : ARFIMA(2,0,2)
## Distribution : sged
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000236 0.000141 -1.671411 0.094641
## ar1 -0.394866 0.023105 -17.090233 0.000000
## ar2 0.392818 0.034386 11.423775 0.000000
## ma1 0.421460 0.022620 18.631810 0.000000
## ma2 -0.396321 0.032680 -12.127353 0.000000
## omega 0.000001 0.000001 1.106306 0.268594
## alpha1 0.000000 0.039971 0.000002 0.999998
## alpha2 0.031033 0.039179 0.792095 0.428305
## beta1 0.935477 0.009711 96.335043 0.000000
## gamma1 0.102831 0.085731 1.199456 0.230351
## gamma2 -0.039670 0.085082 -0.466248 0.641038
## skew 1.040878 0.019821 52.514116 0.000000
## shape 1.155721 0.043553 26.535799 0.000000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000236 0.000113 -2.091448 0.036488
## ar1 -0.394866 0.008609 -45.867049 0.000000
## ar2 0.392818 0.011150 35.230100 0.000000
## ma1 0.421460 0.008254 51.062546 0.000000
## ma2 -0.396321 0.011409 -34.737471 0.000000
## omega 0.000001 0.000003 0.363441 0.716276
## alpha1 0.000000 0.066789 0.000001 0.999999
## alpha2 0.031033 0.078525 0.395203 0.692693
## beta1 0.935477 0.040832 22.910417 0.000000
## gamma1 0.102831 0.142406 0.722095 0.470236
## gamma2 -0.039670 0.141425 -0.280499 0.779095
## skew 1.040878 0.020691 50.305614 0.000000
## shape 1.155721 0.061121 18.908599 0.000000
##
## LogLikelihood : 7333.989
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.1418
## Bayes -6.1103
## Shibata -6.1418
## Hannan-Quinn -6.1303
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.5904 0.44225
## Lag[2*(p+q)+(p+q)-1][11] 7.2533 0.02374
## Lag[4*(p+q)+(p+q)-1][19] 13.1398 0.10070
## d.o.f=4
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 1.342 0.2466
## Lag[2*(p+q)+(p+q)-1][8] 3.676 0.5627
## Lag[4*(p+q)+(p+q)-1][14] 6.660 0.5504
## d.o.f=3
##
## Weighted ARCH LM Tests
## ------------------------------------
## Statistic Shape Scale P-Value
## ARCH Lag[4] 0.7614 0.500 2.000 0.3829
## ARCH Lag[6] 1.0732 1.461 1.711 0.7268
## ARCH Lag[8] 2.8211 2.368 1.583 0.5774
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 200.2766
## Individual Statistics:
## mu 0.38195
## ar1 0.08052
## ar2 0.10805
## ma1 0.08819
## ma2 0.11351
## omega 39.05832
## alpha1 0.07680
## alpha2 0.07104
## beta1 0.15373
## gamma1 0.06844
## gamma2 0.06985
## skew 0.26919
## shape 0.10428
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 2.89 3.15 3.69
## Individual Statistic: 0.35 0.47 0.75
##
## Sign Bias Test
## ------------------------------------
## t-value prob sig
## Sign Bias 3.2455 0.001189 ***
## Negative Sign Bias 1.7402 0.081953 *
## Positive Sign Bias 0.4438 0.657225
## Joint Effect 11.8882 0.007776 ***
##
##
## Adjusted Pearson Goodness-of-Fit Test:
## ------------------------------------
## group statistic p-value(g-1)
## 1 20 23.32 0.2237
## 2 30 25.36 0.6593
## 3 40 41.94 0.3446
## 4 50 55.05 0.2564
##
##
## Elapsed time : 4.921214
KIỂM ĐỊNH SỰ PHÙ HỢP CỦA MÔ HÌNH BIÊN
Trích xuất chuỗi phần dư u của chuỗi SSEC
ssec.res <- residuals(ssec.garch21sg.fit)/sigma(ssec.garch21sg.fit)
fitdist(distribution = "sged", ssec.res, control = list())
## Warning in .safefunx(tmpv, .solnp_fun, .env, ...):
## solnp-->warning: NaN detected in function call...check your function
## $pars
## mu sigma skew shape
## 0.01503747 1.00751683 1.05140860 1.15069526
##
## $convergence
## [1] 0
##
## $values
## [1] 3399.361 3296.763 3296.763
##
## $lagrange
## [1] 0
##
## $hessian
## [,1] [,2] [,3] [,4]
## [1,] 4576.81922 -356.3468 -3203.645129 -61.458485
## [2,] -356.34681 2523.1677 46.470702 447.986405
## [3,] -3203.64513 46.4707 4723.874902 8.800095
## [4,] -61.45848 447.9864 8.800095 558.243047
##
## $ineqx0
## NULL
##
## $nfuneval
## [1] 98
##
## $outer.iter
## [1] 2
##
## $elapsed
## Time difference of 0.427146 secs
##
## $vscale
## [1] 1 1 1 1 1
u <- pdist(distribution = "sged", q = ssec.res, mu = 0.02248133 , sigma = 0.97950016 , shape= 1.19047131)
Trích xuất chuỗi phần dư v của chuỗi VNI
vni.res <- residuals(vni.garch11sg.fit)/sigma(vni.garch11sg.fit)
fitdist(distribution = "sged", vni.res, control = list())
## $pars
## mu sigma skew shape
## 0.02160465 0.99897382 1.04530890 1.45334649
##
## $convergence
## [1] 0
##
## $values
## [1] 3383.145 3349.234 3349.234
##
## $lagrange
## [1] 0
##
## $hessian
## [,1] [,2] [,3] [,4]
## [1,] 2656.54903 -128.96291 -858.40500 -15.57018
## [2,] -128.96291 3343.67978 -73.38506 222.18609
## [3,] -858.40500 -73.38506 1958.56388 -35.11864
## [4,] -15.57018 222.18609 -35.11864 313.79811
##
## $ineqx0
## NULL
##
## $nfuneval
## [1] 92
##
## $outer.iter
## [1] 2
##
## $elapsed
## Time difference of 0.434989 secs
##
## $vscale
## [1] 1 1 1 1 1
v <- pdist("sged",vni.res, mu = 0.02640162, sigma = 1.00144379 , skew = 1.06670509, shape = 1.36529700)
Các kiểm định sự phù hợp mô hình biên
Kiểm định Anderson-Darling (A-D)
ad.test(u, "punif")
##
## Anderson-Darling test of goodness-of-fit
## Null hypothesis: uniform distribution
## Parameters assumed to be fixed
##
## data: u
## An = 1.6269, p-value = 0.1489
ad.test(v, "punif")
##
## Anderson-Darling test of goodness-of-fit
## Null hypothesis: uniform distribution
## Parameters assumed to be fixed
##
## data: v
## An = 0.70066, p-value = 0.5583
Kiểm định Cramer-von Mises (Cv-M)
cvm.test(u, "punif")
##
## Cramer-von Mises test of goodness-of-fit
## Null hypothesis: uniform distribution
## Parameters assumed to be fixed
##
## data: u
## omega2 = 0.31025, p-value = 0.1265
cvm.test(v, "punif")
##
## Cramer-von Mises test of goodness-of-fit
## Null hypothesis: uniform distribution
## Parameters assumed to be fixed
##
## data: v
## omega2 = 0.12555, p-value = 0.4735
Kiểm định Kolmogorov-Smornov (K-S).
ks.test(u, "punif")
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: u
## D = 0.02939, p-value = 0.03254
## alternative hypothesis: two-sided
ks.test(v, "punif")
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: v
## D = 0.020041, p-value = 0.2938
## alternative hypothesis: two-sided
ƯỚC LƯỢNG THAM SỐ COUPULA
BiCopSelect(u, v, familyset= NA, selectioncrit="AIC",indeptest = FALSE, level = 0.05)
## Bivariate copula: Survival BB1 (par = 0.13, par2 = 1.03, tau = 0.09)
Stu <- BiCopEst(u, v, family = 7, method = "mle", se = T, max.df = 10)
summary(Stu)
## Family
## ------
## No: 7
## Name: BB1
##
## Parameter(s)
## ------------
## par: 0.04 (SE = 0.03)
## par2: 1.07 (SE = 0.02)
## Dependence measures
## -------------------
## Kendall's tau: 0.09 (empirical = 0.09, p value < 0.01)
## Upper TD: 0.09
## Lower TD: 0
##
## Fit statistics
## --------------
## logLik: 28.63
## AIC: -53.26
## BIC: -41.71