APP下载

基于SVM股票价格预测的核函数应用研究

2016-04-09黄同愿陈芳芳

关键词:支持向量机

黄同愿,陈芳芳

(重庆理工大学 计算机科学与工程学院,重庆 400054)



基于SVM股票价格预测的核函数应用研究

黄同愿,陈芳芳

(重庆理工大学 计算机科学与工程学院,重庆400054)

摘要:对中国银行股票价格进行了回归预测。通过选择最优的径向基核函数,再利用网格寻参、遗传算法和粒子群算法对最佳核函数参数进行对比寻优,构建最有效的支持向量机(SVM)模型,最后对中国银行未来15日的开盘数变化趋势进行预测。实验仿真结果表明:应用构建的 SVM模型预测中国银行未来15日的股票走势是可行的。

关键词:支持向量机;回归预测;开盘数

股票是金融市场的一个重要组成部分,随着社会经济的发展和人们理财意识的提高,越来越多的人开始关心股票市场。如果能对股票进行预测,指导股民做出合理的投资将是十分有价值的[1]。目前,应用于股票研究的传统机器学习方法有很多,如遗传算法[2]、决策树、马尔科夫链、灰色理论[3]等。这些方法都存在一些缺陷,如信息提取困难等,尤其在样本数量少、分布不均的情况下会导致预测误差增大,预测能力降低的问题。股票数据波动较强,具有混沌性、非线性和模糊性的特点,传统的机器学习方法显然无法较好地预测股票趋势。

支持向量机(support vector machine,SVM)是新一代机器学习技术,能够很好地处理小样本、非线性、高维数的实际问题[4-5],解决了传统机器学习方法所面临的训练需要大量数据样本、过学习和欠学习等问题。再加上SVM基于VC维理论和结构风险最小化原理,具有更好的泛化能力,因此SVM能够较好地对股票趋势进行预测[6-9]。

为了研究SVM对股票的预测效果,本文选择中国银行的股票数据进行研究,通过最佳核函数与最优核参数的选择,构建SVM预测模型,从而使得对股票的预测精度达到最优。

1基于径向基核函数的SVM股票预测模型

1.1SVM的原理

给定样本数据集:(x1,y1),(x2,y2),…,(xi,yi),…,(xl,yl),xi∈R,yi∈{-1,+1}

约束条件变为

引入拉格朗日函数和对偶变量有

再根据KKT条件可以得出:

1.2核函数的设定

SVM方法的基本思想基于1909年Mercer核展开定理,即通过非线性映射φ把样本空间映射到一个高维乃至于无穷维的特征空间(Hilbert空间),应用线性学习机的方法解决样本空间中的高度非线性分类和回归等问题。

核函数是SVM的核心,其主要思想是将数据从低维映射到高维特征空间,将低维特征空间的非线性问题转换成高维特征空间的最优线性问题。特征空间由核函数来定义。核函数的学习并不是在高维特征空间进行,而是在相对较小的线性子空间中计算,并没有增加算法的复杂性。

核函数的引入减少了运算量,避免了“维数灾难”,输入样本特征的维数不会对核函数矩阵有影响。

核函数是SVM的核心组成部分,对于SVM算法的研究主要在于充分地理解核函数,这样才能更好地开发SVM训练算法。核函数的选择必须满足mercer条件。常见的核函数有[7]:

线性函数K(xi,x)=xi·x

多项式核函数K(xi,x)=(xi·x+1)d

多层感知器函数K(xi,x)=tanh(kxi·x+θ)

1.3特征属性的选取

常见的技术指标有平滑移动平均线MACD[6]、相对强弱指标RSI[10]、能量潮OBV、顺势指标CCI、随机指标KDJ、乖离率指标BIAS等。这些技术指标都对股票的预测产生一定的影响。本文选择投资者经常使用的、对股票价格影响比较大的几种技术指标进行实验研究。选择中国银行每日开盘价作为因变量,选择开盘价、收盘价、最高价、最低价、成交量、平滑移动平均线(MACD)、相对强弱指标(RSI)、能量潮(OBV)和顺势指标(CCI)9个指标作为样本输入特征属性来预测未来15天的股票走向。

1.4评价指标的选取

