R语言用极大似然和梯度下降算法估计GARCH(p)过程

简介: R语言用极大似然和梯度下降算法估计GARCH(p)过程

本文考虑一些ARCH(p)过程,例如ARCH(1)。

其中

有一个高斯白噪声 .

> for(t in 3:n){
+ sigma2\[t\]=w+a1\*epsilon\[t-1\]^2+a2\*epsilon\[t-2\]^2
+ epsilon\[t\]=eta\[t\]*sqrt(sigma2\[t\])
+ }

(红线是条件方差过程)。

> acf(epsilon,lag=50,lwd=2)

如果 是一个ARCH(),那么 就是一个AR(1)过程。所以第一个想法是考虑回归,就像我们对AR(1)所做的那样

> summary(lm(Y~X1,data=db))

这里有一些明显的自相关。但由于我们的向量不能被认为是高斯分布的,使用最小二乘法也许不是最好的策略。实际上,如果我们的序列不是高斯分布的,它仍然是有条件的高斯分布的,因为我们假设 是高斯(强)白噪声。

然后,似然函数是

而对数似然函数为

而一个自然的想法是定义

代码简单地说就是

> OPT=optim(par=
+ coefficients(lm(Y~X1,data=db)),fn=loglik)

由于参数必须是正数,我们在此假定它们可以写成一些实数的指数。观察一下,这些值更接近于用来生成我们的时间序列的值。



点击标题查看相关文章


Python使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测

左右滑动查看更多

01

02

03

04




如果我们使用R函数来估计这些参数,我们会得到

> summary(garch(epsilon,c(0,1)))

...

所以 的置信区间是

coef\[2,1\]+
+ c(-1.96,1.96)*coef\[2,2\]

实际上,由于我们的主要兴趣是这个 参数,所以有可能使用轮廓似然方法。

> OPT=optimize(function(x) -proflik(x), interval=c(0,2))
objective-qchisq(.95,df=1)
> abline(h=t,col="red")

当然,所有这些技术都可以扩展到高阶ARCH过程。例如,如果我们假设有一个ARCH(2)时间序列

其中

有一个高斯(强)白噪声 .对数似然性仍然是

而我们可以定义

上面的代码可以被修改,以考虑到这个额外的部分。

optim(par=
+ coefficients(lm(Y~X1+X2,data=db)),fn=loglik)

我们也可以考虑一些广义的ARCH过程,例如GARCH(1,1)。

其中

同样,可以使用最大似然技术。实际上,我们也可以用Fisher-Scoring算法编码,因为(在一个非常普遍的情况下

这里 . 使用标准的梯度下降算法,我们可以得到以下对GARCH过程的估计。

> while(sum(G^2)>1e-12){
+ s2=rep(theta\[1\],n)
+ for (i in 2:n){s2\[i\]=theta\[1\]+theta\[2\]\*X\[(i-1)\]^2+theta\[3\]\*s2\[(i-1)\]}

这里有趣的一点是,我们也得出了(渐进的)方差

>sqrt(diag(solve(H))


相关文章
|
8天前
|
资源调度 前端开发 数据可视化
R语言GARCH模型对股市sp500收益率bootstrap、滚动估计预测VaR、拟合诊断和蒙特卡罗模拟可视化
R语言GARCH模型对股市sp500收益率bootstrap、滚动估计预测VaR、拟合诊断和蒙特卡罗模拟可视化
28 2
|
7天前
|
vr&ar Python
R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据
R语言风险价值:ARIMA,GARCH,Delta-normal法滚动估计VaR(Value at Risk)和回测分析股票数据
|
4天前
|
数据可视化
R语言多元(多变量)GARCH :GO-GARCH、BEKK、DCC-GARCH和CCC-GARCH模型和可视化
R语言多元(多变量)GARCH :GO-GARCH、BEKK、DCC-GARCH和CCC-GARCH模型和可视化
12 3
|
4天前
|
编解码 算法 数据可视化
【视频】时间序列分类方法:动态时间规整算法DTW和R语言实现
【视频】时间序列分类方法:动态时间规整算法DTW和R语言实现
|
5天前
|
算法 数据可视化
【视频】Copula算法原理和R语言股市收益率相依性可视化分析
【视频】Copula算法原理和R语言股市收益率相依性可视化分析
|
5天前
|
机器学习/深度学习 自然语言处理 算法
【视频】K近邻KNN算法原理与R语言结合新冠疫情对股票价格预测|数据分享(下)
【视频】K近邻KNN算法原理与R语言结合新冠疫情对股票价格预测|数据分享
10 0
|
5天前
|
机器学习/深度学习 算法 大数据
【视频】K近邻KNN算法原理与R语言结合新冠疫情对股票价格预测|数据分享(上)
【视频】K近邻KNN算法原理与R语言结合新冠疫情对股票价格预测|数据分享
11 0
|
6天前
|
机器学习/深度学习 算法 数据可视化
R语言:EM算法和高斯混合模型聚类的实现
R语言:EM算法和高斯混合模型聚类的实现
|
6天前
|
机器学习/深度学习 算法 数据挖掘
R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病
R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病
|
7天前
|
机器学习/深度学习 数据可视化
数据分享|R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化
数据分享|R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化
39 18

热门文章

最新文章