随着金融市场全球化的发展,金融产品逐渐受到越来越多的关注,而金融产品的风险度量成为投资者最关心的问题。金融风险是指由于经济活动的不确定性、市场环境的变化、决策的失误等因素的影响,导致实际回报与预期回报出现偏离的可能性。
VaR通过建立系统分析方法定量化分析风险,可以评估复杂的金融产品、反映风险的敏感,在合理的范围内规避风险,是量化市场风险行之有效的工具。文章将帮助客户采用风险价值VaR模型定量刻画风险,研究符合模型特点的求解方法,基于VaR模型对股价指数时间序列进行建模分析,科学评估风险的预期损失,避免由于高估或低估风险而带来投资的决策失误,从而对制定政策、维护市场稳定、监管金融机构等方面提供了必要保证。
任务/目标
根据股票价格指数时间序列数据进行建模分析,对金融市场的波动进行分解与预测,比较不同估算方法的适用程度。
数据的处理与检验
以上海证券股价综合指数作为总体研究目标,选取2015年1月至2020年1月的每日收盘价序列作为样本数据集,共1220个价格数据构成金融时间序列,数据获取来源为上海证券交易所网站。
由于股票价格的非负性,我们采用取对数的方法处理上证综指的收盘价Ct,然后进行一阶差分,得到收益率序列Yt,再进行描述性分析与检验,计算公式如下:
在本次实证分析中,利用 MCMC算法,随机生成两条马尔科夫链,分别对两条链进行抽样,以确保参数是从平稳分布中进行估计。
MCMC算法下所要拟合的GARCH(1,1)模型为:
利用贝叶斯MCMC 方法对 GARCH(1,1)模型进行未知参数估计。在随机抽样过程中,分别模拟了两条马尔科夫链。首先在R中进行迭代3000次,使用方差比法判断收敛效果,各个参数的方差比为,各个方差比均约为1,,说明收敛情况良好。迭代轨迹图如图所示:
利用上证综指收益率序列的后半部分数据对正态分布下MCMC-GARCH(1,1)模型的参数估计结果如下:
表 基于正态分布的MCMC--GARCH(1,1)模型系数的估计
估计值标准误95%置信区间α00.033380.01792(0.01101,0.08155)α10.099130.03522(0.04546,0.18589)β10.891970.03467(0.81061,0.94656)即MCMC-GARCH(1,1)模型的方差方程为:
利用上证综指序列的后半部分样本数据分别对ML与MCMC方法的拟合误差进行度量,各指标的值如下:
ML与MCMC方法在样本期内的拟合误差度量指标
MSE1MSE2MAE1MAE2QLIKER²LNML9.2340955657.9911.12325711.748419.695280.5750861MCMC8.7074865628.3281.11057211.854875.852641-0.01556125从上表可以看出,基于贝叶斯框架下MCMC算法得到各项拟合误差度量指标要小于极大似然估计方法得到的误差度量指标,说明MCMC-GARCH模型拟合效果要优于ML-GARCH模型得到的拟合结果,接下来对上证综指收益率标准化残差的自相关图,可以从图看出,标准化后的绝大部分残差序列值在置信区间内,对比图可以判断,MCMC-GARCH模型将样本序列中的异方差信息较完整的提取了出来,说明基于MCMC估计的GARCH模型效果更优。
MCMC-GARCH(1,1)模型平方残差自相关图
又前文已知VaR模型的基本原理,记:
由上文所得,上证综指收益率序列后半部分数据的均值为0.005626654,所以得VaR模型为:
因此在ML和MCMC下分别为:
取上证综指收益率序列的后半部分数据对波动率序列进行预测,分别用ML-GARCH和MCMC-GARCH计算VaR,在95%的置信水平下得到如下值:
基于ML和MCMC方法的VaR值
中位数均值标准差ML1.70161.96661.319663MCMC1.83482.31391.249384通过上表可知,基于ML-GARCH和MCMC-GARCH计算的VaR值有一定的差别,基于MCMC-GARCH计算的VaR值更高、标准差更低。
两种方法拟合的时序图如下:
基于ML和MCMC方法的VaR时序图
在此对Ke Liu对本文所作的贡献表示诚挚感谢,她毕业于中南财经政法大学经济统计学专业,擅长金融时间序列数据分析与预测等。
最受欢迎的见解
1.用R语言模拟混合制排队随机服务排队系统
2.R语言中使用排队论预测等待时间
3.R语言中实现马尔可夫链蒙特卡罗MCMC模型
4.R语言中的马尔科夫机制转换(Markov regime switching)模型
5.python中使用马尔可夫决策过程(MDP)动态编程来解决最短路径强化学习问题
6.用R语言模拟混合制排队随机服务排队系统
7.Python基于粒子群优化的投资组合优化
8.R语言几何布朗运动 GBM模拟股票价格优化建立期权定价概率加权收益曲线可视化
9.R语言进行支持向量机回归SVR和网格搜索超参数优化