基于ARIMA模型与神经网络模型的股价预测

2018-01-18 17:27陈小玲
经济数学 2017年4期
关键词:ARIMA模型股票价格BP神经网络

陈小玲

摘 要 了解并掌握股价运行的规律是许多投资者和学者所关注的领域,采用了ARIMA模型和BP神经网络对百度、阿里巴巴两支股票的收盘价进行建模与预测,并对比了两模型的预测精度,结果表明两种预测模型都达到比较理想的预测精度和短期预测可行的效果.

关键词 股票价格;ARIMA模型;BP神经网络;预测

中图分类号 F832 文献标识码 A

Abstract Understanding and mastering the regular pattern of stock operation is an area concerned by many investors and scholars. This paper adopted the ARIMA model and BP neural network to modeling and prediction armed on closing price of the BIDU and BABA. Besides comparing them according to the prediction accuracy, the results show that the two forecasting models can achieve the ideal prediction precision and the effect of short-term forecasting is feasible.

Key words stock-price; ARIMA model; BP neural network; prediction

1 引 言

目前,股票投资成为许多人理财的方式之一,也有越来越多的学者投入到股市的分析与股价的预测中.股票数据通常具有时间的先后性,可以认为是一种时间序列数据,具有显著的非线性、时变性特征,人们对于股市的预测研究已经进行若干年,并提出许多的预测算法[1].

时间序列分析方法有很多,其中,目前应用最广泛的最常见的时间序列模型之一是ARIMA模型,这是由于它的简单性、可行性和灵活性 [2,3].另外,神经网络模型分析也是现代金融时间序列分析的一个常见方法.目前,有关分别建立ARIMA模型和神经网络模型对时间序列进行预测分析的文献并不少.熊志斌(2011)先利用ARIMA模型预测线性主体,再结合神经网络预测主体的残差部分,并以人民币汇率序列为例,证实其模型预测的有效性[4].蒋燕(2006)采用ARIMA模型对广西全社会固定资产投资额数据进行预测分析,得到较准确的预测结果[5].马法尧(2014)通过以我国家电行业某企业年销售额为实例构建预测模型,表明BP神经网络比ARMA模型的预测精度更高 [6].樊重俊和樊鸿飞(2008)通过谈论了神经网络方法和传统的统计预测方法的对比,说明了神经网络方法有助于提高精度[7].郝勇和刘继洲(2006)运用BP神经网络,对公用事业指数波动规律进行预测和分析,达到预测精度较理想的效果[8].

本文先探讨了ARIMA模型和BP神经网络模型在时间序列分析中的预测原理与应用,再以百度(BIDU)、阿里巴巴(BABA)的收盘价作为股价的时间序列为实证,分别建立了ARIMA模型和BP神经网络模型进行预测,并比较两种模型预测的精度,检验模型的有效性.

2 ARIMA与BP神经网络模型简介

2.1 ARIMA模型原理

将自回归模型的差分形式与移动平均模型结合,所得结果是一个ARIMA模型.它先对非平稳的时间序列进行d阶差分来构造一个平稳的新序列,再对新序列进行自回归和移动平均拟合,确定模型的阶数p和q,即对新序列建立ARMA(p,q)模型,通过模型诊断后进行预测.ARIMA(p,d,q)模型的方程表示为:

2.2 BP神经网络模型原理

BP神经网络,它是目前应用于经济和金融领域预测的比较广泛的神经网络.它将原始信息输入到由一个或几个神经元构成的输入层,而这些神经元向前连接到下一层,直到到达输出层.图1网络是一个2-3-1的BP神经网络结构图.

假定现有时间序列Xt,若网络输入N个历史数据,输出是下一时刻的预测值,则称为叫单步预测法.若网络输入N个历史数据,输出是下M个时刻的预测值,则称为多步预测法[9].本文采用的是单步预测法.

为了构建BP神经网络模型,首先,确定网络模型的输入和输出数据.接着便是确定网络的结构,即把输入层、输出层和隐含层的神经元个数给确定下来.输入层的神经元个数由输入数据确定,输出层神经元个数由输出数据个数确定,而隐含层中神经元个数的选择也是比较重要的[10],它对神经网络预测的精确度有较大的影响,常用的确定最佳隐含层神经元个数的经验公式为:

