论文部分内容阅读
多因子选股模型在量化金融领域是一种比较经典的模型,为后续更多的选股分析奠定了一定的研究基础。尤其是根据因子池选取股票这方面的研究,从传统的回归法到排序法、打分法,有很多研究者都倾入了不少心血。随着计算机、数学以及统计等各领域的理论不断发展,尤其是近几年来机器学习的新起,以及资本市场上投资方法的不断多元化,基于机器学习、数据挖掘的因子选股模型不断引发关注。机器学习很多算法本质是在做二分类或者多分类,而这种朴素的思想应用到选股领域,就是预测一只股票是否会上涨,从而进行二分类,上涨,输出为1,反之,输出为0。在机器学习领域,集成学习算法在做分类任务时,表现得比较突出。其中具有代表性的是XGBoost算法和Adaboost算法,前者是华盛顿大学博士陈天奇推出来的一种比较新颖的算法,由于其具有比较高的预测准确率,所以在工业界、机器学习比赛中具有广泛的应用。而后者被入选为机器学习十大算法之一。本文先构建了基于传统因子选股模型(打分法)选取的股票池,再基于前者,分别构建了集成学习(XGBoost、Adaboost算法)模型,并将其应用于选股。这将传统方法与集成学习方法在因子选股方面进行对比,以期将更新颖的方法在股市中做出进一步的改进。本文首先参考了选股分析两大派(价值投资与技术分析)以及一些金融分析师的研究,以及优矿、米筐、wind等平台对股票因子的划分,考虑了各个可能影响股票收益的指标,慎重选取了9大类,共计39个因子数据进行实证研究,涵盖了大部分类别,这些因子大致可以分为基本面、技术面和情绪面等,基本面包括财务类、价值类、成长类、杠杆类、市值类等,包含的因子最多,而技术类主要包括技术因子与行情类因子。以2010年到2018年间HS300的股票因子数据为研究对象。文章首先对近40个因子进行有效性筛选,测试方法主要用了回归法与排序法,先用回归法选出了12个因子,又基于排序法剔除了“区间日均成交额”这个因子。再对挑选出来的11个因子做冗余因子检测,对相关性比较高的因子进行标记,最后根据回归法以及排序法,最终筛选出5个大类,9个小类因子,分别是财务类下的ROA,销售毛利率,成长类下的营业收入,价值类下的市净率、市盈率,扣除非经常性损益下的市盈率,以及行情类下的区间日均换手率,相对大盘月涨跌幅,技术类下的真实波动范围。再次,对这九个因子构建传统打分模型,选取股票池并在2013年1月到2018年10月回测,打分法构建的股票池获取了0.3%的超额收益,效果不是很乐观。为了挖掘更多隐藏在数据背后的信息,接下来本文在打分法的基础上,选取了全部的因子,分别构建了基于Adaboost与XGBoost算法的因子选股模型,回测中这两种算法分别取得了5.5%与7.3%的年化超额收益,Alpha指标也比打分法分别高出5.4%和7.2%。从风险收益指标来看,XGBoost与Adaboost算法的夏普比率也分别比打分法高出0.27、0.23,同样,XGBoost与Adaboost算法的信息比率分别高出0.5、0.44。由此可见,基于集成学习方法对股票数据进行了更深层次的挖掘,选取的股票池回测效果也远优于传统的打分法。