我将建立道琼斯工业平均指数(DJIA)日交易量对数比的ARMA-GARCH模型。
load(file='DowEnvironment.RData')
每日交易量内发生的 变化。
plot(dj_vol)

首先,我们验证具有常数均值的线性回归在统计上是显着的。

在休息时间= 6时达到最小BIC。
以下是道琼斯日均交易量与水平变化(红线) 。
summary(bp_dj_vol)
#### Optimal (m+1)-segment partition:#### Call:## breakpoints.formula(formula = dj_vol ~ 1, h = 0.1)#### Breakpoints at observation number:#### m = 1 2499## m = 2 896 2499## m = 3 626 1254 2499## m = 4 342 644 1254 2499## m = 5 342 644 1219 1649 2499## m = 6 320 622 924 1251 1649 2499## m = 7 320 622 924 1251 1692 2172 2499## m = 8 320 622 924 1251 1561 1863 2172 2499#### Corresponding to breakdates:#### m = 1## m = 2 0.296688741721854## m = 3 0.207284768211921## m = 4 0.113245033112583 0.213245033112583## m = 5 0.113245033112583 0.213245033112583## m = 6 0.105960264900662 0.205960264900662 0.305960264900662## m = 7 0.105960264900662 0.205960264900662 0.305960264900662## m = 8 0.105960264900662 0.205960264900662 0.305960264900662#### m = 1## m = 2## m = 3 0.41523178807947## m = 4 0.41523178807947## m = 5 0.40364238410596 0.546026490066225## m = 6 0.414238410596027 0.546026490066225## m = 7 0.414238410596027 0.560264900662252## m = 8 0.414238410596027 0.516887417218543 0.616887417218543#### m = 1 0.827483443708609## m = 2 0.827483443708609## m = 3 0.827483443708609## m = 4 0.827483443708609## m = 5 0.827483443708609## m = 6 0.827483443708609## m = 7 0.719205298013245 0.827483443708609## m = 8 0.719205298013245 0.827483443708609#### Fit:#### m 0 1 2 3 4 5 6## RSS 3.872e+19 2.772e+19 1.740e+19 1.547e+19 1.515e+19 1.490e+19 1.475e+19## BIC 1.206e+05 1.196e+05 1.182e+05 1.179e+05 1.178e+05 1.178e+05 1.178e+05#### m 7 8## RSS 1.472e+19 1.478e+19## BIC 1.178e+05 1.178e+05
lwd = c(3,1), col = c("red", "black"))

每日交易量对数比率:
plot(dj_vol_log_ratio)

下面我们将原始时间序列与调整后的异常值进行比较。


pacf(dj_vol_log_ratio)

上图可能表明 ARMA(p,q)模型的p和q> 0.
我们 提供Augmented Dickey-Fuller测试。
根据 测试统计数据与临界值进行比较,我们拒绝单位根存在的零假设。
我们现在确定时间序列的ARMA结构,以便对结果残差运行ARCH效果测试。


要检查 对数比率内的不对称性,将显示汇总统计数据和密度图。


以下是我们的模型ARMA(2,2)+ eGARCH(1,1)产生的条件波动率图。
plot(cond_volatility)显示了按年度的条件波动率的线图。
par(mfrow=c(6,2))pl <- lapply(2007:2018, function(x) { plot(cond_volatility[as.character(x)], main = "DJIA Daily Volume Log-ratio conditional volatility")})pl

显示了按年度计算的条件波动率框图。

最受欢迎的见解
1. HAR-RV-J与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频波动率
2. R语言中基于混合数据抽样(MIDAS)回归的HAR-RV模型预测GDP增长
4. R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
8. matlab预测ARMA-GARCH 条件均值和方差模型
9. R语言对S&P500股票指数进行ARIMA + GARCH交易策略
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69982319/viewspace-2728494/ ,如需转载,请注明出处,否则将追究法律责任。