基于机器学习在股票预测中的应用

2024-05-13 15:36闫文欣
信息系统工程 2024年4期
关键词:ARIMA模型时间序列VAR模型

闫文欣

摘要:随着我国金融行业不断发展,股票市场预测已经成为该行业一个重点的实际问题,越来越多的学者投入股票预测的研究中,金融市场股票预测精度不断提升。归纳目前基于机器学习的股票预测研究现状,分别从单一模型、改进模型和组合模型分类介绍研究情况,总结不同类别下预测模型的优缺点。介绍各种用于股票预测的预测模型,以及不同模型的实际应用和研究现状,并总结这些模型的应用特点。最后使用ARIMA模型对科大讯飞股票预测开盘价走势,使用VAR模型预测先进数通的股票开盘价、收盘价、最高价和最低价。

关键词:股票预测;机器学习;ARIMA模型;VAR模型;时间序列

一、前言

从股票市场出现到发展至今已有四百多年历史,股票能够在股票市场内交易,是当前经济发展中不可或缺的重要部分,对各大公司来说是筹备资金的重要方式。同样,股票也可以从侧面表现出各大公司的未来发展趋势。股票价格受各种因素的影响,股市中,股票价格每天都在发生变化,每天的变化不仅会给投资者带来获利的可能,也会给投资者带来一定的风险,甚至影响整个社会的整体经济运行发展。股票价格对股票市场有着重大影响,对于股票交易来讲,选择合适的股票十分关键,择股正确会使投资者获利,因此正确预测股票走势十分必要,股票预测就成为股票市场中择股的必要手段。

随着科技发展,计算机水平不断提高、先进算法不断成熟,人工智能一直处于社会关注的热点,在各领域对人工智能的应用都会掀起热浪,各行各业通过使用人工智能来解决问题并取得有效进展。得益于机器学习对数据的高效处理,越来越多的研究者通过机器学习进行数据分析处理,从中挖掘大量实用信息并以此获利,机器学习对金融行业的发展有着重要的促进作用。

从单个投资者到整个社会经济,股票预测都十分必要,当前对股票预测的研究存在各种各样机器学习算法,机器学习可以有效提高股票预测精度。本文基于机器学习模型,介绍目前用于股票预测的机器学习模型,建立模型对先进数通和科大讯飞的股票数据进行预测。

二、股票预测研究现状

近年来,研究者使用了多种预测方法用于股票预测,包括单一模型、改进模型和集合模型。

(一)单一模型

李潇宁(2019)以上证00001股的股票数据为依据,在不知将来股票数据的情况下使用多元线性回归模型和时间序列ARIMA模型(差分整合移动平均自回归模型)两种预测方法,对00001股股票的收盘价做预测,比较两种模型的精度[1]。黄秋萍等人(2015)分别介绍了基于小波神经网络模型、SVM模型和BP神经网络模型的不同股票预测研究,以上证指数2000年到2014年的交易数据为依据,对上证这些历史股票数据的价格走势进行训练,并以总盈利率、走势准确性和均方误差三个指标评价三个模型的预测结果[2]。赵康银等人(2020)建立ARIMA模型,将TCL集团2019年的历史股票数据作为训练集,预测该集团2019年9月17日的收盘价[3]。Lin Lei(2022)基于RNN对上证指数股票数据进行预测,并分析其收敛速度,实验表明股票数据的合理性和其性能与拟合效果成正比[4]。李嘉浩(2021)鉴于支持向量机模型预测精准度高和预测速度快的特点,采用支持向量机对宝钢股份和恒瑞医药的股票收盘价进行预测,将2018年至2020年的股票数据作为训练集,将结果与真实数据比对有90%的准确率[5]。

(二)改进模型

