李奋华,赵润林(.运城学院计算机科学与技术系,山西 运城044000;2.中国科学院大学,北京0090)
一种基于时间序列分析的股票走势预测模型
李奋华1,2,赵润林1
(1.运城学院计算机科学与技术系,山西 运城044000;2.中国科学院大学,北京100190)
在信息爆炸时代,在股市中积累的具有时间标签的股票交易数据越来越多,仅仅依靠传统手工的股票数据分析办法无法有效地获取对投资者有价值的知识。为了能够从海量股票历史数据中更好地获取对投资者有用的信息,高效地指导投资者投资,同时,为股票市场管理提供有效的决策支持,在股票分析中引入数据挖掘技术,提出一种基于时间序列的股票走势预测模型,在真实股票数据集上的实验表明,该模型对股票走势的预测具有较好的效果。
信息爆炸;数据挖掘;时间序列分析;股票预测
国家自然科学基金项目(No.61272480)
随着信息技术的迅猛发展,各行业数据库中存储的具有时间标签的数据越来越多,这些数据随着时间的推移规模越来越大,例如,医院计算机系统中存放的关于病人的病情诊断、用药等跟踪信息;在股市中股票随时间的交易数据等。如何从这些海量的时间标签数据中挖掘出实际有价值的知识或模式成为一项重要而富有挑战性的研究课题,这就是所谓的时间序列挖掘数据挖掘问题[1]。
作为数据挖掘研究的一项复杂任务,时间序列数据挖掘(Time series data mining)是指从海量的时间序列历史数据中挖掘出事先未知、实际有用的信息或模式。时间序列数据挖掘在股票市场中的应用上尚处于起步阶段,随着该方法在股票市场中的普及和重视,其必将在该领域获得更加广泛的应用。同时,这种智能化的技术分析手段不仅能够帮助投资者规避风险、降低投资损失,而且也能够使得股票市场的秩序更加条理井然[2]。
为了能够有效地指导投资者投资股市和对股票市场管理提供高效的决策支持,本文将数据挖掘技术引入到了股票数据分析中,提出了一种基于时间序列分析的股票走势预测模型,并在真实的股票交易数据集上对其预测效果进行了验证。第2节简要地介绍了常用的时间序列预测方法,在此基础上,第3节提出了一种基于时间序列的股票走势预测模型,并在真实的股票交易数据集上进行了实验验证,预测效果良好。
时间序列预测方法是复杂时间序列数据分析中非常实用的一类预测方法。该类预测方法是以数学公式形式构建的模型为基础,该模型符合时间序列特征,首先,它把时间序列数据集分为训练集和测试集两部分,然后,在训练集上对构建模型进行有指导学习,当模型的预测精度达到能够接受的程度时,就可以用该模型来对未知的时间序列数据进行预测和分析。从宏观上来看,时间序列预测方法主要包括线性时间序列预测方法和非线性时间序列预测方法两类,接下来,简要介绍两种典型且常用的时间序列预测方法[3]。
(1)指数平滑预测法
指数平滑预测法是社会生产预测中最常用的一种预测方法,该方法以移动平均法为基础,对不同时期的数值赋予不同的权重值,最近数据赋予的权值大,时间久远的数据赋予的权值小。根据以往的历史时间序列数据,该方法通过计算指数平滑值,采用合适的数学公式形式预测模型来对未来值进行预测。在计算指数平滑值时,依据平滑次数的差异,该方法可以分为一次指数平滑、二次指数平滑和多次指数平滑。在实践中,一次指数平滑预测方法用的较频繁,因此,下面重点介绍一次指数平滑预测法。
一次指数平滑预测法的基本思想是:通过计算当前期实际值和当前期预测值的加权平均数来对下一期进行预测,如公式(1)所示:
其中,x~m+1表示m+1期的预测值,xm、x~m分别表示m期的实际值和预测值,δ∈[0,1]表示平滑系数,δ、(1-δ)分别表示m期实际值和预测值在下期的预测中所占的权重。该方法的预测精度,可以用误差均方差来评估,如公式(2)所示:
其中,MSE表示误差均方差,SSE表示误差平方和,N表示误差的个数。
指数平滑预测法是一种线性的时间序列预测方法,如果时间序列数据具有非线性的特点,采用该方法的预测精度就不很理想,在这种情况下,采用非线性的时间序列预测方法更合适。
(2)ARMA预测法
ARMA预测方法是一种非线性时间序列预测方法。因为实际社会中绝大多数的时间序列数据具有非线性的特征,所以这种方法在实践中最为常用。该方法的基本思想是:首先,将非平稳的时间序列数据通过若干次差分运算变成平稳的时间序列数据,然后,用合适的数学模型来近似描述该序列,当该模型能够被接受后,就可以利用该模型根据时间序列的历史数据值和现在值来预测未来值。ARMA预测方法由AR过程和MA过程两部分组成。通常情况下,一个m阶自回归过程AR(m)可以用公式(3)表示:
其中,yt表示第t期的观察值,wt是第t期的随机扰动项目,{θ1,θ2,…,θm}表示自回归系数。一般来说,wt常被看作是一个n阶的移动平均过程 MA(n),如公式(4)所示:
其中,ηt表示第t期的误差值,{β1,β2,…,βm}表示移动平均系数。将公式(4)代入公式(3),可获得ARMA (m,n)模型的表示形式,如公式(5)所示:
在实际的经济和工程系统中,时间序列数据总是或多或少涉及一些非线性因素,当这些非线性因素影响较小或只对局部有较小影响时,可以采用线性时间序列方法来进行预测,当得不到满意结果时,就需要采用非线性时间序列方法来进行预测,才能获得满意的预测精度[4]。
针对股票投资的高风险和股票市场管理不规范的现状,为帮助投资者规避风险进行有效投资,进一步为股票市场管理提供有益的决策支持,本文把数据挖掘技术引入到股票分析中,基于股票数据自身的特点,提出了一种基于时间序列分析的股票走势预测模型,如图1所示,并在真实股票时间序列数据集上(即:2016 年5月北京利尔的股票日数据)进行了实验验证。
本文采用Clementine 12数据挖掘工具来构建股票走势预测模型[5],并在北京利尔股票日数据集上进行了有效实验。该数据集包含5个与股票交易相关的数据特征,共20条记录,如图2所示。
在实验过程中,我们分别采用ARMA预测方法和指数平滑预测方法对北京利尔股票数据进行了走势预测,图3表示ARMA预测方法在实验数据集上的预测结果,图4表示指数平滑预测方法在实验数据集上的预测结果。通过对图3的分析,我们能够发现:不仅预测结果的精确数据与实际数据很相近,而且预测结果走势图和实际股票的走势也基本吻合。与图3的预测结果相比较,图4的预测结果数据与实际数据相差较大,同时,预测结果走势图与实际股票的走势区别也很大。由此看来,ARMA预测方法对股票的预测效果要远远好于指数平滑预测方法,这也符合绝大多数时间序列股票数据具有非线性特征这一特性,这说明,与线性时间序列预测方法相比,非线性时间序列的预测方法在实际的股票市场预测中具有更好的预测效果。
图1 基于时间序列分析的股票走势预测模型
图2 北京利尔的股票日数据集
图3 ARMA方法对北京利尔股票走势预测结果
图4 指数平滑方法对北京利尔股票走势预测结果
基于股票投资的高风险和股票市场管理不规范的现状,本文从数据挖掘的角度提出了一种基于时间序列分析的股票走势预测模型,在真实股票数据集上进行了实验,预测效果较好,能够在一定程度上帮助投资者规避投资风险,同时还能够对股票市场管理提供有效的决策支持,具有一定的实用价值。
[1]陈毅恒.时间序列与金融数据分析[M].北京∶中国统计出版社,2004.
[2]章劲松.金融时间序列分析的非线性方法研究[M].安徽∶中国科技大学,2002.
[3]邵峰晶,于忠清.数据挖掘原理与算法[M].北京:科学出版社,2009.
[4]施然.浅谈数据挖掘在证券分析中的应用[J].价值工程,2011,10∶127-128.
[5]熊平.数据挖掘算法与Clementine实践[M].北京:清华大学出版社,2011.
Information Explosion;Data Mining;Time Series Analysis;Stock Prediction
A Novel Stock Trend Prediction Model Based on Time Series Analysis
Li Feng-hua1,2,ZHAO Run-lin1
(1.Department of Computer Science and Technology,Yuncheng University,Yuncheng044000;2.University of Chinese Academy of Sciences,Beijing 100190)
In information explosion era,there are the massive stock exchange data being stored in the computer systems in stock market.However,the valuable knowledge for the investors is not obtained if there are only some traditional and manual analysis methods for stock data.It is very vital to find the potential and useful information for many investors from the massive stock data,which can instruct the investors and the stock market management decision effectively.Applies data mining technologies to stock analysis,proposes a novel stock trend prediction model based on time series analysis.Through the experiments on real stock exchange datasets,some empirical studies are shown to demonstrate the effectiveness of this model on the real stock exchange datasets.
1007-1423(2016)20-0014-04
10.3969/j.issn.1007-1423.2016.20.003
李奋华(1977-),男,山西昔阳县人,博士,讲师,研究方向为数据挖掘、社会计算和电子健康
赵润林(1960-),男,山西运城人,本科,副教授,研究方向为计算机系统结构
2016-06-07
2016-07-05