0
点赞
收藏
分享

微信扫一扫

【R语言实战】——带有高斯新息的金融时序的GARCH模型拟合预测及VAR/ES风险度量

文章目录

1 数据读取及预处理

  运行程序:

da=read.table("F:\\ch7data\\d-ibm-0110.txt",header=T)
xt=-log(da$return+1) # calculate negative log returns.library(fGarch)

2 GARCH模型拟合

  此处为作演示,拟合GARCH(1,1)模型。

  运行程序:

library(fGarch)
m1=garchFit(~garch(1,1),data=xt,trace=F)
m1

  运行结果:

## 
## Title:
## GARCH Modelling
##
## Call:
## garchFit(formula = ~garch(1, 1), data = xt, trace = F)
##
## Mean and Variance Equation:
## data ~ garch(1, 1)
## <environment: 0x00000000177235d8>
## [data = xt]
##
## Conditional Distribution:
## norm
##
## Coefficient(s):
## mu omega alpha1 beta1
## -6.0097e-04 4.3781e-06 1.0113e-01 8.8412e-01
##
## Std. Errors:
## based on Hessian
##
## Error Analysis:
## Estimate Std. Error t value Pr(>|t|)
## mu -6.010e-04 2.393e-04 -2.511 0.012044 *
## omega 4.378e-06 1.160e-06 3.774 0.000161 ***
## alpha1 1.011e-01 1.851e-02 5.463 4.67e-08 ***
## beta1 8.841e-01 1.991e-02 44.413 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Log Likelihood:
## 7114.066 normalized: 2.828654

3 模型预测

  此处预测未来三期情况。

  运行程序:

predict(m1,3)

  运行结果:

##    meanForecast   meanError standardDeviation
## 1 -0.0006009667 0.007824302 0.007824302
## 2 -0.0006009667 0.008043298 0.008043298
## 3 -0.0006009667 0.008253382 0.008253382

4 VAR、ES风险度量

  运行程序:

source("F:\\ch7data\\RMeasure.R")
m11=RMeasure(-.000601,.0078243)

  运行结果:

## 
## Risk Measures for selected probabilities:
## prob VaR ES
## [1,] 0.9500 0.01226883 0.01553828
## [2,] 0.9900 0.01760104 0.02025244
## [3,] 0.9990 0.02357790 0.02574412
## [4,] 0.9999 0.02849770 0.03037133

  根据结果得出拟合的模型为:

x t = − 0.000601 + a t ; a t = σ t ϵ t ; ϵ t ∼ N ( 0 , 1 ) x_t=-0.000601+a_t;a_t=\sigma _t \epsilon_t;\epsilon_t \sim N(0,1) xt=0.000601+at;at=σtϵt;ϵtN(0,1)

σ t 2 = 4.378 × 1 0 t − 6 + 0.1011 × a t − 1 2 + 0.8841 σ t − 1 2 \sigma _t^2=4.378×10^{-6}_t+0.1011×a_{t-1}^2+0.8841 \sigma_{t-1}^2 σt2=4.378×10t6+0.1011×at12+0.8841σt12

  在5%的水平上,所有系数估计是统计上显著的。在时刻T=2515,均值和波动率的超前一步预测分别为 − 6.01 × 1 0 − 4 -6.01×10^{-4} 6.01×104 7.82 × 1 0 − 3 7.82×10^{-3} 7.82×103 。相应地,我们有:

V a r 0.95 = 0.01227 ; E S 0.95 = 0.01554 Var_{0.95}=0.01227;ES_{0.95}=0.01554 Var0.95=0.01227;ES0.95=0.01554

V a r 0.95 = 0.0176 ; E S 0.95 = 0.02025 Var_{0.95}=0.0176;ES_{0.95}=0.02025 Var0.95=0.0176;ES0.95=0.02025

  然后可以应用上述结果计算该金融头寸的风险度量。接下来的一个交易日有:

V a r 0.95 = 12270 ; E S 0.95 = 15540 Var_{0.95}=12270;ES_{0.95}=15540 Var0.95=12270;ES0.95=15540

举报

相关推荐

0 条评论