以PCA和机器学习算法为框架的多因子量化投资策略研究
2022-03-04王敏源
王敏源 王 璨 李 浩*
(浙江万里学院商学院 浙江·宁波 315100)
0 引言
如今我国证券市场不断开拓,投资者大幅增加,海量市场信息源源不断。基于大数据智能化时代背景下计算机技术的量化投资方法,表现出了其高效处理大量信息的手段优势,一方面能快速有效地把握市场的有利信号,另一方面能减少市场参与者的行为偏好、主观情绪带来的影响,以实现长期稳定的证券市场投资收益和风险控制[1]。
近些年,机器学习算法被广泛使用在量化投资策略设计中。史卫峰(2017)利用随机森林,将基于BARRA量化对冲模型的多因子模型中的多个同类因子,进行选取,后使用PCA进行处理,得到各个因子的信息贡献率和线性相关性,是模型整体的估计准确值可以进行提高。谢翔(2017)的研究表明,SVM算法比较适合上涨趋势的行情,随机森林算法适合下降趋势,在预测上涨趋势时,决策树表现优异,预测下降趋势,神经网络算法占优。林启敏(2016)将支持向量回归机、随机森林和量子遗传算法相接轨,构建了一个独特的综合选股模型,随机森林主要应用于财务指标的筛选,而支持向量机和遗传算法将因子的参数优化,得到最优组合。吴卫星(2018)通过选取不同的技术指标,即 KDJ、RSI、MACD 和布林等指标,将这些指标与随机森林相结合,构建相关的多因子选股模型。
本文将运用大数据、金融、数学工具构建一套心得量化交易策略体系,保证投资者收益以及资金的合理运用。通过算法优化和不同因子选取的方法得到多因子模型,结合随机森林、PCA模型两大模型提高准确值,并不断优化,用BOLL和KDJ技术指标进行择时,回测检验调参后得到满意结果。
1 数据来源及处理
异常值是指样本中个别不太合群的值,也称其为离群点,其值明显偏离大部分观测值。对异常值的处理有利于策略模型使用合理的统计数据。我们使用原则和箱型图检测离散值。我们采用的处理策略是:把数据中大于95%分位点数据用95%分位点替换;小于5%分位点的数据用5%分位点替换。
本文的研究股票池采用沪深300,我们选择iFind(金融数据报告)作为我们的数据来源,其中对于特征值缺失过多的股票删除,特征值缺失不多的股票使用数值插值来进行填补。通过缺失值处理,选出224只股票。
2 相关算法和策略工具简介
随机森林是用于对数据进行分析预测的算法。为了能取得更加准确以及稳定的预测,它建立了很多个决策树,并将他们分类组合。随机森林算法中的分支代表随机性。这些分支产生的节点会被分为误差最小的特征,我们利用这些节点来选出最优分割点,仅考虑分割节点的随机子集。
PCA算法是用于统计数据的工具,已经得到了广泛的应用。本策略采取的数据具有复杂性并且信息与数据库较大,并且有部分冗余数据和噪声,所以使用主成分分析来对产品的数据进行处理,达到筛选并删除冗余数据、降低噪声、减少计算量、尽可能的降低实验结果的影响。
BOLL指标决定了本策略的买卖时机。它主要由上轨,中轨以及下轨组成。三轨主要由标准差计算而来。股票价格主要在这三条线里进行浮动,当股价在上轨及中轨之间运行时,表示在上涨时期,持股可以获取收益;当股价在中轨及下轨时期,现在空仓止损较为合理。
KDJ指标KDJ指标又叫随机指标,它是属于超买超卖的指标,所以它更适合短线操作。KDJ指标主要有K值,D值,J值,这三个值主要是根据股票价格的最高价,最低价以及收盘价进行计算得到的。
3 选股与交易量化模型构建
本文的量化策略构建流程如见图1。
图1:研究技术路线图
Step1:从营运能力、成长能力、估值能力、偿还能力和盈利能力这五大方面中筛取63个因子作为初级因子池;
Step2:利用Spearman相关系数分析,在一定程度上剔除因子相关性,得到独立性较强的34个二级因子;
Step3:使用随机森林算法筛选出2016-2020年五年特征值都大于0.3且每年都出现的16个因子作为最终因子池,见表1。
表1:最终选取的16个因子
Step4:使用PCA分析计算各因子权重,得到5个公因子以及因子方程:
Step5:使用MindGo平台进行alphalens检验,结果表明模拟收益高于基准收益,并且信息系数为正,因子有效。再按照因子方程计算股票因子得分,选取分数最高的50支股票作为投资股票池。
Step6:在确定买卖时机方面,通过结合BOLL和KDJ两个指标来决定交易时机和方向。通过反复回测和实验调参,确定股价上穿BOLL线中轨,KDJ指标中K值大于D值,K线上穿D线,当条件满足时,买入。当股价下穿BOLL线中轨,KDJ指标中K值小于D值,K线下穿D线,或者K值大于65时,卖出。
Step7:进一步优化,通过MindGo平台来对有效因子打分并判断停牌和ST股,将高分股票放入股票池中,更新股票池频率为30天。
Step8:通过反复回测实验,对大盘及个股分别设置了止盈止损点。当大盘过去5天下跌总数的5%时,将所有股票全部卖出。对于个股,近三天下跌合计超过5%,平仓。
图2:策略回测表现(基于同花顺MindGo平台)
4 策略回测与评价
我们使用同花顺Mindgo平台回测得到策略的年化收益率为11.41%,远高于基准年化收益率0.26%,最大回撤为12.69%,Sharpe比率和信息比等指标均表现良好。并且在大盘指数呈现下跌趋势时仍能获得较稳定的收益。说明我们的策略有不错的实施价值。
5 结论
随着我国经济的快速发展,证券市场也不断地完善,量化投资技术也不断发展,激发交易市场活力。国内的投资者越来越倾向于量化投资这一理性的投资方式,尤其是机构投资者的更加重视,近年来涌现出了越来越多的创新型公司以量化交易作为公司产品核心。
本文选择沪深300成分股为研究对象,结合PCA算法和机器学习的优势构建多因子选股模型。基于价值投资理念,通过机器学习智能化层层筛选,得到有效的、独立的收益影响因子;使用PAC方法计算因子方程,量化评价股票的因子表现,排序得到投资标的股票。最后使用技术指标和止盈止损策略,进行策略回测,表现良好稳定,实验证明可通过策略获得超额收益。相对比单一模型的使用,本文提出的策略模型运行效率更高,预测准确性更好,多个数学模型的结合有利于提高因子选择效率,通过计算主因子特征值贡献率进行因子打分,降低了人为主观的影响,提高了股票选择的科学性。