R语言基于ARMA-GARCH-VaR模型拟合和预测实证研究分析案例

科技   科技   2025-01-21 23:50   浙江  

原文链接:http://tecdat.cn/?p=3186


本文显示了如何基于潜在的ARMA-GARCH模型(当然也涉及更广泛意义上的QRM)来拟合和预测风险价值(VaR)点击文末“阅读原文”获取完整代码数据


 

从ARMA-GARCH过程模拟(log-return)数据

我们考虑使用t 分布的ARMA(1,1)-GARCH(1,1)过程。

模拟一个序列(用于说明目的)。

 nu <- 3  fixed.p <- list(mu = 0, #   mu (截距)
                ar1 = 0.5, #   phi\_1 (AR(1) 参数 of mu\_t)
                ma1 = 0.3, #   theta\_1 (MA(1) 参数 of mu\_t)
                omega = 4, #   alpha_0 (截距)
                alpha1 = 0.4, #   alpha\_1 (GARCH(1) 参数 of sigma\_t^2)
                beta1 = 0.2, #   beta\_1 (GARCH(1) 参数 of sigma\_t^2)
                shape = nu) #  armaOrder <- c(1,1) # ARMA 参数garchOrder <- c(1,1) # GARCH 参数varModel <- list(model = "sGARCH", garchOrder = garchOrder)
spec <- ugarchspec(varModel, mean.model = list(armaOrder = armaOrder),
                   fixed.pars = fixed.p, distribution.model = "std") # t 标准残差

作为一个完整性检查,让我们绘制模拟序列,条件标准偏差和残差。

plot(X,   type = "l", xlab = "t", ylab = expression(X\[t\]))

plot(sig, type = "h", xlab = "t", ylab = expression(sigma\[t\]))

plot(eps, type = "l", xlab = "t", ylab = expression(epsilon\[t\]))



点击标题查阅往期内容


R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格


左右滑动查看更多


01

02

03

04




将ARMA-GARCH模型拟合到(模拟)数据

拟合ARMA-GARCH模型 。

让我们再考虑一些健全性检查。

## 拟合 ARMA(1,1)-GARCH(1,1) model
spec <- ugarchspec(varModel, mean.model = list(armaOrder = armaOrder),
                   distribution.model = "std") #  
fit <- ugarchfit(spec, data = X) # fit

##  
mu. <- fitted(fit) # 拟合 hat{mu}\_t (= hat{X}\_t)
sig. <- sigma(fit) # 拟合 hat{sigma}_t

##  
stopifnot(all.equal(as.numeric(mu.),  fit@fit$fitted.values),
          all.equal(as.numeric(sig.), fit@fit$sigma))

计算VaR时间序列

计算VaR估计值。请注意,我们也可以在这里使用基于GPD的估算模型。

Backtest VaR估计值

让我们回测VaR的估计。

## \[1\] 10
## \[1\] 12
## \[1\] "Correct Exceedances"
## \[1\] "Fail to Reject H0"
## \[1\] "Correct Exceedances & Independent"
## \[1\] "Fail to Reject H0"

基于拟合模型预测VaR

现在预测VaR。

模拟X_t的未来轨迹并计算相应的VaR

模拟序列,估计每个模拟路径的VaR(注意quantile()这里不能使用,因此我们必须手动构建VaR)并计算VaR _alpha的bootstrap置信区间。

结果对比

最后,我们显示所有结果。

非常感谢您阅读本文,有任何问题请在下面留言!



本文中分析的数据、代码分享到会员群,扫描下面二维码即可加群! 





本文摘选R语言基于ARMA-GARCH-VaR模型拟合和预测实证研究分析案例,点击“阅读原文”获取全文完整资料。





点击标题查阅往期内容

R语言对S&P500股票指数进行ARIMA + GARCH交易策略
R语言ARMA GARCH COPULA模型拟合股票收益率时间序列和模拟可视化
ARMA-GARCH-COPULA模型和金融时间序列案例
时间序列分析:ARIMA GARCH模型分析股票价格数据
GJR-GARCH和GARCH波动率预测普尔指数时间序列和Mincer Zarnowitz回归、DM检验、JB检验
【视频】时间序列分析:ARIMA-ARCH / GARCH模型分析股票价格
时间序列GARCH模型分析股市波动率
PYTHON用GARCH、离散随机波动率模型DSV模拟估计股票收益时间序列与蒙特卡洛可视化
极值理论 EVT、POT超阈值、GARCH 模型分析股票指数VaR、条件CVaR:多元化投资组合预测风险测度分析
Garch波动率预测的区制转移交易策略
金融时间序列模型ARIMA 和GARCH 在股票市场预测应用
时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据
R语言GARCH建模常用软件包比较、拟合标准普尔SP 500指数波动率时间序列和预测可视化
Python金融时间序列模型ARIMA 和GARCH 在股票市场预测应用
MATLAB用GARCH模型对股票市场收益率时间序列波动的拟合与预测
R语言GARCH-DCC模型和DCC(MVT)建模估计
Python 用ARIMA、GARCH模型预测分析股票市场收益率时间序列
R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
R语言ARIMA-GARCH波动率模型预测股票市场苹果公司日收益率时间序列
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测
R语言时间序列GARCH模型分析股市波动率
R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
matlab实现MCMC的马尔可夫转换ARMA - GARCH模型估计
Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测
使用R语言对S&P500股票指数进行ARIMA + GARCH交易策略
R语言用多元ARMA,GARCH ,EWMA, ETS,随机波动率SV模型对金融时间序列数据建模
R语言股票市场指数:ARMA-GARCH模型和对数收益率数据探索性分析
R语言多元Copula GARCH 模型时间序列预测
R语言使用多元AR-GARCH模型衡量市场风险
R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格
R语言用Garch模型和回归模型对股票价格分析
GARCH(1,1),MA以及历史模拟法的VaR比较
matlab估计arma garch 条件均值和方差模型
R语言POT超阈值模型和极值理论EVT分析




拓端数据部落
拓端(tecdat.cn)创立于2016年,提供专业的数据分析与挖掘服务,致力于充分挖掘数据价值。
 最新文章