autoarfima(data$VNI,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.052129 0.031817 1.6384 0.10134
## ar2 -0.776066 0.093209 -8.3261 0.00000
## ma1 0.000000 NA NA NA
## ma2 0.863681 0.076564 11.2806 0.00000
## sigma 0.013688 0.000444 30.8221 0.00000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## ar1 0.052129 0.044636 1.1679 0.24286
## ar2 -0.776066 0.098044 -7.9155 0.00000
## ma1 0.000000 NA NA NA
## ma2 0.863681 0.082671 10.4471 0.00000
## sigma 0.013688 0.000800 17.1209 0.00000
##
## LogLikelihood : 1364.327
##
## Information Criteria
## ------------------------------------
##
## Akaike -5.7277
## Bayes -5.6926
## Shibata -5.7278
## Hannan-Quinn -5.7139
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.01633 0.8983
## Lag[2*(p+q)+(p+q)-1][11] 4.19363 0.9996
## Lag[4*(p+q)+(p+q)-1][19] 8.35759 0.7421
##
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 21.84 2.964e-06
## Lag[2*(p+q)+(p+q)-1][2] 30.98 5.867e-09
## Lag[4*(p+q)+(p+q)-1][5] 49.26 1.035e-13
##
##
## ARCH LM Tests
## ------------------------------------
## Statistic DoF P-Value
## ARCH Lag[2] 32.71 2 7.873e-08
## ARCH Lag[5] 44.38 5 1.940e-08
## ARCH Lag[10] 69.20 10 6.319e-11
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 1.3969
## Individual Statistics:
## ar1 0.09875
## ar2 0.08007
## ma2 0.05782
## sigma 0.61896
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 1.07 1.24 1.6
## Individual Statistic: 0.35 0.47 0.75
##
##
## Elapsed time : 0.02531409
##
##
## $rank.matrix
## ar1 ar2 ma1 ma2 im arf AIC converged
## 1 1 1 0 1 0 0 -5.727694 1
## 2 0 1 1 1 0 0 -5.726605 1
## 3 1 1 0 1 1 0 -5.726220 1
## 4 0 1 0 1 0 0 -5.725244 1
## 5 0 1 1 1 1 0 -5.725218 1
## 6 0 1 0 1 1 0 -5.723954 1
## 7 1 1 1 1 0 0 -5.723869 1
## 8 1 1 1 1 1 0 -5.722349 1
## 9 0 0 0 1 0 0 -5.715729 1
## 10 0 1 0 0 0 0 -5.715307 1
## 11 0 0 1 1 0 0 -5.714761 1
## 12 0 0 0 1 1 0 -5.714239 1
## 13 1 0 0 1 0 0 -5.714155 1
## 14 0 1 0 0 1 0 -5.713818 1
## 15 0 1 1 0 0 0 -5.713703 1
## 16 1 1 0 0 0 0 -5.713336 1
## 17 0 0 1 1 1 0 -5.712978 1
## 18 0 0 0 0 1 0 -5.712817 1
## 19 1 0 0 1 1 0 -5.712401 1
## 20 1 0 0 0 0 0 -5.712234 1
## 21 1 0 1 1 0 0 -5.712014 1
## 22 0 1 1 0 1 0 -5.711952 1
## 23 0 0 1 0 0 0 -5.711895 1
## 24 1 0 1 0 0 0 -5.711845 1
## 25 1 1 0 0 1 0 -5.711599 1
## 26 1 0 0 0 1 0 -5.710881 1
## 27 0 0 1 0 1 0 -5.710590 1
## 28 1 0 1 1 1 0 -5.710299 1
## 29 1 1 1 0 0 0 -5.710255 1
## 30 1 0 1 0 1 0 -5.709663 1
## 31 1 1 1 0 1 0 -5.708569 1
autoarfima(data$SSEC,ar.max = 2, ma.max = 2, criterion = "AIC", method = "full")
## $fit
##
## *----------------------------------*
## * ARFIMA Model Fit *
## *----------------------------------*
## Mean Model : ARFIMA(0,0,2)
## Distribution : norm
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## ma1 0.000000 NA NA NA
## ma2 0.058290 0.048452 1.2031 0.22896
## sigma 0.011141 0.000361 30.8220 0.00000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## ma1 0.000000 NA NA NA
## ma2 0.058290 0.063676 0.91542 0.35997
## sigma 0.011141 0.000792 14.06605 0.00000
##
## LogLikelihood : 1462.127
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.1479
## Bayes -6.1304
## Shibata -6.1479
## Hannan-Quinn -6.1410
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.05266 0.8185
## Lag[2*(p+q)+(p+q)-1][5] 0.99279 1.0000
## Lag[4*(p+q)+(p+q)-1][9] 2.29525 0.9682
##
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.3313 0.5649
## Lag[2*(p+q)+(p+q)-1][2] 1.1182 0.4614
## Lag[4*(p+q)+(p+q)-1][5] 2.1192 0.5905
##
##
## ARCH LM Tests
## ------------------------------------
## Statistic DoF P-Value
## ARCH Lag[2] 1.845 2 0.3976
## ARCH Lag[5] 2.657 5 0.7526
## ARCH Lag[10] 10.828 10 0.3711
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 1.4247
## Individual Statistics:
## ma2 0.02655
## sigma 1.26562
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 0.61 0.749 1.07
## Individual Statistic: 0.35 0.47 0.75
##
##
## Elapsed time : 0.008608103
##
##
## $rank.matrix
## ar1 ar2 ma1 ma2 im arf AIC converged
## 1 0 0 0 1 0 0 -6.147903 1
## 2 0 1 0 0 0 0 -6.147557 1
## 3 1 1 1 1 0 0 -6.146873 1
## 4 0 1 0 1 0 0 -6.146197 1
## 5 0 0 0 0 1 0 -6.145738 1
## 6 1 0 0 0 0 0 -6.145028 1
## 7 0 0 1 0 0 0 -6.145014 1
## 8 0 0 0 1 1 0 -6.144461 1
## 9 0 1 0 0 1 0 -6.144120 1
## 10 1 0 0 1 0 0 -6.143788 1
## 11 0 0 1 1 0 0 -6.143758 1
## 12 1 1 1 1 1 0 -6.143473 1
## 13 1 1 0 0 0 0 -6.143462 1
## 14 0 1 1 0 0 0 -6.143431 1
## 15 0 1 1 1 0 0 -6.143176 1
## 16 0 1 0 1 1 0 -6.142798 1
## 17 1 1 0 1 0 0 -6.142744 1
## 18 1 0 1 0 0 0 -6.141815 1
## 19 1 0 0 0 1 0 -6.141693 1
## 20 0 0 1 0 1 0 -6.141678 1
## 21 1 0 0 1 1 0 -6.140362 1
## 22 0 0 1 1 1 0 -6.140330 1
## 23 1 1 0 0 1 0 -6.140045 1
## 24 0 1 1 0 1 0 -6.140010 1
## 25 1 0 1 1 0 0 -6.139851 1
## 26 0 1 1 1 1 0 -6.139809 1
## 27 1 1 1 0 0 0 -6.139526 1
## 28 1 1 0 1 1 0 -6.139375 1
## 29 1 0 1 0 1 0 -6.138490 1
## 30 1 0 1 1 1 0 -6.136444 1
## 31 1 1 1 0 1 0 -6.136117 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.094437 -6.185093 -6.182845 -6.192696 -6.190102 -6.090455
## Bayes -6.015553 -6.097444 -6.086432 -6.105047 -6.093688 -6.002806
## Shibata -6.095137 -6.185955 -6.183886 -6.193558 -6.191142 -6.091317
## Hannan-Quinn -6.063415 -6.150625 -6.144930 -6.158228 -6.152187 -6.055987
## garch12t garch12st garch12g garch12sg garch21n garch21t
## Akaike -6.181152 -6.178958 -6.188823 -6.186229 -6.087132 -6.177631
## Bayes -6.084739 -6.073780 -6.092409 -6.081050 -5.990718 -6.072452
## Shibata -6.182193 -6.180193 -6.189863 -6.187464 -6.088172 -6.178866
## Hannan-Quinn -6.143238 -6.137596 -6.150908 -6.144867 -6.049217 -6.136269
## garch21st garch21g garch21sg garch22n garch22t garch22st
## Akaike -6.175324 -6.185133 -6.182528 -6.084617 -6.173420 -6.171114
## Bayes -6.061381 -6.079955 -6.068585 -5.979439 -6.059477 -6.048405
## Shibata -6.176770 -6.186368 -6.183974 -6.085852 -6.174866 -6.172786
## Hannan-Quinn -6.130516 -6.143771 -6.137720 -6.043256 -6.128612 -6.122858
## garch22g garch22sg
## Akaike -6.180923 -6.178318
## Bayes -6.066980 -6.055610
## Shibata -6.182368 -6.179990
## Hannan-Quinn -6.136115 -6.130063
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] "garch11g"
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.305018 -6.376502 -6.372689 -6.376362 -6.353455 -6.300807
## Bayes -6.226134 -6.288853 -6.276275 -6.288713 -6.257041 -6.213158
## Shibata -6.305718 -6.377364 -6.373729 -6.377224 -6.354495 -6.301669
## Hannan-Quinn -6.273996 -6.342034 -6.334774 -6.341894 -6.315540 -6.266339
## garch12t garch12st garch12g garch12sg garch21n garch21t
## Akaike -6.372292 -6.368478 -6.332560 -6.349244 -6.282899 -6.378253
## Bayes -6.275878 -6.263300 -6.236146 -6.244066 -6.186485 -6.273074
## Shibata -6.373332 -6.369713 -6.333600 -6.350479 -6.283940 -6.379488
## Hannan-Quinn -6.334377 -6.327117 -6.294645 -6.307883 -6.244984 -6.336891
## garch21st garch21g garch21sg garch22n garch22t garch22st
## Akaike -6.374212 -6.355146 -6.351428 -6.295627 -6.374391 -6.370604
## Bayes -6.260269 -6.249967 -6.237485 -6.190449 -6.260447 -6.247896
## Shibata -6.375658 -6.356381 -6.352874 -6.296862 -6.375836 -6.372276
## Hannan-Quinn -6.329404 -6.313784 -6.306620 -6.254265 -6.329582 -6.322349
## garch22g garch22sg
## Akaike -6.374492 -6.347756
## Bayes -6.260549 -6.225048
## Shibata -6.375938 -6.349428
## Hannan-Quinn -6.329684 -6.299501
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] "garch21t"
THAM SỐ ƯỚC LƯỢNG MÔ HÌNH BIÊN PHÙ HỢP NHẤT
vni.garch11g.fit
##
## *---------------------------------*
## * GARCH Model Fit *
## *---------------------------------*
##
## Conditional Variance Dynamics
## -----------------------------------
## GARCH Model : gjrGARCH(1,1)
## Mean Model : ARFIMA(2,0,2)
## Distribution : ged
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## mu -0.002384 0.000197 -12.0931 0.000000
## ar1 0.210419 0.008278 25.4182 0.000000
## ar2 -0.983141 0.011353 -86.5944 0.000000
## ma1 -0.182421 0.009239 -19.7453 0.000000
## ma2 0.977150 0.008991 108.6811 0.000000
## omega 0.000012 0.000002 4.9615 0.000001
## alpha1 0.083781 0.038377 2.1831 0.029028
## beta1 0.691217 0.020677 33.4291 0.000000
## gamma1 0.448004 0.115412 3.8818 0.000104
## shape 1.077640 0.077952 13.8243 0.000000
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## mu -0.002384 0.000118 -20.2009 0.000000
## ar1 0.210419 0.004471 47.0639 0.000000
## ar2 -0.983141 0.008701 -112.9938 0.000000
## ma1 -0.182421 0.007682 -23.7470 0.000000
## ma2 0.977150 0.005894 165.7890 0.000000
## omega 0.000012 0.000004 3.3419 0.000832
## alpha1 0.083781 0.035290 2.3741 0.017593
## beta1 0.691217 0.048282 14.3162 0.000000
## gamma1 0.448004 0.125567 3.5678 0.000360
## shape 1.077640 0.076503 14.0863 0.000000
##
## LogLikelihood : 1480.765
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.1927
## Bayes -6.1050
## Shibata -6.1936
## Hannan-Quinn -6.1582
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.08846 0.7661
## Lag[2*(p+q)+(p+q)-1][11] 1.88332 1.0000
## Lag[4*(p+q)+(p+q)-1][19] 5.62284 0.9830
## d.o.f=4
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.03271 0.8565
## Lag[2*(p+q)+(p+q)-1][5] 3.83646 0.2752
## Lag[4*(p+q)+(p+q)-1][9] 5.67344 0.3375
## d.o.f=2
##
## Weighted ARCH LM Tests
## ------------------------------------
## Statistic Shape Scale P-Value
## ARCH Lag[3] 5.578 0.500 2.000 0.01819
## ARCH Lag[5] 6.497 1.440 1.667 0.04585
## ARCH Lag[7] 6.916 2.315 1.543 0.09053
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 5.4236
## Individual Statistics:
## mu 0.12287
## ar1 0.06745
## ar2 0.03330
## ma1 0.06480
## ma2 0.04758
## omega 1.55716
## alpha1 0.06398
## beta1 0.15957
## gamma1 0.08760
## shape 0.08900
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 2.29 2.54 3.05
## Individual Statistic: 0.35 0.47 0.75
##
## Sign Bias Test
## ------------------------------------
## t-value prob sig
## Sign Bias 0.06503 0.9482
## Negative Sign Bias 0.38998 0.6967
## Positive Sign Bias 0.53504 0.5929
## Joint Effect 0.69253 0.8750
##
##
## Adjusted Pearson Goodness-of-Fit Test:
## ------------------------------------
## group statistic p-value(g-1)
## 1 20 18.52 0.4883
## 2 30 38.16 0.1189
## 3 40 48.54 0.1408
## 4 50 45.53 0.6148
##
##
## Elapsed time : 0.9979138
ssec.garch21t.fit
##
## *---------------------------------*
## * GARCH Model Fit *
## *---------------------------------*
##
## Conditional Variance Dynamics
## -----------------------------------
## GARCH Model : gjrGARCH(2,1)
## Mean Model : ARFIMA(2,0,2)
## Distribution : std
##
## Optimal Parameters
## ------------------------------------
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000770 0.000393 -1.95708 0.050338
## ar1 -0.259636 0.006335 -40.98531 0.000000
## ar2 -0.981055 0.003425 -286.40886 0.000000
## ma1 0.239991 0.000901 266.23720 0.000000
## ma2 1.013336 0.000445 2277.55587 0.000000
## omega 0.000046 0.000019 2.47690 0.013253
## alpha1 0.000000 0.040851 0.00000 1.000000
## alpha2 0.185871 0.098921 1.87899 0.060246
## beta1 0.311876 0.220184 1.41643 0.156649
## gamma1 0.232607 0.136705 1.70152 0.088845
## gamma2 0.120810 0.218800 0.55215 0.580847
## shape 4.332515 0.928647 4.66541 0.000003
##
## Robust Standard Errors:
## Estimate Std. Error t value Pr(>|t|)
## mu -0.000770 0.000327 -2.35155 0.018695
## ar1 -0.259636 0.007929 -32.74572 0.000000
## ar2 -0.981055 0.011131 -88.13858 0.000000
## ma1 0.239991 0.001068 224.76441 0.000000
## ma2 1.013336 0.000711 1424.24077 0.000000
## omega 0.000046 0.000029 1.55747 0.119360
## alpha1 0.000000 0.035528 0.00000 1.000000
## alpha2 0.185871 0.098833 1.88066 0.060019
## beta1 0.311876 0.329459 0.94663 0.343827
## gamma1 0.232607 0.137923 1.68649 0.091701
## gamma2 0.120810 0.290889 0.41531 0.677913
## shape 4.332515 0.985026 4.39838 0.000011
##
## LogLikelihood : 1526.835
##
## Information Criteria
## ------------------------------------
##
## Akaike -6.3783
## Bayes -6.2731
## Shibata -6.3795
## Hannan-Quinn -6.3369
##
## Weighted Ljung-Box Test on Standardized Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.004272 0.9479
## Lag[2*(p+q)+(p+q)-1][11] 5.498152 0.7947
## Lag[4*(p+q)+(p+q)-1][19] 9.010217 0.6366
## d.o.f=4
## H0 : No serial correlation
##
## Weighted Ljung-Box Test on Standardized Squared Residuals
## ------------------------------------
## statistic p-value
## Lag[1] 0.9164 0.3384
## Lag[2*(p+q)+(p+q)-1][8] 1.5061 0.9265
## Lag[4*(p+q)+(p+q)-1][14] 4.8403 0.7890
## d.o.f=3
##
## Weighted ARCH LM Tests
## ------------------------------------
## Statistic Shape Scale P-Value
## ARCH Lag[4] 0.02456 0.500 2.000 0.8755
## ARCH Lag[6] 0.38213 1.461 1.711 0.9241
## ARCH Lag[8] 0.55935 2.368 1.583 0.9769
##
## Nyblom stability test
## ------------------------------------
## Joint Statistic: 2.1535
## Individual Statistics:
## mu 0.01962
## ar1 0.05316
## ar2 0.25873
## ma1 0.07399
## ma2 0.03829
## omega 0.32480
## alpha1 0.18298
## alpha2 0.23121
## beta1 0.26880
## gamma1 0.41336
## gamma2 0.11806
## shape 0.06368
##
## Asymptotic Critical Values (10% 5% 1%)
## Joint Statistic: 2.69 2.96 3.51
## Individual Statistic: 0.35 0.47 0.75
##
## Sign Bias Test
## ------------------------------------
## t-value prob sig
## Sign Bias 0.50992 0.6103
## Negative Sign Bias 0.06378 0.9492
## Positive Sign Bias 0.66241 0.5080
## Joint Effect 1.88441 0.5967
##
##
## Adjusted Pearson Goodness-of-Fit Test:
## ------------------------------------
## group statistic p-value(g-1)
## 1 20 13.80 0.7952
## 2 30 25.78 0.6373
## 3 40 33.04 0.7375
## 4 50 49.32 0.4605
##
##
## Elapsed time : 1.224915
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.garch21t.fit)/sigma(ssec.garch21t.fit)
fitdist(distribution = "std", ssec.res, control = list())
## $pars
## mu sigma shape
## 0.009135375 0.996530915 4.372547133
##
## $convergence
## [1] 0
##
## $values
## [1] 641.4801 640.9640 640.9640
##
## $lagrange
## [1] 0
##
## $hessian
## [,1] [,2] [,3]
## [1,] 665.520880 -5.724951 -1.577288
## [2,] -5.724951 563.773400 29.110445
## [3,] -1.577288 29.110445 3.111301
##
## $ineqx0
## NULL
##
## $nfuneval
## [1] 65
##
## $outer.iter
## [1] 2
##
## $elapsed
## Time difference of 0.01854801 secs
##
## $vscale
## [1] 1 1 1 1
u <- pdist(distribution = "std", q = ssec.res, mu = 0.009135375 , sigma = 0.996530915 , shape= 4.372547133)
Trích xuất chuỗi phần dư v của chuỗi VNI
vni.res <- residuals(vni.garch11g.fit)/sigma(vni.garch11g.fit)
fitdist(distribution = "ged", vni.res, control = list())
## $pars
## mu sigma shape
## 0.01086474 1.01546612 1.06732282
##
## $convergence
## [1] 0
##
## $values
## [1] 681.1419 654.2505 654.2505
##
## $lagrange
## [1] 0
##
## $hessian
## [,1] [,2] [,3]
## [1,] 4268.96329 109.84260 24.45826
## [2,] 109.84260 433.22152 56.43473
## [3,] 24.45826 56.43473 124.84151
##
## $ineqx0
## NULL
##
## $nfuneval
## [1] 74
##
## $outer.iter
## [1] 2
##
## $elapsed
## Time difference of 0.02475214 secs
##
## $vscale
## [1] 1 1 1 1
v <- pdist("ged",vni.res, mu = 0.01086474, sigma = 1.01546612 , shape = 1.06732282)
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 = 0.20899, p-value = 0.9878
ad.test(v, "punif")
##
## Anderson-Darling test of goodness-of-fit
## Null hypothesis: uniform distribution
## Parameters assumed to be fixed
##
## data: v
## An = 0.54881, p-value = 0.6976
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.026166, p-value = 0.9871
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.03493, p-value = 0.9575
Kiểm định Kolmogorov-Smornov (K-S).
ks.test(u, "punif")
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: u
## D = 0.02117, p-value = 0.9835
## alternative hypothesis: two-sided
ks.test(v, "punif")
##
## Asymptotic one-sample Kolmogorov-Smirnov test
##
## data: v
## D = 0.021734, p-value = 0.9783
## 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 BB7 (par = 1.1, par2 = 0.24, tau = 0.15)
Stu <- BiCopEst(u, v, family = 9, method = "mle", se = T, max.df = 10)
summary(Stu)
## Family
## ------
## No: 9
## Name: BB7
##
## Parameter(s)
## ------------
## par: 1.14 (SE = 0.05)
## par2: 0.17 (SE = 0.08)
## Dependence measures
## -------------------
## Kendall's tau: 0.14 (empirical = 0.15, p value < 0.01)
## Upper TD: 0.17
## Lower TD: 0.02
##
## Fit statistics
## --------------
## logLik: 14.33
## AIC: -24.66
## BIC: -16.33