全文链接:http://tecdat.cn/?p=31023
原文出处:拓端数据部落公众号
如何构建适合的模型以失当的办法对危险进行测量是以后金融钻研畛域的一个热门话题。
VaR 办法作为以后业内比拟风行的测量金融风险的办法, 具备简洁, 明了的特点, 而且绝对于方差来讲, 更多的将投资人的损失作为危险具备更好的合理性。
咱们和一位客户探讨如何在 R 软件中解决 GARCH 族模型。
数据的选取
本文选取 Wind 资讯公布的股票型券商理财指数作为数据处理对象。选取的工夫期间为 2011 年 1 月 4 日至 2015 年 11 月 24 日,共 1187 个交易日。该指数基日为 2007 年 12 月 31 日,基点为 1000 点。
收益率的计算
采纳对数收益率对指数开盘点位进行计算,表达式为
记为序列。由图察看可知,该收益率序列存在稳定汇集景象。
clpr<-stock$Clsprc
yield<-diff(log(clpr))
ts.plot(yield)
根本特征分析
对序列 进行根本统计分析,后果如表所示:
summary(yield)
sd(yield)
var(yield)
表 指数日收益率根本统计表**
Min. | 1st Qu. | Median | Mean | 3rd Qu. | Max. | Sd | skewness’ | kurtosis |
---|---|---|---|---|---|---|---|---|
-0.03517 | -0.00389 | 0.0003749 | 0.0001963 | 0.00473 | 0.03348 | 0.008163353 | -0.4018462 | 2.169439 |
由表可知,收益率序列 的最小值为 -0.03517,最大值为 0.03348,平均值为 0.0001963,标准差为 0.008163353。偏度为 -0.4018462,体现为右偏。峰度为 2.169439,该散布比正态分布更平缓。
1、正态性测验
对指数的日收益率序列进行正态性测验。测验办法采纳 Jarque-Bera 统计量。测验结果显示 Jarque-Bera 统计量为 261.3839,P 值靠近 0,回绝对数收益率遵从正态分布的原假如,表明序列为非正态分布。
表 Jarque-Bera 测验后果
测验办法 | 统计量 | P 值 |
---|---|---|
Jarque-Bera | 261.3839 | < 2.2e-16 |
为了进一步探索序列 的散布状态,对样本数据作直方图、QQ 图。由图可见,该收益率序列的尾部更长更厚,且其散布存在显著的不对称的景象,为非正态分布。
2、自相关性测验
对指数的日收益率序列的自相关性进行测验。测验办法采纳 Ljung-Box 测验。表中 LB2(12)指滞后期为 12 的收益率平方的 Ljung-Box 统计量,该统计量在无序列相干的零假如下,遵从自由度为 12 的 散布。具体测验后果如下:收益率平方的 Ljung-Box 统计量为 34.1853,P 值为 0.0006306,回绝无自相干的零假如,表明收益率的平方存在自相干景象。
表 Ljung-Box 测验后果
测验办法 | 统计量 | P 值 |
---|---|---|
LB2(12) | 34.1853 | 0.0006306 |
为了进一步探索序列的自相关性,对序列作 ACF、PACF 图。由图可见,该收益率序列存在自相干景象。
3、异方差性测验
对指数的日收益率序列进行异方差性测验。测验办法采纳 ARCH-LM 测验。表中 LM(12)指 ARCH 效应的拉格朗日乘数测验,在没有 ARCH 效应的零假如下,统计量遵从自由度为 12 的 散布。具体测验后果如下:LM 统计量为 170.9818,P 值靠近 0,故回绝无 ARCH 效应的零假如,表明收益率序列存在 ARCH 效应。
表 ARCH-LM 测验后果
测验办法 | 统计量 | P 值 |
---|---|---|
LM(12) | 170.9818 | < 2.2e-16 |
4、平稳性测验
在工夫序列模型中,序列的平稳性会间接影响到模型的拟合成果,非安稳的序列容易产生舛误回归(Spurious Regression)。本节将采纳 ADF 测验来对收益率序列进行单位根测验。测验结果显示 Dickey –Fuller 值为 -9.7732(滞后 10 阶),P 值小于 0.01,故回绝存在单位根的原假如,认为该收益率序列是安稳的。
表 ADF 测验后果
测验办法 | 统计量 | P 值 |
---|---|---|
ADF | -9.7732 | <0.01 |
综上,收益率序列存在显著的尖峰厚尾效应,JB 测验同样否定了收益率遵从正态分布的假如。LM 测验表明收益率存在 ARCH 效应,而 LB 测验表明收益率的平方存在自相干景象,因而能够采纳条件异方差模型来剖析收益率序列的稳定个性
GARCH 族模型的建设
本文将别离采纳基于正态分布、t 散布、狭义误差散布(GED)、偏态 t 散布(ST)、偏态狭义误差散布(SGED) 的 GARCH(1,1)、EGARCH、TGARCH 来建模。
表中,c 为收益率的均值,为方差方程的常数项,为方差方程的 ARCH 项系数,为 GARCH 项系数,反映杠杆效应的大小。参数 为概率分布中的参数,其中 管制尖峰高度和尾部厚度,管制偏斜度。
GARCH(1,1)模型
GARCH(1,1)模型表示如下:
spec<-ugarchspec(variance.model=list(garchOrder=c(1,1)),
mean.model=list(armaOrder=c(0,0)))
fit <- ugarchfit(spec = spec, data = yield)
ariance.model=list(garchOrder=c(1,1)),
mean.model=list(armaOrder=c(0,0)),distribution.model = "std")
表 收益率指数 GARCH 模型预计后果*
正态分布 | t 散布 | GED | 偏 t 散布 | SGED | |
---|---|---|---|---|---|
c | 0.000264(0.21277) | 0.000342 (0.077829) | 0.000342 (0.040020) | 0.000299(0.161218) | 0.000230 (0.587094) |
0.000001 (0.14473) | 0.000001 (0.257057) | 0.000001(0.441759) | 0.000001(0.259532) | 0.000001(0.456113) | |
0.048706(0.00000) * | 0.054123 (0.000001) * | 0.050726 (0.002247) * | 0.053698(0.000001) * | 0.050853(0.00353) * | |
** | 0.927184(0.00000) * | 0.933160(0.00000) * | 0.931267(0.000000) * | 0.933230(0.000000) * | 0.930511 (0.000000) * |
0.981867(0.000000) * | 0.939087(0.000000) * | ||||
5.219963(0.00000) * | 1.201313(0.00000) * | 5.243745(0.000000) * | 1.202264 (0.000000) * | ||
LOG(L) | 4098.099 | 4133.571 | 4138.72 | 4133.688 | 4139.112 |
LB2(1) | 0.0005385 | 0.03154 | 0.01327 | 0.02633 | 0.01035 |
LB2(5) | 0.7282074 | 1.00717 | 0.88424 | 0.97089 | 0.83074 |
LB2(9) | 1.2003692 | 1.63025 | 1.43485 | 1.58488 | 1.36785 |
注:括号中是 P 值。示意 0.1% 置信水平下统计显著;示意在 1% 置信水平下统计显著;示意 5% 程度下统计显著。
对 GARCH(1,1)模型来说, 无论收益率残差遵从哪种散布, 其方差方程中 ARCH 项和 GARCH 项系数均高度显著,然而均值方程和方差方程中的的常数项均不显著。
EGARCH(1,1)模型
EGARCH 是从 GARCH 衍生出的模型,可用于解释“杠杆效应”。“杠杆效应”是指金融资产收益率的涨和跌对将来波动性的影响是不同的。
chspec(variance.model=list(model="eGARCH", garchOrder=c(1,1)),
mean.model=list(armaOrder=c(0,0)))
收益率指数 EGARCH 模型预计后果**
正态分布 | t 散布 | GED | 偏 t 散布 | SGED | |
---|---|---|---|---|---|
c | 0.000271(0.075278) | 0.000336(0.079723) | 0.000340(0.016498) | 0.000271(0.12507) | 0.000199 (0.14978) |
-0.206804(0.000000) * | -0.157944(0.000000) * | -0.184483(0.000000) * | -0.160675(0.000000) * | -0.190357(0.00000) * | |
0.001715(0.862698) | -0.013118 (0.388489) | -0.007304(0.603938) | -0.012933(0.393570) | -0.007622 (0.41512) | |
** | 0.978191(0.000000) * | 0.983721(0.000000) * | 0.981159(0.000000) * | 0.983429(0.000000) * | 0.980540(0.00000) * |
0.107504(0.001149)* | 0.128684(0.000000) * | 0.118786(0.001145)** | 0.128607(0.000001)* | 0.119496(0.00000) * | |
0.978059(0.000000) * | 0.970479(0.00000) * | ||||
4.999931(0.000000) * | 1.185703(0.000000) * | 5.025099(0.000000) * | 1.186277(0.00000) * | ||
LOG(L) | 4092.934 | 4131.264 | 4136.163 | 4131.438 | 4136.691 |
LB2(1) | 0.1871 | 0.00369 | 0.03273 | 0.004377 | 0.03288 |
LB2(5) | 0.8244 | 0.93644 | 0.83619 | 0.898516 | 0.76626 |
LB2(9) | 1.4308 | 1.55934 | 1.41608 | 1.511597 | 1.32613 |
注:括号中是 P 值。示意 0.1% 置信水平下统计显著;示意在 1% 置信水平下统计显著;示意 5% 程度下统计显著。
对 EGARCH(1,1)模型来说, 无论收益率残差遵从哪种散布, 其方差方程中常数项和 GARCH 项系数均高度显著,然而均值方程和方差方程中的的 ARCH 项系数均不显著。
GJR-GARCH 模型
GJR-GARCH 模型即是在 GARCH 模型的根底上思考到杠杆效应,引入一个虚构变量来示意正负冲击对 的影响。
ariance.model=list(model="gjrGARCH", garchOrder=c(1,1)),
mean.model=list(armaOrder=c(0,0)),distribution.model = "std")
收益率指数 GJR- GARCH 模型预计后果**
正态分布 | t 散布 | GED | 偏 t 散布 | SGED | |
---|---|---|---|---|---|
c | 0.000275(0.198829) | 0.000335 (0.084013) | 0.000338(0.040523)* | 0.000292(0.17233) | 0.000221 (0.540614) |
0.000001(0.171795) | 0.000001 (0.298628) | 0.000001(0.000000) * | 0.000001(0.30375) | 0.000001(0.590270) | |
0.051272(0.000072)* | 0.051272 (0.000072)* | 0.046304(0.012649) * | 0.045985(0.00000)* | 0.046440 (0.007732)** | |
** | 0.928798(0.000000) * | 0.928798(0.000000) * | 0.927762 (0.000000) * | 0.929132(0.00000) * | 0.928254 (0.000000) * |
-0.005443(0.702778) | -0.005443(0.702778) | 0.010575(0.493464) | 0.018174(0.32446) | 0.010036(0.542627) | |
0.983235(0.00000) * | 0.975509(0.000000) * | ||||
4.999931(0.000000) * | 1.197353(0.000000) * | 5.148342(0.00000) * | 1.199348 (0.000000) * | ||
LOG(L) | 4098.144 | 4133.955 | 4138.849 | 4134.063 | 4139.244 |
LB2(1) | 0.00032 | 0.06294 | 0.03472 | 0.05974 | 0.02502 |
LB2(5) | 0.68873 | 1.14346 | 0.98759 | 1.11792 | 0.91801 |
LB2(9) | 1.15402 | 1.81742 | 1.56472 | 1.78469 | 1.48424 |
注:括号中是 P 值。示意 0.1% 置信水平下统计显著;示意在 1% 置信水平下统计显著;示意 5% 程度下统计显著。
对 GJR-GARCH(1,1)模型来说, 无论收益率残差遵从哪种散布, 其杠杆系数 都是不显著的。然而就其余参数而言,GED 散布下,参数拟合都是显著的。方差方程中 ARCH 项和 GARCH 项系数均高度显著,然而均值方程和方差方程中的的常数项均不显著。通过比照对数似然函数值,发现残差遵从 GED 散布和 SGED 散布时,模型拟合成果要优于正态分布、t 散布和偏 t 散布。另外, 五种散布条件下,均靠近 1,这阐明只管收益率的稳定会逐渐衰减, 然而继续的工夫将会十分长。最初,LB2 统计量显示模型的标准化残差平方均不再具备异方差景象,且在统计上都是显著的。
APARCH 模型
APARCH(1,1)模型波动性方程为:
variance.model=list(model="apARCH", garchOrder=c(1,1)),
收益率指数 APARCH 模型预计后果**
正态分布 | t 散布 | GED | 偏 t 散布 | SGED | |
---|---|---|---|---|---|
c | 0.000301(0.15463) | 0.000349 (0.071965) | 0.000349(0.049846)* | 0.000338 (0.108480) | 0.000239 (0.379013) |
0.000000(0.92767) | 0.000000(0.979064) | 0.000000(0.972073) | 0.000000(0.984476) | 0.000000(0.992160) | |
0.036457(0.00021)* | 0.036235(0.061548) | 0.036665(0.123664) | 0.038866(0.179902) | 0.036743 (0.540439) | |
** | 0.914738(0.00000) * | 0.920788(0.000000) * | 0.917647(0.000000) * | 0.920930(0.000000) * | 0.919184 (0.000000) * |
0.001559(0.98256) | 0.076905(0.416691) | 0.048123(0.624721) | 0.063356(0.277636) | 0.019934 (0.835479) | |
2.770787(0.00000) * | 2.835321(0.000000) * | 2.732345(0.000000) * | 2.774741(0.000000) * | 2.794404(0.000000) * | |
0.991283 (0.000000) * | 0.970652(0.000000) * | ||||
5.534190(0.000017) * | 1.207995(0.000000) * | 5.400260 (0.000001) * | 1.213429(0.000687) * | ||
LOG(L) | 4100.315 | 4134.174 | 4139.32 | 4134.308 | 4139.746 |
LB2(1) | 0.07729 | 0.1613 | 0.1208 | 0.1772 | 0.09563 |
LB2(5) | 0.94386 | 1.2998 | 1.1247 | 1.3636 | 1.05785 |
LB2(9) | 1.45195 | 2.0242 | 1.7278 | 2.1042 | 1.64646 |
注:括号中是 P 值。示意 0.1% 置信水平下统计显著;示意在 1% 置信水平下统计显著;示意 5% 程度下统计显著。
对 APARCH (1,1)模型来说, 除了方差方程 和 显著外,其余系数根本不显著。通过比照对数似然函数值,发现残差遵从 GED 散布和 SGED 散布时,模型拟合成果要优于正态分布、t 散布和偏 t 散布。LB2 统计量显示模型的标准化残差平方均不再具备异方差景象,且在统计上都是显著的。
计算 VaR
plotMSFT.garch11.fitwhich=2
序列预测
plotMSFT.garch11.boot
GARCH11 滚动预测
MSFT.garch11.roll =spec y
classMSFT.garch11.roll
## [1] "uGARCHroll"
## attr"package"
## [1] "rugarch"
## VaR Backtest Report
## ===========================================
## Model: eGARCH-norm
## Backtest Length: 1000
## Data:
##
## ==========================================
## alpha: 1%
## Expected Exceed: 10
## Actual VaR Exceed: 50
## Actual %: 5%
##
## Unconditional Coverage Kupiec
## Null-Hypothesis: Correct Exceedances
## LR.uc Statistic: 82.582
## LR.uc Critical: 3.841
## LR.uc p-value: 0
## Reject Null: YES
##
## Conditional Coverage Christoffersen
## Null-Hypothesis: Correct Exceedances and
## Independence of Failures
## LR.cc Statistic: 118.726
## LR.cc Critical: 5.991
## LR.cc p-value: 0
## Reject Null: YES
最受欢迎的见解
1.[](http://tecdat.cn/r%e8%af%ad%e…) R 语言对 S&P500 股票指数进行 ARIMA + GARCH 交易策略
2.[](http://tecdat.cn/r%e8%af%ad%e…) R 语言改良的股票配对交易策略剖析 SPY—TLT 组合和中国股市投资组合
3.[](http://tecdat.cn/r%e8%af%ad%e…) R 语言工夫序列:ARIMA GARCH 模型的交易策略在外汇市场预测利用
4.[](http://tecdat.cn/r%e8%af%ad%e…)TMA 三均线期指高频交易策略的 R 语言实现
5.[](http://tecdat.cn/r%e8%af%ad%e…) r 语言多均线量化策略回测比拟
6.[](http://tecdat.cn/r%e8%af%ad%e…)用 R 语言实现神经网络预测股票实例
7.[](http://tecdat.cn/r-%e8%af%ad%…)r 语言预测稳定率的实现:ARCH 模型与 HAR-RV 模型
8.[](http://tecdat.cn/r%e8%af%ad%e…)R 语言如何做马尔科夫转换模型 markov switching model
9.matlab 应用 Copula 仿真优化市场危险