江柏霖等人(2021)为解决RNN(循环神经网络)在处理数据过程中,面对大量数据会出现梯度爆炸等状况导致预测的精准度降低的问题,在RNN中引入了LSTM模型(长短期记忆网络模型),并以GQY视讯的股票数据作为实例,对该集团2018年至2020年的股票最低价、最高价、成交额、开盘价、收盘价等股票数据进行训练,以股票收盘价为输出,结果表明该方法提高预测精度,并降低计算消耗[6]。方红等人(2019)采用改进之后的LSTM模型对股票数据进行预测,致力于解决LSTM模型的滞后问题。在模型输入部分,选取关联性大的公司股票数据与预测的股票价格相结合作为模型输入,选取多次训练之后,滞后性得到显著降低的特征向量和将相关文本内容经过情感分析之后得到的情感分值作为输入[7]。黄建华等人(2022)为解决LSTM模型因计算成本因素导致最优值确定困难和缺乏客观性的定参而影响其拟合能力等问题,通过改进的粒子群算法来优化模型的重要参数,减少主观性,提高整体最优性,从而得到更高精度的预测模型,并选取了上证指数和深证指数的股票数据对改进的LSTM模型进行评估,验证了模型有效性[8]。王燕等人(2019)鉴于XGBoost模型在股票預测方面会同时保证精准度和速度的特点,将网格搜索算法与该模型相结合构建改进的GS-XGBoost模型,网格搜索算法用来对模型的参数进行优化,最后选取中国建筑、科大讯飞等公司从2005年至2018年的股票数据为研究对象,将不同模型与改进的GS-XGBoost模型比较平均绝对误差(MAE)、均方误差(MSE)和均方根误差(RMSE)的结果,结果显示改进的GS-XGBoost模型更具有效性[9]。

(三)组合模型

陈登建等人(2022)采用将自回归差分移动平均模型(ARIMA)与支持向量机(SVR)滚动残差模型相结合的组合模型用于股票数据预测,以提升预测精度为目的,该组合模型中ARIMA模型的作用是根据历史股票数据预测股票走势方向,支持向量机滚动残差模型的作用是修正ARIMA模型预测出的数据残差,最终得到组合模型的预测结果。研究实例选取贵州茅台2008年到2021年的数据,预测其收盘价,验证组合模型的有效性[10]。杨智勇等人(2023)提出以LSTM模型为基础的BiLSTM-SA-TCN模型,该模型结合了自注意力机制(SA)和时间卷积网络(TCN)的双向长短期记忆网络模型(BiLSTM),来解决预测模型现存的功能缺乏多样性问题。BiLSTM-SA-TCN模型可以对股票数据进行高效学习,预测得出第二日的股票收盘价,实验结果表明该模型的预测结果误差降低、精度和拟合度提高,有效解决模型的时效性问题[11]。谢游宇等人(2023)提出EMD-SSA-LSTM-SVR 组合模型,该模型将经验模态分解模型(EMD)、LSTM模型、SVR模型和奇异谱分析模型(SSA)相结合,综合各个模型的优点,EMD模型和SSA模型通过对原始序列分解得到不同时间尺度的子序列,进行分解有效提高模型预测精准度,实证以沪深300指数为依据,与现存的其他基于EMD和SSA的模型相比,EMD-SSA-LSTM-SVR 组合模型的精度高于其他模型[12]。闫冬(2012)提出一种ARMA-GARCH组合模型,该组合模型将ARMA模型用于预测处理之后的平稳的时间序列数据,结合广义自回归条件异方差模型(GARCH)的特点,得到预测精度更高的组合预测模型,通过预测上证指数来验证该组合模型的有效性[13]。孙存浩等人(2020)提出一种BP-LSTMB组合模型,该模型结合基于BP神经网络模型与LSTM神经网络模型,并通过实验验证该组合模型较传统模型有更高的精准度[14]。

三、模型简介

(一)LSTM模型

LSTM模型全称为长短期记忆网络模型,是专门用来处理循环神经网络的长期依赖问题而存在的模型,可以说LSTM模型是RNN模型的变体形式,由四部分组成,分别为记忆细胞、遗忘门、输入门和输出门。LSTM的独特门结构保证该模型可以通过记忆长期有效信息,避免长期有效信息被忽略的问题,解决循环神经网络模型的梯度爆炸和消失问题。梯度消失会造成神经网络调参速度快速下降,梯度爆炸则会造成学习不稳定的问题。LSTM模型的门结构使模型保留对之前训练数据的记忆,减少梯度消失的发生。LSTM模型虽然可以有效地处理时间序列数据,但仍存在预测滞后性和局部最优解等问题。

每次输入时,LSTM会将新的输入信息与上一步的输出信息结合来决定是否遗忘一些记忆,经过sigmoid神经层,在单元状态上做点对点乘,结果为0的分量被遗忘,在输出门结合当前时刻输入的值与前一时刻的输出值,经过tanh函数和sigmoid函数后,整合的向量点对点乘得到该时刻输出。在LSTM 模型的门结构中,遗忘门用来决定是否遗忘信息,保留重要有用信息;输入门控制不同时刻信息的输入;输出门主控信息输出。