下一步,便是确定节点激活函数.只要激活函数是非线性函数,那么它对网络的性能影响不大.神经网络性能的重要点在于隐含层的数量和隐含层节点数.确定好后,训练BP网络,并运用网络进行仿真,计算仿真误差,来判断网络的预測精度,返回样本的预测值.

3 基于百度和阿里巴巴的股价

预测模型的实证分析

3.1 样本数据的选取

本文选取了2014年9月1日~2017年8月14日的百度股票(BIDU)和阿里巴巴(BABA)的收盘价来进行时间序列分析.数据来自于雅虎财经网.本文实证部分图形以百度为例.

3.2 模型的构建

3.2.1 ARIMA模型的建立与预测

1)平稳化处理与检验

利用时间序列分析进行建模,首要条件是要求序列必须满足平衡的要求,即对数据平稳化.观察原始数据的时序图,发现该时间序列具有一定的波动性.再对该序列进行单位根ADF检验,结果如表1所示.endprint

由表1可知,ADF检验的P值0.6大于0.05,说明原序列存在单位根,更进一步证明了该序列并不是平稳序列.于是进行差分处理,同样地,先观察一阶差分后的新序列的时序图,发现其呈现平稳状态,再对新序列进行单位根检验,结果如表1,ADF检验的P值远小于0.01,即新序列不存在单位根,从而说明一阶差分后的新序列是平稳序列,因此d=1,可以建立ARIMA(p,1,q)模型.

2)ARIMA模型拟合与参数估计

对模型进行拟合与估计,利用偏相关系数和自相关系数进行判断和选择,然后采用AIC准则,即AIC值越小其精度越高,拟合得较好,择优选择模型.图2为一阶差分序列自相关图(ACF)和偏自相关函数图(PACF),从中可发现自相关系数和偏相关系数都基本落在置信区间内,且自相关图和偏相关图都在K=3处落在2倍标准差的置信带边缘,则p,q可能取值都可为1或2.为进一步确定模型,比较各模型的AIC检验统计量和对数似然值,结果如表2所示,显然ARIMA(2,1,2)模型优于其他3个模型,于是对该序列选择ARIMA(2,1,2)模型较为合适.

3)模型诊断检验及预测

对模型ARIMA(2,1,2)的残差序列进行诊断,从残差图、自相关图和Ljung-Box上可以看出,该残差序列为纯随机的白噪声序列,从而建模有效,模型建立是合理的.因而,利用ARIMA(2,1,2)模型进行预测,其结果如表3所示.

3.2.2 BP神经网络模型的建立与预测

1)数据处理

本文选用2014年9月1日~2017年8月14日的百度股票数据的收盘价序列做神经网络的实证分析,其中共有740个数据,如同前文ARIMA模型后10个数据作为预测样本,训练样本数为734.

2)构建BP神经网络模型

本文采用BP三层网络,首先输入样本为前4天的收盘价,即输入层神经元有4个,当天的收盘价作为网络输出,即输出层神经元为1.其次是确定隐含层神经元的个数,根据公式(2),隐含层神经元个数在3~13之间.本文根据循环语句实验,并根据模型的预测均方误差最小原则,确定隐层的神经元个数为3,所以本文的网络结构为4-3-1.

3)神经网络模型训练与预测

对网络进行仿真,并将预测值与预测相对误差输出,如表3所示.

用以上同样的ARIMA模型与BP神经网络模型预测阿里巴巴的收盘价,可以得到结果如表4所示.

从表3可以得到,ARIMA模型对百度股票的开盘价做短期预测是有效的,从相对误差上来看,其预测效果比较好,比较小的相对误差为0.002 22,比较大的相对误差也只有0.023 01.从相对误差看,BP神经网络模型的预测效果也比较理想,比较小的相对误差为0.001 84,比较大的相对误差也只有0.027 39.从表4可知,ARIMA模型和BP神经网络模型同样适用于对阿里巴巴的股价预测.即可以得到结论,ARIMA模型和BP神经网络模型一定程度上可以预测未来的股票价格,且预测值与真实值的相对误差比较小,说明股票价格具有一定的规律性,运用ARIMA和BP神经网络模型对股票价格进行短期预测是可行有效的.

