【时序数据预测】ARIMA模型时序序列分析原理及实现

本文介绍了ARIMA模型在时间序列分析中的应用,通过万科股价数据进行预测。首先进行单位根检验和平稳性验证,然后进行差分和平稳性检验,接着利用BIC模型定价确定ARIMA(0,1,1)模型,最后通过残差和白噪声检验验证模型效果,预测未来5天的收盘价。
摘要由CSDN通过智能技术生成

ARIMA时序序列分析-股价预测

时间序列分析是按照时间顺序的一组数字序列。时间序列分析就是利用这组数列,应用数理统计方法加以处理,以预测未来事物的发展。时间序列分析是定量预测方法之一。

基本原理:

  • 拿到一个观测值序列之后,首先判断它的平稳性,通过平稳性检验,判断序列是平稳序列还是非平稳序列。
  • 若为非平稳序列,则利用差分变换成平稳序列。
  • 对平稳序列,计算相关系数和偏相关系数,确定模型。
  • 估计模型参数,并检验其显著性及模型本身的合理性。
  • 检验模型拟合的准确性。
  • 根据过去行为对将来的发展做出预测。

实验内容:

数据选择

万科201507-202205的股价数据来源

原始序列

可视化展示
fig1 = plt.figure(figsize=(12,8))
x_major_locator=MultipleLocator(120)
plt.plot(date,data)
plt.title("时序图")  #添加图标题 
plt.xticks(rotation=45)    #横坐标旋转45度
plt.xlabel('日期')   #添加图的标签(x轴,y轴)
plt.ylabel("收盘价")
ax=plt.gca()
ax.xaxis.set_major_locator(x_major_locator) # 设置X轴显示间隔
plt.savefig('收盘价变化图.jpg')

股价变化趋势图
从上图来看,时序序列波动明显,观测不具备平稳性

单位根检验
from statsmodels.tsa.stattools import adfuller
ori_adf = adfuller(data) # 单位根检验
adf_out = pd.Series(ori_adf[0:4]
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

往晓风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值