GARCH Models in R
Kris Boudt
Professor of finance and econometrics
การกำหนดสเปกที่เหมาะสม คือ ค่าเฉลี่ยคงที่, GARCH(1, 1) มาตรฐานที่ใช้การแจกแจงแบบ student t:
garchspec <- ugarchspec(mean.model = list(armaOrder = c(0, 0)),
variance.model = list(model = "sGARCH"),
distribution.model = "std")
setfixed()setbounds()การกำหนดสเปกและการประมาณค่า
garchspec <- ugarchspec(mean.model = list(armaOrder = c(0, 0)),
variance.model = list(model = "sGARCH"),
distribution.model = "std")
garchfit <- ugarchfit(data = EURUSDret, spec = garchspec)
ผลการประมาณค่า
coef(garchfit)
mu omega alpha1 beta1 shape
-3.562136e-05 8.005123e-08 3.097322e-02 9.674496e-01 8.821902e+00
alpha1 = 0.05 และ shape = 6: ให้กำหนดค่าเหล่านั้นในการประมาณค่าsetfixed() บนออบเจกต์ ugarchspecsetfixed(garchspec) <- list(alpha1 = 0.05, shape = 6)
ผลลัพธ์
garchfit <- ugarchfit(data = EURUSDret, spec = garchspec)
coef(garchfit)
mu omega alpha1 beta1 shape
-4.142922e-05 2.061772e-07 5.000000e-02 9.489622e-01 6.000000e+00
setbounds()setbounds(garchspec) <- list(alpha1 = c(0.05, 0.2), beta1 = c(0.8, 0.95))
นำข้อมูลที่มีมาใช้:
เพื่อให้ไดนามิก GARCH สมจริง:
sd(EURUSDret) # returns a value of 0.006194049

variance.targeting = TRUE ใน variance.model ของ ugarchspec():garchspec <- ugarchspec(mean.model = list(armaOrder = c(0,0)),
variance.model = list(model = "sGARCH",
variance.targeting = TRUE),
distribution.model = "std")
garchfit <- ugarchfit(data = EURUSDret, spec = garchspec)
all.equal(uncvariance(garchfit), sd(EURUSDret) ^ 2, tol = 1e-4)
TRUE
GARCH Models in R