基于高斯核支持向量机和遗传算法的优化组合研究

2017-04-08 15:20马静李星野徐荣
经济数学 2017年1期
关键词:投资组合机器学习遗传算法

马静++李星野++徐荣

摘要选用2008~2015共8年数据,首先基于高斯核的支持向量机在沪市A股上构建周期性的投资组合,并通过误差图和评价指标与BP神经网络、广义回归神经网络进行比较,结果表明了支持向量机在股票预测上更具有优势.再将改进遗传算法运用于上证股票市场构建最优投资组合,以上证指数作为基准进行比较,得出混合遗传算法优化组合的模型相比单一模型更为有效.

关键词机器学习;高斯核支持向量机;遗传算法;投资组合

中图分类号F064.1 文献标识码A

1引言

机器学习研究计算机怎样模拟或实现人类的学习行为,以获得新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能.机器学习在实际分类问题中广泛应用与众多领域,如通信技术[1],网络流量分析[2],医学成像[3],时间序列分析[4]等.相比于ARMA或者ARCH这些传统的技术和定量分析方法模型,机器学习从大量数据中发现隐含的模式,构建更为复杂的模型来实现对未来的预测更能体现模型的优越性与实用性.研究表明,采用机器学习的方法对金融市场进行预测,将特征属性作为输入来发现其与隐藏模式之间的联系,能够预测未来价格趋势或预测趋势信心的百分比.尤其在证券交易中,运用支持向量机,神经网络等混合模型进行学习能够得到更为有前景的结果[5].

目前,金融预测是机器学习在资本市场对数据进行挖掘的最重要的应用,机器学习的技术包括神经网络,支持向量机,遗传计算等.已经有很多学者在这方面进行了研究,卢和吴[6]采用了人工神经网络对标普500指数的未来走势方向进行了预测,并且将结果与传统的ARIMA模型进行比较,结果表明人工神经网络的优越性.McDonald, Coleman等[7]调查了一些机器学习的方法并将其组合进行研究,结果表明混合模型,包括线性和非线性的算法能够在金融序列的未来发展方向上表现出更多的价值. Chen和Shih[8] 采用了BP神经网络与SVM对6个亚洲指数进行预测,获得SVM相比于神经网络更高的准确度.Tay和Cao[9]证明了5种金融时间序列数据可以用支持向量机进行预测,并指出其效果优于人工神经网络.Chang[10]应用遗传算法(GA)、禁忌算法(TS)和模擬退火算法(SA)求解复杂约束下的投资组合问题,并通过实证得出用遗传算法和模拟退火求解投资组合问题,明显优于禁忌算法.

对于投资者如何从数千中资产中选择构建投资组合的方法,也有很多学者进行研究.Markowitz提出了“均值-方差(MV)”模型为投资者构建投资组合提供了理论基础.许多学者在此基础上对投资组合理论进行了延伸[11-15].Jagannathan等[16]在M-V模型中简化各资产的权重限制为非负,即不允许组合中出现卖空资产,指出此限制可以减小最优资产组合估计的误差,且在此限制条件下,通过样本协方差阵估计和因子模型估计及收缩估计得到的最优组合表现结果一直.Van der Hart等[17]通过分析32个新兴市场在1985~1999年间的市盈率、市值、价格等数据信息,发现相对于交易量,流动性和均值回复,基于价值,动量与盈利预测调整的策略具有更显著的超额收益.Fan等[18]运用支持向量机发掘公司财务和股价信息来选择资产.Rachev等[19]在Rewardrisk准则下用动量策略来选股.

纵观国内外相关研究,学者在研究机器学习在资本市场的应用更多考虑模型方法的有效性与准确性,本文在前人的基础上运用支持向量机模型对股票进行分类预测,构建周期性的投资组合模型,进而在MV模型基础上采用改进遗传算法求解具有投资限制的最优资产组合.这样做的好处是:第一,循环周期训练模型,能够不断根据最新数据进行调整模型,在一定程度上适应了数据更新的需求,也消除过度使用历史数据的影响;第二,将数据输入改进的模型中可以得到更优的资产组合与权重分配,具有很强的使用价值;第三,改进的遗传算法能使资产组合具有良好的风险收益特征.通过研究,表明基于支持向量机和遗传算法在解决资产方向预测和优化资产组合问题上都有效可行,相信通过改进和完善会有更好的应用前景.

2模型理论

2.1支持向量机

支持向量机(SVM)是由Vapnik等提出来的,它是基于统计学习理论的VC维理论和结构风险最小化理论的机器学习理论.SVM是用于数据分类的一种监督学习算法[20] .

