1、第 27卷 第 7期吉 林工程 技术师 范学 院学报Vol?27No?7?2011年 7月?Journal of JilinTeachers Institute ofEngineering and Technology?Jul?2011收稿日期:2011?05?28作者简介:吕?琦(1979?),男,河南郑州人,华北水利水电学院管理与经济学院讲师,博士,主要从事数量经济、经济模型教学研究。基于 SVM 的股票时间序列的预测研究吕?琦(华北水利水电学院 管理与经济学院,河南 郑州 450011)摘?要 支持向量机(support vectormachine,SVM)是以统计学理论为基础的一种新的
2、模式识别方法,目前已广泛应用于股票价格的预测中。在股市投资问题的研究中,股价作为时间序列数据是复杂的、非线性的,并且极不稳定。文章将支持向量机引入到股价预测的建模中,并对效果进行了分析。关键词 支持向量机;SVM;股票价格预测中图分类号 F830.91?文献标识码 A?文章编号 1009?9042(2011)07?0048?02The StockM arket Forecast System Based on SVMLV Q i(School ofM anagement and Economics,North China University of Water Resourcesand Ele
3、ctric Power,ZhengzhouH enan 450011,China)Abstract:SVM is a new type ofmachine learning methodwhichwas developed,and a new da?tam ining method based on the statistical learning theory.It has beenw idely used in forecastingthe stock price,which has become a hotspot in the internationalmachine learning
4、 field.W iththe traditional ti m ing prediction technique,it is very difficult to open out its inherent rules.Inorder to i mprove the pattern analysis of the stockmarket price based on SVM theory,this paperputs for ward a new method using SVM to forecast the stock price.Keywords:support vectormachin
5、e;SVM;stock price forecast?股票投资越来越成为人们生活中不可或缺的重要内容,但是股票投资的收益与风险往往是成正比的,即投资收益越高,可能冒的风险越大。一种有效的分析方法,特别是能够最大限度地增加收益、降低风险的方法是非常需要的。但是由于股票价格可以看做是一个随机的时间序列,很多随机因素都能够或多或少地对股票价格产生或大或小的影响,因此股票的价格就表现出了复杂的非线性、不确定性,利用传统的时间序列预测技术很难揭示其内在的规律。近年来,随着模式识别特别是机器学习领域的发展,支持向量机(support vectorm achines,SVM)被应用于股票价格预测中。较多的数
6、据和实验结果表明,支持向量机算法较之传统的股票价格指数的预测技术而言,预测更为准确,具有明显的优越性。一、支持向量机算法介绍传统统计学研究的是样本数目趋于无穷大时的渐近理论,但在实际问题中,样本数往往是有限的,统计学习理论为解决有限样本问题提供了一个统一的框架,V.Vapnik提出的支持向量机理论因其坚实的理论基础和诸多良好特性在近年获得了广泛的关注。目前已经有许多事实证明,支持向量机最基本思想之一是结构化风险最小化原则要优于传统的经验风险最小化原则,在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势。支持向量机来源于分类问题,从本质上讲是一种前向神经网络,根据结构风险最小化准则,在
7、使训练样本分类误差极小化的前提下,尽量提高分类器的泛化推广能力。支持向量机的关键在于核函数,低维空间向量集通常难以划分,解决的方法是将它们映射到高维空间。第 27卷?第 7期吕?琦:基于 SVM 的股票时间序列的预测研究?而核函数正好巧妙地解决了这个问题。也就是说,只要选用适当的核函数,我们就可以得到高维空间的分类函数。SVM 的核心思想在于使分类间隔最大实际上就是对概化能力的控制,就是说,不仅能将两类分开,而且使分类间隔最大两类线性可分的支持向量机问题是一个二次规划问题,可以转化为优化问题。同时,经济系统最重要的特点就是非线性,支持向量机能够应用在经济领域的最关键的一个问题在于能够处理非线性
8、问题,可以通过非线性变换转化为某个高维空间中的线性问题,在变换空间求最优分类面。为了避免高维空间中的复杂计算,支持向量机采用一个核函数代替高维空间中的内积运算。当一种核函数满足 Mercer条件,它就对应某一变换空间中的内积,这样就转化为近似线性的解决方案,因此就可以较好地解决非线性的分类问题。目前,SVM 算法在分类方面的应用多在模式识别、回归估计、概率密度函数估计等方面,本文将 SVM 算法引入经济领域,对经济区域进行分类和预测,获得了较为满意的效果。二、预测过程(一)样本生成用 SVM 预测股市如下:已知 A股交易数据的收盘价作为样本,为时间序列中每 n个交易数据与第n+1 个数据建立关
9、系。前 n个数据作为观测序列,第 n+1个数据作为结果值。本文取 H 股中的腾讯公司 2005年的日线数据作为样本,取 300组数据作为训练样本,30组作为预测,数据包括输入数据,及前 30天的收盘价:5.400,5.500,5.500,5.650,5.6?,输出数据为第 31天的收盘价 5.900,然后把第 31天的收盘价相对第 30天的收盘价 5.95的涨幅-0.05作为分类依据,这样就完成了样本的收集。(二)训练与预测1.根据样本中第 31天的涨幅值划分成若干个等间距的区间,各个区间分别用不同的离散化数字表示,此时区间的个数即为 SVM 的状态数 N,各个区间内的交易数量 n为观测值数
10、M。2.对于各识别数字,输入前 30天的值作为输入样本,将第 31天的值作为输出样本,在构成输入输出的样本之后,使用这些样本进行训练。3.用训练好的 SVM 模型进行预测,把第 31天的预测结果跟实际相比较得出 SVM 预测的效果是否可以接受。4.对于预测的结果进行大量的测试比对,找到使用 SVM 算法进行股价预测的准确比例,从而获得一个相对可靠的数据。(三)预测结果经过 30组的检验,有 19条预测正确,正确率达到 63.3%。因为时效性,即预测只能对与训练样本时间间隔较小的时间进行预测,因此预测样本不可能取得过大,所以得到的结果还需要进一步检验。三、总结支持向量机方法是建立在统计学习理论的
11、 VC维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷,以期获得最好的推广能力。支持向量机方法可以解决小样本情况下的机器学习问题,可以提高泛化性能,可以解决高维问题、非线性问题,避免神经网络结构选择和局部极小点问题,因此 SVM 算法在许多处理序列化动态信号的问题中表现出优越的性能。股票价格走势实际上是一个时间序列而且非常不平稳。本文使用 SVM 方法去解决股票价格走势预测问题,以前 30天收盘价作为输入的训练数据,以 31天的数据作为输出的训练样本,获得的预测效果基本可以接收,并为下一步进行高频数据的研究打下了坚实的基础。参考文献:1郭?辉.一种改进的 SVM 算法及其在股票指数预测中的应用 J.重庆科技学院学报,2008,10(2).2张玉川,张作泉.支持向量机在股票价格预测中的应用 J.北京交通大学学报,2007,31(6).3方?辉,王?倩.支持向量机的算法研究 J.长春师范学院学报(自然科学版),2010,26(3).4邓乃扬.田英杰.数据挖掘中的新方法 支持向量机M.北京:科学出版社,2004.5杜修平.基于数据挖掘的证券态势估计系统 D.天津大学,2006.责任编辑?欧喜军!49!