本文展示了如何基於基礎ARMA-GARCH過程(當然這也涉及廣義上的QRM)來擬合和預測風險價值(Value-at-Risk,VaR)。
library(qrmtools)# for qq_plot()
library(rugarch)
模擬數據
我們考慮具有t的ARMA(1,1)-GARCH(1,1)過程
將ARMA-GARCH模型擬合到(模擬的)數據
擬合一個ARMA-GARCH過程。
計算VaR時間序列
計算風險價值估計值。請注意,我們也可以在這里使用基於GPD的估計器。
通過隨機性檢查進行后測
我們來回溯一下VaR估計值。
## Backtest VaR_0.99btest <- VaRTest(alpha,actual =X,VaR =VaR,conf.level =0.95)btest$expected.exceed# 0.99 * n
## [1] 990
btest$actual.exceed
## [1] 988
btest$uc.Decision# unconditional test decision (note: cc.Decision is NA here)
## [1] "Fail to Reject H0"
基於擬合模型預測VaR
現在預測風險價值。
模擬(X)的未來軌跡並計算相應的VaR
模擬路徑,估算每個模擬路徑的VaR(注意,quantile()這里不能使用,所以我們必須手動構建VaR)。