对股票预测模型的性能评价主要通过预测结果的精度和可靠性来确定。一般采取误差的形式进行评价,具有科学性。本文采用误差(error)、相对误差(relative error)、均方差(Mean squared error)和相关系数R作为预测结果的精度评判标准。其定义如下:

1.5股票预测分析的步骤

对股票的预测原理进行分析和研究,通过对比Gauss核函数、Sigmoid核函数、多项式核函数构造出来的模型得出最佳核函数。再通过遗传算法、网格寻优、粒子群算法得出最佳核参数,最后进行股票的预测。预测过程如下:

1) 收集将进行预测的银行股票的历史数据,并将这些数据作为训练集和测试集2个部分。

2) 对股票的原始数据进行预处理,将其归一化以提高模型的收敛速度。

3) 通过遗传算法、粒子群算法、网格参数寻优的方法找出最优参数。分别用不同方法寻找到的最优参数对股票数据进行训练学习,并确定每个最优模型参数。进行实验对比,从而确定每个核函数所确定的最优SVM预测模型。

4) 使用训练出来的最优SVM预测模型对中国银行股票15日数据进行预测,得出预测结果。

2仿真实验

2.1数据来源与预处理

本文采用的样本数据主要来自大智慧软件提供的中国银行数据样本,为从2014年8月20日到2015年7月15日的数据,共220组。前205个数据作为训练数据,用于估算模型的参数;剩余15个数据作为预测数据,对构建的SVM模型的精度进行检验。在股票预测中主要是以收盘价作为预测对象。本文主要进行股票短期的预测,将预测未来15天的股票趋势。在实验中对中国银行的开盘数进行归一化处理(这里将其归一化到[0,6]区间),中国银行股票的原始数据与归一化后的数据如图1、2所示。

2.2不同SVM预测模型准确度对比

2.2.1不同核函数预测结果对比

SVM中核函数的选择很重要,采用不同的核函数进行对比(采用[0,6]归一化),结果如表1所示。

图1 原始数据

图2 归一化后的数据

核函数预测结果参数选项线性核函数MSE=0.0349327R=98.5823%‘-c64-g1-t0’多项式核函数MSE=0.000234488R=99.6517%‘-c64-g1-t1’径向基核函数MSE=9.77353e-005R=99.9974%‘-c64-g1-t2’

从表1可以看出:径向基核函数在股票预测上要比其他2个核函数预测效果好。因此,本文选择径向基核函数构建SVM模型。

2.2.2不同方法寻找最优参数股票预测对比

在确定径向基核函数后,再进一步确定如何选取最佳惩罚参数c和核参数g。参数c和g的选取是研究中国银行股票预测的重要组成部分。本文通过网格参数优化SVM、遗传算法优化SVM和粒子群优化算法选择最佳的参数c和g,结果如表2所示。

表2 不同算法寻参对比

从表2可以看出:网格参数寻优得出的结果更有效,更能提高股票的预测精度。因此,本文选取网格参数寻优的方法,从而更有效地构建SVM回归预测模型,使得预测结果更能接近实际结果。网格参数法优化SVM结果如图3、4所示。

图3 网格参数法优化SVM结果(等高线图)

图4 网格参数法优化SVM结果(3D视图)

遗传算法、粒子群算法优化SVM参数的结果如图5、6所示。

由图3~6可以发现:网格寻参的效果更优。为此将参数取整数进行实验,选最佳参数为c=64,g=1。

图5 遗传算法优化SVM参数的结果

图6 粒子群算法优化SVM参数的结果

2.3结果分析

通过不同SVM预测模型对比结果,选择参数c=64,g=1。将数据归一化到[0,6],采用最优参数对SVM进行训练,构建SVM模型,并对中国银行股票指数进行预测,得到的预测结果对比如图7所示。误差、相对误差如图8、9所示。

15日股票价格趋势预测对比如图10所示(将15日原始数据和预测数据处理到[0,1]区间内)。

图7 原始数据与预测数据结果对比

图8 预测结果误差

图9 预测结果相对误差

图10 15日股票价格趋势预测对比

由对比结果可以清晰地看出:中国银行股票15日预测走势同原始走向具有一致性,对反转点位置的确定很精确,在第3,5,8,11,14这些反转点都具有高度的一致性,能够准确地指导股民对股票进行合理的投资。