假设训练样本集{(x1,y1),…,(xn,yn)},xi,yi∈R则SVM回归模型的线性回归函数方程是:

f(x)=w·x+b. (1)

为保证线性方程的平坦,需寻找一个最小的w,因此采用最小化欧几里得空间的范数.假设所有的训练数据可以在精度ε下用线性函数拟合,那么寻找最小w的问题可以表示为一个凸优化问题:

本文采用高斯核函数,如公式(7)所示.其适用于低维、高维、小样本、大样本等多种情况,具有较宽的收敛域,是较为理想的分类依据,将样本在经过映射后的特征空间中线性分开的能力及效果更好,再加上还具有较好的差值能力,能够很好的提取样本的局部性质.在确定参数时,一般选取误差差惩罚因子c,取值范围一般为(0,100],用于调节学习置信范围和经验风险的比例,以增强其推广能力.本文采用网格搜索法对最优参数进行搜素,最优惩罚参数c为0.5,最优核函数参数g为1.41.最佳的n能够使得模型学习有较高的预测和分类精度,有重大意义.

2.2改进的遗传算法

遗传算法(GA)是由美国密歇根大学的John Holland教授与1975年首先提出的一类仿生型优化算法[21],是近年来产生和发展的一种模拟生物进化过程的自适应启发式全局优化的搜索算法.通过对将要解决的问题模拟成一个生物进化的过程,通过复制、交叉、突变等操作产生下一代的解,并逐步淘汰适应度函数值低的解,增加适应度函数高的解,进而优化出适应度函数值很高的个体.

遗传算法的具体算法如下:

1)编码

采用整数编码,每个染色体含n个基因位(代表n只股票),基因的数值代表该股票在投资组合中的资金分配.

2)适应度函数

适应度函数为eU,e是自然对数,U是目标函数式.由于Markowitz的投资组合模型是一个二次规划问题,本文考虑我国股市实际交易中不能卖空,需要交易费用,需要有最小交易量(100股)的情况,采用改进的投资组合作为适应度函数.具体公式为:

3实证研究

3.1数据准备与评价标准

本文选取上证A股股票作为测试数据,数据区间在2008.01.02~2015.12.31,剔除无效数据.用当天的开盘价、收盘价、最高价、最低价、成交量和成交金额作为自变量特征,预测后一天的发展趋势.本文实证研究部分所有数据源于Wind资讯金融终端.具体输入属性包括简单移动平均(SMA),指数移动平均(EMA),威廉指标(WR),成交量变异率(VR),相对强弱指标(RSI),平均真实波幅(ATR),真实强弱指标(TSI).

在训练数据之前,对数据进行预处理,删除指标缺失超过一半的数据,少于一般用该指标该段时间的均值代替.对其进行归一化处理,本测试采用MATLAB自带的和归一化函数mapminmax,将所有数据归一化到[-1,1].

本文选择数据反归一化之前的均方根的评价误差作为训练集的评价标准.为了和Libsvm工具箱中评价标准保持一致,选择均方误差和相关系数作为测试集的评价标准.均方误差越小越好,相关系数则越大越好.预测性能还可以通过以下统计指标来衡量:正则均方误差和平均绝对误差[9].它们是真实值与预测值之间的偏差度量,其值越小表示预测性能越好.

3.2基于支持向量机的投资组合构建

3.2.1组合构建

由于Barbosa [22]指出训练分类器不必要在意较低的准确度,若能够使得根据预测或得正的交易,则在长期情况下,交易收益完全能够克服交易损失.从实际角度来考虑,这由于在现实生活交易中个人不可能赢得所有交易,只有不断提高交易盈利交易才可以继续进行,也能获得一个更高的累计收益.同時如果训练集过长,包含了太多的历史数据,不进行及时更新,将会增加模型的不稳定和波动性.因此,仍需要对数据进行及时的更新训练以保证模型的状态新鲜.

由上述,本文设定训练集的数据长度为1年,更新数据在增加最新数据的同时删减前面历史数据,以保证数据长度的一致性.持有期和滚动周期均为15个交易日,即每隔15个交易日结束上一周期股票池的持有,并将上一周期的数据加入训练模型重新进行训练,构建新的模型指导下一周期的组合构建.投资组合选定为50只.

