Mô hình GARCH: Hướng đi tiếp theo

Các mô hình GARCH trong R

Kris Boudt

Professor of finance and econometrics

Nhà phát minh của mô hình GARCH

Robert Engle

Engle

Tim Bollerslev

Bollie

Các mô hình GARCH trong R

Ký hiệu (i)

  • Đầu vào: Chuỗi thời gian của lợi nhuận

Độ biến động dự báo

Các mô hình GARCH trong R

Ký hiệu (ii)

  • Tại thời điểm $t-1$, bạn dự báo lợi nhuận tương lai $R_t$ dựa trên bộ thông tin có tại $t-1$:

Độ biến động dự báo

Các mô hình GARCH trong R

Ký hiệu (iii)

  • Dự báo lợi nhuận kỳ vọng: dự báo tốt nhất cho lợi nhuận thực là gì? Độ biến động dự báo
Các mô hình GARCH trong R

Ký hiệu (iv)

  • Tiếp theo dự báo phương sai: lợi nhuận có thể lệch khỏi trung bình bao xa? Độ biến động dự báo
Các mô hình GARCH trong R

Từ lý thuyết đến thực hành: Mô hình cho trung bình

  • Cần một phương trình ánh xạ lợi nhuận quá khứ thành dự báo trung bình Độ biến động dự báo

Với các mô hình AR(MA) cho trung bình, xem khóa học Datacamp về phân tích chuỗi thời gian.

Các mô hình GARCH trong R

Từ lý thuyết đến thực hành: Mô hình cho phương sai

  • Cần một phương trình ánh xạ lợi nhuận quá khứ thành dự báo phương sai Độ biến động dự báo
Các mô hình GARCH trong R

Mô hình ARCH(p): Phương sai có điều kiện tự hồi quy

  • Cần một phương trình ánh xạ lợi nhuận quá khứ thành dự báo phương sai Độ biến động dự báo
Các mô hình GARCH trong R

Mô hình GARCH(1,1): ARCH tổng quát hóa

  • Cần một phương trình ánh xạ lợi nhuận quá khứ thành dự báo phương sai Độ biến động dự báo
Các mô hình GARCH trong R

Ràng buộc tham số

Để quá trình GARCH thực tế hơn, cần:

  1. $\omega$, $\alpha$ và $\beta$ đều $>0$: đảm bảo $\sigma^2_t >0$ mọi thời điểm.

  2. $\alpha + \beta < 1$: đảm bảo phương sai dự báo $\sigma^2_t$ luôn quay về phương sai dài hạn:

    • Do đó phương sai "hồi quy về trung bình"
    • Phương sai dài hạn bằng $ \frac{\omega}{1-\alpha-\beta}$
Các mô hình GARCH trong R

Triển khai R - Xác định đầu vào

  • Cùng làm quen với các phương trình GARCH bằng R code:

$$ \sigma^{2}_{t} = \omega + \alpha e^{2}_{t-1} \beta \sigma^{2}_{t-1} $$

# Set parameter values
alpha <- 0.1
beta <- 0.8
omega <- var(sp500ret) * (1 - alpha - beta)
# Then: var(sp500ret) = omega / (1 - alpha - beta)
# Set series of prediction error
e <- sp500ret - mean(sp500ret) # Constant mean
e2 <- e ^ 2
Các mô hình GARCH trong R

Triển khai R - Tính phương sai dự báo

# We predict for each observation its variance. 
nobs <- length(sp500ret)
predvar <- rep(NA, nobs)
# Initialize the process at the sample variance
predvar[1] <- var(sp500ret)
# Loop starting at 2 because of the lagged predictor
for (t in 2:nobs){
   predvar[t] <- omega + alpha * e2[t - 1] + beta * predvar[t-1]
}
Các mô hình GARCH trong R

Triển khai R - Biểu đồ độ biến động GARCH

# Volatility is sqrt of predicted variance
predvol <- sqrt(predvar)
predvol <- xts(predvol, order.by = time(sp500ret))
# We compare with the unconditional volatility
uncvol <- sqrt(omega / (1 - alpha-beta))
uncvol <- xts(rep(uncvol, nobs), order.by = time(sp500ret))
# Plot
plot(predvol)
lines(uncvol, col = "red", lwd = 2)
Các mô hình GARCH trong R

Độ biến động dự báo

Các mô hình GARCH trong R

Cùng luyện tập nào!

Các mô hình GARCH trong R

Preparing Video For Download...