拓端tecdat|R语言用Garch模型和回归模型对股票价格分析
原文链接:http://tecdat.cn/?p=18310
为了找出影响价格波动的主要因素,我们使用逐步回归法来剔除一些对于应变量即价格影响很小的自变量剔除出我们的模型,我们分别把WTI Price Field 等自变量的名称改为x1,x2……,最后的突发事件需要用到哑变量,哑变量只需要2个即可,我们将其作为X49,X50,X51,三个参数并将它们的值”正影响”、”无影响”、”负影响”分别改为-1,0,1。
经过R语言处理以后我们得到模型:
Y~x1 + x2 + x4 + x5 + x7 + x13 + x14 + x15 + x16 + x17 + x18 + x20 + x21 + x23 + x34 + x25 + x26 + x29 + x30 + x33 + x35 + x36 + x37 + x39 + x40 + x42 + x44 + x46 + x47 + x48 + x49 + x50
由此可得,影响较小的已经被剔除了。
Garch模型预测波动性
我们通过使用Garch模型来预测波动性,
先检验数据正态性,可以计算得出数据分布函数,QQ图,对数收益率序列折线图
-
> shapiro.test(rlogdiffdata)
-
-
Shapiro-Wilk normality test
-
-
data: rlogdiffdata
-
W = 0.94315, p-value = 1.458e-05
由QQ图以及p值可见,数据大致上符合正态分布。
最后用VaR曲线来进行预警剧烈波动。
红色的点就是剧烈波动前的预警点。
强影响点分析
我们可以通过使用cook统计量来寻找强影响点,因此我们用R语言的influence.measures()函数来进行影响分析。
右侧带有*号的表示强影响点。
我们通过学生化残差来构造F检验,最终得到t检验,以此来检测异常点。通过
stdres<-rstudent(lm.sol)
来得到学生化残差,然后通过公式
来计算Fj,并且最终转化为tj,
t=sqrt((144-51-1)*stdres^2/(144-51-stdres^2))
最后我们可以检查,如果则它为异常点。
R语言执行
-
res<-t>abs(qt(.025, df=92))
-
可以直接得到大于对应t值的布尔值。
值为True的则可能为异常点。
预测
我们使用了HoltWinters来进行预测我们的价格区间
真实值基本都在预测的范围内,但是想要净赚预测还是比较困难的。
最受欢迎的见解
1.HAR-RV-J与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频波动率
2.R语言中基于混合数据抽样(MIDAS)回归的HAR-RV模型预测GDP增长
4.R语言ARMA-EGARCH模型、集成预测算法对SPX实际波动率进行预测
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· 程序员常用高效实用工具推荐,办公效率提升利器!
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)
2019-12-10 拓端tecdat|R语言代码编写用向量自回归(VAR)进行经济数据脉冲响应研究分析
2019-12-10 拓端tecdat|R语言代码编写从经济时间序列中用HP滤波器,小波滤波和经验模式分解等提取周期性成分分析