(二)ARIMA模型

ARIMA模型全称为差分整合移动平均自回归模型,是一种时间序列预测模型。在股票预测模型研究中,ARIMA模型是一种很常见的预测模型。ARIMA模型实际上是移动平均模型(MA)、自回归模型(AR)和差分法相结合的模型,ARIMA(p,d,q)中,p是自回归项数,q是滑动平均项数,d是差分次数也称为阶数。

ARIMA模型的预测步骤为:第一,测试序列平稳性,构建ARIMA模型时间序列必须是平稳的,选择历史数据做预测就说明希望时间序列在历史数据上的某些性质可以一直处于不变的状态,这就要求了时间序列的平稳性,若时间序列是非平稳的,那么历史数据对预测就没有任何意义。在这一步通常选择DF和ADF单位根检验,如果检测出的p值结果大于0.05,则说明时间序列是非平稳的需要差分,若结果小于0.05则说明是平稳的。差分就是将非平稳的时间序列转化为平稳的操作,对数据做差分处理之后得到新的数据集,再次检验平稳性,依据差分次数也就是d阶,出现一阶差分、二阶差分等,通常情况下不会超过二阶差分。第二,识别AR模型的p阶和MA模型的q阶,使用自相关函数(ACF)和偏相关函数(PACF)来识别p和q。第三,模型预测,参数确定之后,就可以估算出预测模型的准确性,对测试集的数据进行预测。

(三)支持向量机模型

支持向量机(SVM)作为一种从统计学理论发展起来的机器学习方法,具有相当完善的数学理论。SVM的优势主要体现在处理非线性、小样本和高维度问题,泛化能力较强,预测结果受核函数选择影响,不少研究将SVM应用到股票预测方面。在股票预测方面,支持向量机的作用是实现高低维度和线性非线性的问题转化,将低维度转化为高维度,非线性转化为线性。SVM通过有监督的学习对数据进行分类,是一个线性分类器。

(四)BP神经网络

BP神经网络全称为反向传播神经网络,BP神经网络模型是一种应用广泛的模型,常用来模型分类、时间序列预测和函数逼近等,在股票市场中常用于预测股票数据,BP神经网络在训练样本数据过程中不断修正阈值和权值缩小误差,不断逼近期望值。反向传播神经网络分为三部分,分别是输入层、输出层和隐藏层,是一个典型的多层网络,层与层之间的神经元存在权连接,同一层的神经元不存在权连接。BP神经网络通过Sigmoid函数得到输出值,输入值不应太大,避免造成神经元过饱和。BP神经网络具有强泛化能力,可在少数迭代下实现精度提升,但也存在不足,比如收敛速度慢、全局搜索能力低等问题,反向传播神经网络容易造成局部极小值,使预测精度降低。

(五)卷积神经网络

卷积神经网络简称CNN,专门处理有网格结构的数据,CNN由输出层、输入层、激活层、卷积层、全连接层和池化层组成。这些层结构使得CNN具有权重共享、局部感知和多核的特点,CNN在处理图像、语音、文本等领域有着广泛应用,也有研究人员将CNN用于预测金融时间序列。卷积层是CNN层结构的核心层,大量的计算在卷积层产生,计算量大部分是在該层,卷积层可以说是神经元的一个输出,神经元只观察数据的一小部分,接着与位于左右的其他神经元共享参数,还可以降低参数的数量,从而降低计算量,防止因参数过多造成过拟合现象。池化层的池化操作包括平均池化和最大池化两种,最大池化的效果较优,池化层在CNN层结构中可以减小特征空间维度。全连接层将当前层的全部节点与下层节点连接。

四、模型应用

(一)ARIMA模型应用

该部分选择了从Choice金融终端下载的科大讯飞集团2017年至2020年的股票开盘价作为训练集,预测2019年12月30日到2021年6月14日的股票开盘价,首先处理数据,将每周的开盘价平均值算到周一上,可视化数据集可发现存在空缺值并且开盘价变动大,因此该序列数据可能不平稳,需要做时间序列平稳性检验(ADF),结果p值大于0.05,拒绝原假设,需要对数据进行差分处理,对数据进行一阶差分后再进行ADF检验,得出结果p值小于0.05,接受原假设。

给ARIMA模型定阶,由ADF检验得到ARIMA(p,d,q)中d等于1,现在确定p和q,对数据做自相关和偏自相关图,最后确定模型为ARIMA(1,1,0),使用ARIMA(1,1,0)模型来预测科大讯飞2019年12月30日到2021年6月14日的股票开盘价走势,结果见图1。