3结束语

针对传统股票预测方法存在的过拟合、局部最优的缺陷,提出一种基于SVM的股票价格预测模型来预测中国银行股票数据未来15日的走向。仿真实验结果表明:本研究在预测中国银行股票未来15日的走势中具有较高的精度,预测结果可靠性强、误差小,能够为股民提供有用的参考信息。

通过分析可以得到如下结论:

1) 预测结果与参数的选择有关系,同时也会耗费一定的时间,使计算速度降低。

2) 粒子群算法、遗传算法和网格算法各有利弊。本文的预测中网格算法效果更佳。

3) 需要针对具体问题对数据进行预处理。本文由于各指标数值相差较大,需要对数据进行预处理,提高精准度,同时使运算速度较快。

4) 本文仅对中国银行股票进行预测,即针对个股进行预测研究,对于大盘数据的研究具有指导作用。而对于数据的不稳定性、高噪声等问题仍需进行更深入的研究。

参考文献:

[1]周健,钱凯,卢小广.基于股票股利超额收益的实证研究[J].重庆理工大学学报(自然科学版),2015,29(5):147-151.

[2]王唯贤,陈利军.股票价格预测的建模与仿真研究[J].计算机仿真,2012(1):344-347.

[3]杨阳.股票价格预测方法研究[J].经营管理者,2011(16):32,24.

[4]顾亚祥,丁世飞.支持向量机研究进展[J].计算机科学,2011,38(2):14-18.

[5]周哲,杨志霞.基于凹凸过程的双支持向量机[J].重庆理工大学学报(自然科学版),2014,28(10):90-95.

[6]王定成.支持向量机建模与控制[M].北京:气象出版社,2009:22-41.

[7]杨志民,刘广利.不确定性支持向量机[M].北京:科学出版社,2012:19-33.

[8]黄朋朋,韩伟力.基于支持向量机的股价反转点预测[J].计算机系统应用,2010(9):214-218.

[9]张翔宇,王富森.基于支持向量机的上证指数预测研究[J].商业经济,2011(3):104-106.

[10]张玉川,张作泉.支持向量机在股票价格预测中的应用[J].北京交通大学学报,2007(6):73-76.

(责任编辑刘舸)

Application of Kernel Function of Stock Price Forecasting Based on SVM

HUANG Tong-yuan,CHEN Fang-fang

(College of Computer Science and Engineering,Chongqing University of Technology,Chongqing 400054,China)

Abstract:The paper conducted a regression forecast of Bank of China stock index. By selecting the optimal radial basis function, and then, for the optimal kernel function, we selected the parameter optimization using grid homing, genetic algorithm and PSO algorithm to build the most effective SVM model, and finally we predicted the opening number of the Bank of China in the next 15 days. The simulation shows that using SVM model to prediction Bank of China shares in the next 15 days the trend is very feasible.

Key words:support vector machine; regression prediction; opening quotation

文章编号:1674-8425(2016)02-0089-06

中图分类号:TP393

文献标识码:A

doi:10.3969/j.issn.1674-8425(z).2016.02.016

作者简介:黄同愿(1975—),男,湖北人,博士研究生,副教授,主要从事计算机应用研究。

基金项目:重庆市教委科学技术研究项目(KJ1500920);企业委托项目(2015Q147)

收稿日期:2015-11-28

引用格式:黄同愿,陈芳芳.基于SVM股票价格预测的核函数应用研究[J].重庆理工大学学报(自然科学版),2016(2):89-94.

Citation format:HUANG Tong-yuan,CHEN Fang-fang.Application of Kernel Function of Stock Price Forecasting Based on SVM[J].Journal of Chongqing University of Technology(Natural Science),2016(2):89-94.

猜你喜欢

支持向量机
基于支持向量回归机的电能质量评估
基于智能优化算法选择特征的网络入侵检测
数据挖掘技术在电厂经济性分析系统中的应用Q
基于改进支持向量机的船舶纵摇预报模型
基于SVM的烟草销售量预测
动态场景中的视觉目标识别方法分析
论提高装备故障预测准确度的方法途径
基于熵技术的公共事业费最优组合预测
基于支持向量机的金融数据分析研究
管理类研究生支持向量机预测决策实验教学研究