为便于直观对比出本节模型的优越性,采用支持向量机与神经网路算法比较.BP神经网络(BPNN)是一种多层前馈网络模型,由于具有高度的非线性映射能力,是目前神经网络研究与应用中最基本的网络模型之一.广义回归神经网络(GRNN)是径向基网络的一个分支,其结构与径向基网络接近,非常适合函数逼近[23].因此BPNN和GRNN够被选作为SVM的参照对象,BPNN和GRNN的输入节点数均为10,输出节点数为1,鉴于多隐含层除了增加计算量和复杂度外,预测性并没有明显得到提升,所以BPNN和GRNN均选用单隐含层,该层节点数和输入点数相同.径向基选用高斯函数.

本文通过正则均方误差(NMSE)、平均绝对误差(MAE)和SVM自带的均方误差(MSE)、相关系数(R2)来衡量预测效果.表2显示了SVM和BPNN,GRNN的训练集,测试集的性能评价结果.

由图1更能直观显示出SVM模型的优越性,相对于GRNN,BRNN,SVM的误差能够控制在更小的范围内.基于以上分析与验证得到SVM,BP,GRNN三者的性能优劣程度.本文采用SVM进行预测构建投资组合,训练集特征为沪市2008一年的股票开盘价、收盘价、最高价、最低价、成交量、对冲后收益(本文采用上证指数对冲)以及上述7个特征属性共13个,对后一天的发展趋势进行预测,一次测试15天,根据排名选取靠前的50只股票作为投资组合买入,本文设定依据股票市场规则不能做空.此后每一周期训练一次,滚动进行2009~2015年的交易,得到对冲后收益最优的股票.收益见图2.

图2显示了基于SVM预测滚动选取投资组合获得的收益与上证指数的涨幅对比图,可以看到在沪市上选取的股票,虽然在某些时点上产生震荡,收益率有所下浮,但总体都是能够获得较大盈利的,7年的年化收益率达到了9%左右.

3.3基于改进遗传算法的优化组合

证券投资组合的关键是投资者的偏好,对收益和风险加以权衡,确定各种证券在组合中的比例,从而得到较好的投资组合.本文研究符合我国现实投资环境的投资组合模型,首先建立具有卖空限制、交易费用限制和最小交易单位限制的投资组合模型,具体见公式(10);其次,由于模型已经是一个非线性正数规划,本文设计了一种改进遗传算法用于求解该问题,具体见公式(13)和(15).实证说明所采用的算法是有效的.

交易费用包括佣金、税金和过户费.相关参数为选择的股票个数为50,进化代数为3 000,计算结果即持有单位数见表3所示.

显示了基于SVM预测滚动选取投资组合获得的收益及GA优化投资组合收益与上证指数的涨幅对比图,可以看到在沪市上选取的股票,虽然在某些时点上产生震荡,收益率会下浮,但采用GA算法总体都能对投资组合起到优化作用,使组合收益更大,7年的年化收益率达到了15%左右,在实践中也具有重要意义和理论推广.

资产选择与最优组合权重的设置是构建投资组合的两个关键点.由图2和图3可以看出采用混合遗传算法的优化组合,其收益率相比单一使用支持向量机的表现更好.在短期也许交易差别并不大,但长期看来,由于模型的不断优化混合模型会表现出更大的优势.

4結论

支持向量机理论作为一种基于统计学习理论的新的机器学习算法,较好的解决了维数灾难和过学习的问题.支持向量机因其广泛的适应能力和学习能力在非线性系统预测方面有着广泛的应用前景.股票市场又是一个极其复杂的动力学系统,具有高噪声、非线性等特性.随着近年来计算机技术和机器学习的迅猛发展,使得对股票市场的构建与预测产生了新的思路与解决途径.本文阐述了基于高斯核的支持向量机(SVM),根据股票市场和股票指数的特点,将支持向量机从原来只处理分类问题扩展到回归部分,同时尽可能最优的预测非线性且噪声较多的序列.再采用支持向量机和遗传算法进行预测,并构建投资组合,期望获得更高收益及更低风险,取得了令人满意的结果.

支持向量机(SVM)算法之所以性能优异,是因为其算法是建立在结构风险最小化和线性二次规划理论之上的,具有泛化能力强、全局最优等优点.而遗传算法(GA)通过模仿自然界的选择和遗传的机理来寻找最优解,突破了一般容易陷入局部极小出现“死循环”现在的迭代方法,实现了全局最优,且具有快速搜索、更高扩展性,易与其他方法结合等优点.

不过在参数,核函数,训练集,周期等的选取方面可能会因其变动而产生较大的差异,未来可以继续再这一方面进行优化.基于短周期和长周期的运动趋势不同的情况,还可以将周期继续细分.鉴于核函数对SVM性能的决定性影响,未来的工作将致力于构造SVM的新型核函数,以更好的捕获股票的序列的非线性特征,从而进一步其预测性能.