(二)VAR模型应用

该部分选择从Choice金融终端下载的先进数通2017年1月3日至2023年4月24日之间1533个交易日的股票开盘价、收盘价、最高价和最低价作为数据集,选取1503个交易日作为训练集用来构建预测模型,通过向量自回归(VAR)模型预测先进数通2023年3月13日至4月24日30个交易日的开盘价、最高价、最低价和收盘价。首先检验时间序列平稳性,对四项指标做单位根检验,得出p值大于0.05,说明该序列属于非平稳序列;做一阶差分处理,再进行单位根检验,观察得出的p值小于0.05,说明该序列属于平稳序列。接下来对VAR模型定阶,再次使用阶数逐步增加的方法,选择对应AIC最小的阶数,运行结果显示AIC值最小对应的值是2,则该模型定阶为2,接着对30个交易日的数据进行预测并得出预测准确率,准确率为98.02%,预测结果见图2。

五、结语

股票預测一直是股票市场的研究热点,股票预测存在非常多的预测方法,预测方法的种类也在不断增加。本文总结了基于机器学习的股票预测研究,从单一模型、改进模型和组合模型三个角度对股票预测的研究做综述,介绍各种预测模型,分析其优缺点,单一预测模型的预测大多存在一定局限性,改进模型主要针对单一模型存在的缺陷进行改进,组合模型会结合多模型优点,采用改进模型和组合模型可以更有效地解决问题。最后选择先进数通和科大讯飞的股票数据,使用VAR模型和ARIMA模型分别进行预测并得出结果,具有一定的应用研究意义。

参考文献

[1]李潇宁.多元线性回归与时间序列模型在股票预测中的应用[J].科技创业月刊,2019,32(02):153-155.

[2]黄秋萍,周霞,甘宇健,等.SVM与神经网络模型在股票预测中的应用研究[J].微型机与应用,2015,34(05):88-90.

[3]赵康银,薛亚楠.基于ARIMA模型的TCL集团股票预测及评价[J].广西质量监督导报,2020(09):144-145.

[4]Lin Lei. Stock Prediction and Analysis based on RNN Neural Network[J]. SHS Web of Conferences,2022,151.

[5]李嘉浩.基于支持向量机的股票预测与分析[J].经济研究导刊,2021(32):107-110.

[6]江柏霖,岳杰,兰胜杰.基于LSTM神经网络的股票预测系统的研究[J].河北建筑工程学院学报,2021,39(04):165-170.

[7]方红,韩星煜,徐涛.改进型基于LSTM的股票预测方法[J].安徽大学学报(自然科学版),2019,43(06):36-42.

[8]黄建华,钟敏,胡庆春.基于改进粒子群算法的LSTM股票预测模型[J].华东理工大学学报(自然科学版),2022,48(05):696-707.

[9]王燕,郭元凯.改进的XGBoost模型在股票预测中的应用[J].计算机工程与应用,2019,55(20):202-207.

[10]陈登建,杜飞霞,夏换.基于ARIMA与SVR滚动残差模型组合的股票预测[J].计算机时代,2022(05):76-81.

[11]杨智勇,叶玉玺,周瑜.基于BiLSTM-SA-TCN时间序列模型在股票预测中的应用[J].南京信息工程大学学报(自然科学版),2023,15(06):643-651.

[12]谢游宇,王万雄.基于EMD和SSA的股票预测模型[J].计算机工程与应用,2023,59(18):285-292.

[13]闫冬.基于ARMA-GARCH模型的上证指数短期预测研究[J].重庆理工大学学报(社会科学),2012,26(10):36-39.

[14]孙存浩,胡兵,邹雨轩.指数趋势预测的BP-LSTM模型[J].四川大学学报(自然科学版),2020,57(01):27-31.

责任编辑:张津平、尚丹

猜你喜欢
ARIMA模型时间序列VAR模型
基于时间序列模型的中国出口总额分析及预测
基于R软件的金融时间序列的预测分析
基于Eviews上证综合指数预测
基于时间序列的我国人均GDP分析与预测
基于线性散列索引的时间序列查询方法研究
我国快递业与经济水平的关系探究
安徽省产业集群与城镇化的互动关系
基于ARIMA模型的沪铜期货价格预测研究
碳排放、产业结构与经济增长的关系研究
基于组合模型的能源需求预测