Python-基于ARIMA模型股票趋势预测

本文介绍了使用ARIMA模型预测股票趋势的过程,包括数据来源、平稳性检验、差分运算、模型定阶、模型修正及预测分析。通过一阶差分后,建立了ARIMA(2,1,2)模型,预测结果表明模型具有良好的预测效果。" 106470443,649281,Oracle数据库统计信息操作大全,"['数据库管理', 'Oracle', '统计信息']
摘要由CSDN通过智能技术生成

一、模型介绍

ARIMA模型(自回归移动平均模型),是统计模型中最常见的一种用来进行时 间序列预测的模型。

算法步骤

Step1:根据时间序列的散点图、自相关函数和偏自相关函数图以ADF单位根 检验其方差、趋势及其季节性变化规律,对序列的平稳性进行识别。
Step2:对非平稳序列进行平稳化处理。
Step3:根据时间序列模型的识别规则,建立相应的模型。
Step4:进行参数估计,检验是否具有统计意义。进行假设检验,诊断残差 序列是否为白噪声。
Step5:利用已通过检验的模型进行预测分析。

模型优点

1) 模型十分简单,只需要内生变量而不需要借助其他外生变量。 2) 在证券、股票市场的上证指数、开盘价、收益率方面的定性分析方面得 到大量的应用。

模型缺点

1)要求时序数据是稳定的,或者是通过差分化后是稳定的。
2)本质上只能捕捉线性关系,而不能捕捉非线性关系。

二、数据来源

本文的数据来源于某股市的交易数据,其中包含字段分别为股票日期、开盘价、最高价、最低价、收盘价。
在这里插入图片描述

读入数据

import csv
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from datetime import datetime
import scipy as stats
import statsmodels.api as sm
from scipy import stats
from statsmodels.tsa.arima_model import ARIMA
df = pd.read_csv('C:\\Users\\asus\\Desktop\\zqb\\data2.csv', parse_dates=['时间'], index_col='时间',encoding='gbk') #读取数据
df.index = pd.to_datetime(df.index)   #进行索引
ts=df['收盘']  #时间序列的变量为"open",并赋值给"ts"
df.head()  #读出open的前5个数据

前五行数据:
在这里插入图片描述

三、平稳性检验

#平稳性检验
plt.rcParams['font.sans-serif'] = ['simhei']  #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False   #用来正常显示负号
ts.plot()<
  • 3
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值