参考文献

[1]Di M, A survey of machine learning in wireless sensor networks from networking and application perspectives[J]. International Conference on Information. Communications & Signal Processing,2007,6(10):1-5.

[2]Nguyen T, Armitage G. A survey of techniques for internet traffic classification using machine learning[J]. IEEE Communications Surveys & Tutorials,2008,10 (4):56-76.

[3]Wernick M,Yang Y, Brankov J, et al. Machine learning in medical imaging[J]. IEEE Signal Processing Magazine, 2010,27(4):25-38.

[4]Qi M,Zhang G P.Trend timeseries modeling and forecasting with neural networks[J]. IEEE Transactions on Neural Networks, 2008,19 (5):808-816.

[5]Cai X G,Hu S,Lin X L. Feature extraction using restricted Boltzmann machine for stock price prediction[J]. IEEE International Conference on Computer Science and Automation Engineering, 2012,5(10):80-83.

[6]Lu C,Wu C H. Support vector machine combined with GARCH models for call option price prediction[J]. International Conference on Artificial Intelligence and Computational Intelligence,2009,11(10):35-40.

[7]Mcdonald S, Coleman S, Mcginnity TM,et al.Belatreche A. A comparison of forecasting approaches for capital markets[J]. Conference on Computational Intelligence for Financial Engineering & Economics,2014,3(10):32-39.

[8]Chen W H,Shi J Y.Wu S. Comparison of supportvector machines and back propagation neural networks in forecasting the six major Asian stock markets[J]. International Journal of Electronic Finance,2006,1(1):49-67.

[9]Mukhejee S, Osuna E, Girosi F. Nonlinear prediction of chaotic time series using support vector machines[J]. Neural Networks for Signal Proceeding,1997,9(10):511-520.

[10]Chang T J, Meade N,Beasley J E,et al.Heuristics for cardinality constrained portfolio optimization[J]. Computers and Operations Research, 2000,,27(13):1271-1302.

[11]Briec W, Kerstens K, Jokung O. Meanvarianceskewness portfolio performance gauging: A general shortage function and dual approach[J]. Management Science, 2007, 53(1): 153-149.

[12]Calafiore G C. Multiperiod portfolio optimization with linear control policies[J]. Automatica, 2008, 44(10): 2463-2473.

[13]Yu M,Takahashi S, Inoue H,et al. Dynamic portfolio optimization with risk control for absolute deviation model[J]. European Journal of Operational Research, 2010, 201(2): 349-364.

[14]Harris R D F, Mazibas M. Dynamic hedge fund portfolio construction:a semiparametric approach[J]. Journal of Banking & Finance, 2013, 37(1): 139-149

[15]張卫国,张永,徐维军,等. 基于线性学习函数的泛证券投资组合策略[J]. 系统工程理论与实践,2012,32(8):1647-1654.

[16]Jagannathan R,Ma T,.Risk reduction in large portfolios: Why imposing the wrong constraints helps[J]. Journal of Finance,2003,58(4):1651-1684.

[17]Palaniswami M,Fan A.Stock selection using support vector machines[C]. Neural Networks,2001,3(10):1793-1798.

[18] Hart JVD,Slagter E,Dijk DV. Stock selection strategies in emerging markets[J]. Journal of Empirical Finance, 2001,10(1/2):105-132.

[19]Rachev S, Jasic T, Stoyanov S,et al. Momentum strategies based on rewardrisk stock selection criteria[J]. Journal of Banking and Finance, 2007, 31(8): 2325-2346

[20]Cortes C,Vapnik V.Supportvector networks[J].Machine Learning,1995,20(3):273-274.

[21]Holland J H,Adaptation in natural and artificial system:an introduction analysis with application to biology, control, and artificial intelligence[M]Michigan:The University of Michigan Press, 1975.

[22]Barbosa R P, Belo O.Autonomous forex trading agents[M]//Advances in Data Mining:Medical Applications,ECommerce,Marketing and Theoretical Aspects,SpringerVerlag Berlin and Heidelberg GmbH & Co. K, 2008.

[23]Hsu C W,Lin C J. A comparsion of methods for multiclass support vector machines[J]. IEEE Transactions on Neural Network,2002,13(2):415-425.

猜你喜欢
投资组合机器学习遗传算法
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
个人理财投资组合策略分析
前缀字母为特征在维吾尔语文本情感分类中的研究
基于支持向量机的金融数据分析研究
基于改进的遗传算法的模糊聚类算法