关于算法:R语言用极大似然和梯度下降算法估计GARCHp过程

60次阅读

共计 1552 个字符,预计需要花费 4 分钟才能阅读完成。

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

本文思考一些 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)

因为参数必须是负数,咱们在此假设它们能够写成一些实数的指数。察看一下,这些值更靠近于用来生成咱们的工夫序列的值。

如果咱们应用 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))


最受欢迎的见解

1.HAR-RV- J 与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频稳定率

2. R 语言中基于混合数据抽样 (MIDAS) 回归的 HAR-RV 模型预测 GDP 增长

3.稳定率的实现:ARCH 模型与 HAR-RV 模型

4. R 语言 ARMA-EGARCH 模型、集成预测算法对 SPX 理论稳定率进行预测

5.GARCH(1,1),MA 以及历史模拟法的 VaR 比拟

6. R 语言多元 COPULA GARCH 模型工夫序列预测

7. R 语言基于 ARMA-GARCH 过程的 VAR 拟合和预测

8.matlab 预测 ARMA-GARCH 条件均值和方差模型

9. R 语言对 S&P500 股票指数进行 ARIMA + GARCH 交易策略

正文完
 0