3.3 模型的优劣评价

为了更加全面地描述不同模型对股票开盘价的预测结果,本文采用均方误差(MSE)和平均绝对误差(MAE)2个指标来衡量模型预测效果的好坏[11].这2指标反映预测值与实际值之间的误差大小,其定义分别为:

式中,yi∧表示预测值,yi表示实际值,N表示预测样本数.对于不同的模型,若预测的MSE和MAE越小,则说明预测精度越高.根据各模型对股票价格开盘价测试集的预测,计算了各模型的均方误差、平均绝对误差和预测值,下面给出各预测模型的预测精度对比表(见表5).

从表5的对比结果可知,BP神经网络模型的预测精度并不见得比ARIMA模型的预测精度要高,许多学者研究股票预测的方法,并得出结论,BP神经网络模型的预测精度比ARIMA模型的预测精度要高,显然,这并不是一定成立.对于百度股票,ARIMA模型的MSE和MAE相对神经网络模型的高一点,但对于阿里巴巴股票却是相反的结论.这两种模型的预测能力谁更强并没有唯一的结论,只是适用于部分股票,这也说明股票价格的波动具有一定的随机性.

4 结 论

关于股价预测的问题,许多学者仍在这方面不断研究,用时间序列的预测理论对股票价格预测是可行有效的.正如本文运用ARIMA模型和BP神经网络模型对股票收盘价进行预测,实证结果表明,这两种模型都能够比较准确的预测未来的股票价格,且说明对股票价格进行短期预测是可行有效的.但本文也存在不足之处,一是仅用了静态预测的方法,而且还是单步预测,实际上时间序列方法和神经网络都可以实现多步预测,且股票价格是个动态连续的.二是本文仅从相对误差上评价预测模型的拟合效果,若能结合未来股价的变动趋势来预测评价将更优.当然,股价预测自身并不能形成一个完整的投资决策,至少还需要對风险的评估和相应的风控方法.

总之,本文利用股票历史收盘价作为时间序列数据,构建了ARIMA模型和BP神经网络模型,对未来股票开盘价进行了短期预测,其预测效果比较理想,两种模型对股票价格数据作短期预测是可行有效的.

参考文献

[1] 李美,干晓蓉,刘新乐.ARIMA模型在股价预测上的应用及其傅里叶修正[J].云南师范大学学报,2011,31(5):50-55.

[2] 范剑青,姚琦伟著,陈敏译.非线性时间序列—建模、预报及应用[M],北京:高等教育出版社,2005.

[3] 熊志斌.基于ARIMA与神经网络集成的GDP时间序列预测研究[J].数理统计与管理,2011,30(2):306-314.

[4] 熊志斌.ARIMA融合神经网络的人民币汇率预测模型研究[J],数量经济技术经济研究,2011,28(6):64-76.

[5] 蒋燕.ARIMA模型在广西全社会固定资产投资预测中的应用[J],数理统计与管理,2006,25(5):588-592.

[6] 马法尧.基于BP神经网络模型与ARMA模型的库存预测比较[J/OL].统计与决策,2014(19):34-37.

[7] 樊重俊,樊鸿飞. 非线性经济预测中的神经网络模型与应用[J]. 统计与决策,2008(16):158-160.

[8] 郝勇,刘继洲. 基于神经网络的股票分类指数预测模型[J]. 统计与决策,2006(8):14-17.

[9] 吴玉霞,温欣.基于ARIMA模型的短期股票价格预测[J/OL]. 统计与决策,2016(23):83-86.

[10]周宁.基于神经网络和马尔可夫组合模型的股票价格预测[C]//中国自动化学会控制理论专业委员会.第36届中国控制会议论文集.大连:中国自动化学会控制理论专业委员会,2017:26-28.

[11]王斌会.计量经济学模型及R语言应用[M],广州:暨南大学出版社,2015.endprint

猜你喜欢
ARIMA模型股票价格BP神经网络
基于GARCH族模型的重庆啤酒股票价格波动研究
论股票价格准确性的社会效益
我国股票价格指数与“克强指数”的关系研究
基于多元回归与技术分析的组合股票价格预测