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