R语言中的copula GARCH模型拟合时间序列并模拟分析

简介: R语言中的copula GARCH模型拟合时间序列并模拟分析

在这个文章中,我们演示了copula GARCH方法(一般情况下)。

1 模拟数据

首先,我们模拟一下创新分布。我们选择了一个小的样本量。理想情况下,样本量应该更大,更容易发现GARCH效应。

## 模拟创新分布
d <- 2 # 维度
tau <- 0.5 # Kendall's tau
Copula("t", param = th, dim = d, df = nu) # 定义copula对象
rCopula(n, cop) # 对copula进行采样
sqrt((nu.-2)/nu.) * qt(U, df = nu) # 对于ugarchpath()来说,边缘必须具有均值0和方差1!

现在我们用这些copula依赖的创新分布来模拟两个ARMA(1,1)-GARCH(1,1)过程。

## 边缘模型的参数
fixed.p <- list(mu  = 1,
spec(varModel, meanModel,
                    fixed.pars ) # 条件创新密度(或使用,例如,"std")
## 使用创新模拟ARMA-GARCH模型
## 注意: ugarchpath(): 从spec中模拟;
garchpath(uspec,
                n.sim = n, # 模拟的路径长度
               
## 提取结果系列
X. <- fitted(X) # X\_t = mu\_t + eps_t (simulated process)
## 基本检查:
stopifnot(all.equal(X.,    X@path$seriesSim, check.attributes = FALSE),
## 绘制边缘函数
plot(X., type = "l", xlab = "t")

2 基于模拟数据的拟合程序

我们现在展示如何对X进行ARMA(1,1)-GARCH(1,1)过程的拟合(我们删除参数fixed.pars来估计这些参数)。

spec(varModel, mean.model = meanModel)
 ugarchfit(uspec, data = x))

检查(标准化的)Z,即残差Z的伪观测值。

plot(U.)

对于边缘分布,我们也假定为t分布,但自由度不同。

fit("t", dim = 2), data = U., method = "mpl")
nu. <- rep(nu., d) # 边缘自由度
est <- cbind(fitted = c(estimate, nu.), true = c(th, nu, nu.)) # 拟合与真实值

3 从拟合的时间序列模型进行模拟

从拟合的copula 模型进行模拟。

set.seed(271) # 可重复性
sapply(1:d, function(j) sqrt((nu\[j\]-2)/nu\[j\]) * qt(U\[,j\], df = nu\[j\]))
## => 创新必须是标准化的garch()
sim(fit\[\[j\]\], n.sim = n, m.sim = 1,

并绘制出每个结果序列(XtXt)。

apply(sim,fitted(x)) # 模拟序列
plot(X.., type = "l")


相关文章
|
8天前
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-3
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享
17 0
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-3
|
8天前
|
机器学习/深度学习
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟-1
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟
26 6
|
4天前
|
机器学习/深度学习 人工智能 算法
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟
|
8天前
|
数据挖掘
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-2
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享
16 0
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-2
|
8天前
|
资源调度 数据可视化
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-1
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享
19 0
【视频】线性回归中的贝叶斯推断与R语言预测工人工资数据|数据分享-1
|
8天前
|
机器学习/深度学习 人工智能 算法
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟-2
数据分享|R语言广义线性模型GLM:线性最小二乘、对数变换、泊松、二项式逻辑回归分析冰淇淋销售时间序列数据和模拟
21 6
|
13天前
|
数据可视化
R语言多元Copula GARCH 模型时间序列预测
R语言多元Copula GARCH 模型时间序列预测
17 0
|
12天前
|
数据可视化
R语言ARMA GARCH COPULA模型拟合股票收益率时间序列和模拟可视化
R语言ARMA GARCH COPULA模型拟合股票收益率时间序列和模拟可视化
19 0
R语言ARMA GARCH COPULA模型拟合股票收益率时间序列和模拟可视化
|
13天前
|
数据可视化 Serverless
R语言ARMA-GARCH-COPULA模型和金融时间序列案例
R语言ARMA-GARCH-COPULA模型和金融时间序列案例
13 0
|
12天前
|
数据可视化 Serverless
ARMA-GARCH-COPULA模型和金融时间序列案例
ARMA-GARCH-COPULA模型和金融时间序列案例
24 0