论文部分内容阅读
【摘要】如何将机器学习方法应用于金融投资领域,一直是学术界和金融界热门的研究话题。本文将机器学习中的支持向量机方法结合Fama-Fench三因子模型,构建了新的量化投资策略,并利用A股进行了实证分析。研究表明,将支持向量机结合传统的三因子模型可以构建更加有效的投资组合。
【关键词】机器学习 量化投资 三因子模型
一、引言
作为人工智能领域主要的研究方向之一,机器学习无疑最受瞩目。尤其是近几年深度学习方法在语音识别、自然语言处理、自动驾驶等方面取得了巨大的成功,使得各行各业都将机器学习方法做为重点的研究方向。特别是在金融领域,以机器学习为主的人工智能已经在量化投资方面得到了广泛的应用。机器学习可以快速海量地进行分析、拟合、预测,人工智能与量化交易联系越来越紧密。如全球最大的对冲基金桥水联合(Bridge water Asspcoates)在2013年就建立了一个基于机器学习的量化投资团队,该团队设计交易算法,利用历史数据预测未来金融市场变化,以人工智能的方式进行投资组合调整。日本的人工智能量化投资公司Alpaca,建立了一个基于图像识别的机器学习技术平台Capitalico,通过该平台,用户可以利用数据库中找到外汇交易图表进行分析,这使得普通投资者也能知道成功的交易员是如何做出交易决策的,从他们的经验中学习并作出更准确的交易。然而在金融领域,已公开的有效的预测模型是基本不存在的,因为无论是机构投资者还是个人投资者一旦公开投资模型,也就意味着投资模型的失效。比如著名数学家西蒙斯1988年成立的文艺复兴公司,就完全依靠数学模型进行投资,公司旗下从事量化投资的大奖章基金回报率也远超过其他对冲基金,然而该公司却从不公开投资模型。虽然金融机构很少公开如何利用机器学习来指导投资的研究成果,但学术界对机器学习在金融投资中的应用的研究却在逐渐增加。
支持向量机(support vector machines,SVM)是Vapnik 1995年提出的新的机器学习算法,该方法有很好的泛化能力,一种非常成功的机器学习方法,性能明显优于传统神经网络。在金融研究领域,支持向量机也是应用最广泛的机器学习模型。即使在国内,利用SVM方法的研究文献也不少。赛英(2013)利用支持向量机(SVM)方法对股指期货进行预测,并用遗传算法(GA)和粒子群算法(PSO)分别优化四种不同核函数的支持向量机,通过大量实验发现,采用粒子群算法優化的线性核函数支持向量机对股指期货具有最好的预测效果。黄同愿(2016)通过选择最优的径向基核函数,再利用网格寻参、遗传算法和粒子群算法对最佳核函数参数进行对比寻优,构建最有效的支持向量机模型,并对中国银行未来15日的开盘价格变化趋势进行预测,并认为用支持向量机来预测股票走势是可行的。程昌品(2012)提出了一种基于二进正交小波变换和ARIMA-SVM方法的非平稳时间序列预测方案。用高频数据构建自回归模型ARIMA进行预测,对低频信息则用SVM模型进行拟合;最后将各模型的预测结果进行叠加,并发现这种办法比单一预测模型更加有效。张贵生(2016)提出了一种新的SVM-GARCH预测模型,通过实验发现该模型在时间序列数据去除噪音、趋势判别以及预测的精确度等方面均优于传统的ARMA-GARCH模型。徐国祥(2011)在传统SVM方法的基础上,引入主成分分析方法和遗传算法,构建了新的PCA-GA-SVM模型。并利用该模型对沪深300指数和多只成分股进行了验证分析,并发现该模型对沪深300指数和大盘股每日走势有很好的预测精度。韩瑜(2016)结合时间序列提出了一种基于GARCH-SVM、AR-SVM的股票涨跌预测方法,结果表明,加入GARCH或AR等时间序列模型的初步预测结果可以提高SVM预测准确率。
从国内的研究文献来看,大多数文献都是通过机器学习方法来优化传统的时间序列预测模型,很少去研究如何通过机器学习方法构建有效的量化投资策略。由此,本文将利用SVM算法,结合经典的Fama-Fench三因子模型,设计量化投资策略,探讨机器学习方法在金融投资领域应用的新思路。
二、模型理论介绍
(一)Fama&Fench三因子模型
Sharpe(1964),Lintner(1965)和Mossin(1966)提出的资本资产定价模型(CAPM)是一个里程碑。在若干假定前提条件下,他们严谨地推导出了在均衡状态下任意证券的定价公式:
式中,E(ri)是任意证券i的期望收益率,E(r0)是无风险利率,E(rm)是市场组合(market portfolio)的期望收益率。■。法马(Fama,1973)对CAPM进行了验证,发现组合的β值与其收益率之间的线性关系近似成立,但截距偏高,斜率偏低,说明β不能解释超额收益。之后,Fama&Fench(1992)详细地分析了那些引起CAPM异象的因子对证券横截面收益率的影响。结果发现,所有这些因子对截面收益率都有单独的解释力,但联合起来时,市值和账目价值比(BE/ME)两个因子在很大程度上吸收了估计比值(E/P)以及杠杆率的作用。基于此,Fama&Fench(1993)在构建多因子模型时,着重考虑规模市值(SMB)和账面价值比(HML)这两个因子。因此,三因子模型可以写为:
(二)支持向量机
支持向量机是一种二分类模型,也可以用于多分类,它的基本模型是定义在特征空间上的间隔最大的线性分类器,通过寻求结构化风险最小来提高分类器的泛华能力,实现经验风险和置信范围的最小化,最终可转化为一个凸二次规划的问题求解。支持向量机是90年代最成功的机器学习方法,它的基本思想是求解能够正确划分训练数据集并几何间隔最大的分离超平面,该超平面可以对数据进行分类,分类的标准起源于逻辑回归,logistic回归的目的是从特征学习出一个0/1分类模型,logistic函数(sigmoid函数)的表达形式为: 这个模型是将特征的线性组合作为自变量。由于自变量的取值范围是负无穷到正无穷,因此,sigmoid函数将自变量映射到(0,1)上,对应的类别用y来表示,可以取-1或者1。根据输的概率对数据进行分类,sigmoid函数图像如图1。
支持向量机也是利用上述分类原理对数据进行分类,如图2所示,wTx+b=0为n维空间的一个超平面,该超平面将数据分开,一般来说,一个点距离超平面的远近可以表示为分类预测的准确程度。支持向量机就是求解■的最大值,也就是说,构造最大间隔分类器γ,使两个间隔边界的距离达到最大,而落在间隔边界上的点就叫做支持向量,明显有y(wT+b)>1。
当数据不能线性可分时,就需要利用非线性模型才能很好地进行分类,当不能用直线将数据分开的情况下,构造一个超曲面可以将数据分开。SVM采用的方法是选择一个核函数,通过将数据映射到高维空间,在这个空中构造最优分类超平面,用线性分类法进行数据分类。
然而,在不知道特征映射的形式时,很难确定选择什么样的核函数是合适的。因此,选择不同的核函数可能面临不同的结果,若核函数选择不合适,则意味着将样本映射到了一個不合适的特征空间,很可能导致结果不佳。常用的核函数见表1。
三、实证分析与应用
(一)数据说明
训练数据为2012年8月1日至2016年8月1日沪深300成分股在每月最后一个交易日有交易的股票因子值,市值因子SMB(marketValue)和账面价值比HML(PB)比这两个因子见表2,所有因子数据都通过标准化并处理。利用PB和marketValue两个因子,预测下月该股票的涨跌,利用机器学习中的支持向量机进行训练,数据特征为月度股票因子,训练标签为该股票下个月月初第一个交易日的涨跌,上涨为1,下跌和股价不变标记为0,采用交叉验证方法,其中80%的数据为训练集,20%的数据为测试集,利用R语言中的e1071包进行分析。
表2 因子名称与因子说明
■
(二)策略回测
从实验结果看,SVM的测试集预测准确率为62.32%,回测策略为等权重买入当月预测上涨概率排名前20的股票,每月初第一个交易日进行调仓,回测区间共调仓41次。回测区间为2013年7月1日至2017年2月28日,初始资金设为1000000元,利用优矿量化平台进行回测,策略回测的部分持仓记录见表3,策略效果见图3和表4。
表3 策略回测持仓记录
■
■
图3 策略收益率与基准收益率对比
表4 模型回测结果主要数据
■
由于多因子模型通常为稳健策略,因此为了避免频繁交易带来的高额交易费用,本策略采用了月度定期调仓的手法。从表3,图3和表4的策略回测结果来看,利用支持向量机算法结合Fama-Fench三因子模型设计的交易策略,在回测区间年化收益率为22.4%,超越了13.4%的基准市场收益率,获得了8.2%的阿尔法,这也说明Fama-Fench三因子模型在A股市场依然有效。同时我们也能看到,该策略最大回撤为48.1%,说明在不加入止损、止盈条件下,该策略并不能实现很好的对冲效果。从量化投资的角度来看,利用股指期货进行对冲,是多因子策略的一个很好的选择。
四、结论
本文通过利用机器学习中的经典算法支持向量机并结合Fama-Fench三因子模型构建了量化投资策略。通过市值因子和市净率因子,利用机器学习算法,滚动预测下一个月股票的涨跌方向。实验结果发现,支持向量机的预测准确率达到了62.23%,通过预测股票涨跌方向的概率,设计了对应的投资策略,该策略在回测期间的年化收益达到了22.4%,远超过基准年华收益率的13.4%。本文的研究表明,机器学习方法在金融市场有很好的运用空间,在大数据时代的今天,传统统计模型无法从复杂、多维的金融数据中提取出有效的信息特征,而机器学习算法擅长处理复杂、高维数据。这也是人工智能投资在金融行业越来越受到重视的原因。从量化投资这一角度来说,如何将机器学习方法应用到金融投资领域还是一个饱受争议的话题,本文只是从尝试的角度出发,创新的将机器学习方法结合经典的Fama-Fench三因子模型来验证对中国股市的投资效果。而如何将机器学习方法应用到更多的金融投资领域将是本文下一阶段的研究重点。
参考文献
[1]Cortes C,Vapnik V.Support-Vector Networks.[J].Machine Learning,1995,20(3):273-297.
[2]Fama,E.F.&K.R.French(1992),“The cross-section ofexpected stock returns”,Journal of Finance 47:427-466.
[3]Fama,E.F.&K.R.French(1993),“Common risk factors in the returns on stocks and bonds”,Journal of Financial Economics 33:3-56.
[4]塞英,张凤廷,张涛.基于支持向量机的中国股指期货回归预测研究[J].中国管理科学,2013,21(3):35-39.
【关键词】机器学习 量化投资 三因子模型
一、引言
作为人工智能领域主要的研究方向之一,机器学习无疑最受瞩目。尤其是近几年深度学习方法在语音识别、自然语言处理、自动驾驶等方面取得了巨大的成功,使得各行各业都将机器学习方法做为重点的研究方向。特别是在金融领域,以机器学习为主的人工智能已经在量化投资方面得到了广泛的应用。机器学习可以快速海量地进行分析、拟合、预测,人工智能与量化交易联系越来越紧密。如全球最大的对冲基金桥水联合(Bridge water Asspcoates)在2013年就建立了一个基于机器学习的量化投资团队,该团队设计交易算法,利用历史数据预测未来金融市场变化,以人工智能的方式进行投资组合调整。日本的人工智能量化投资公司Alpaca,建立了一个基于图像识别的机器学习技术平台Capitalico,通过该平台,用户可以利用数据库中找到外汇交易图表进行分析,这使得普通投资者也能知道成功的交易员是如何做出交易决策的,从他们的经验中学习并作出更准确的交易。然而在金融领域,已公开的有效的预测模型是基本不存在的,因为无论是机构投资者还是个人投资者一旦公开投资模型,也就意味着投资模型的失效。比如著名数学家西蒙斯1988年成立的文艺复兴公司,就完全依靠数学模型进行投资,公司旗下从事量化投资的大奖章基金回报率也远超过其他对冲基金,然而该公司却从不公开投资模型。虽然金融机构很少公开如何利用机器学习来指导投资的研究成果,但学术界对机器学习在金融投资中的应用的研究却在逐渐增加。
支持向量机(support vector machines,SVM)是Vapnik 1995年提出的新的机器学习算法,该方法有很好的泛化能力,一种非常成功的机器学习方法,性能明显优于传统神经网络。在金融研究领域,支持向量机也是应用最广泛的机器学习模型。即使在国内,利用SVM方法的研究文献也不少。赛英(2013)利用支持向量机(SVM)方法对股指期货进行预测,并用遗传算法(GA)和粒子群算法(PSO)分别优化四种不同核函数的支持向量机,通过大量实验发现,采用粒子群算法優化的线性核函数支持向量机对股指期货具有最好的预测效果。黄同愿(2016)通过选择最优的径向基核函数,再利用网格寻参、遗传算法和粒子群算法对最佳核函数参数进行对比寻优,构建最有效的支持向量机模型,并对中国银行未来15日的开盘价格变化趋势进行预测,并认为用支持向量机来预测股票走势是可行的。程昌品(2012)提出了一种基于二进正交小波变换和ARIMA-SVM方法的非平稳时间序列预测方案。用高频数据构建自回归模型ARIMA进行预测,对低频信息则用SVM模型进行拟合;最后将各模型的预测结果进行叠加,并发现这种办法比单一预测模型更加有效。张贵生(2016)提出了一种新的SVM-GARCH预测模型,通过实验发现该模型在时间序列数据去除噪音、趋势判别以及预测的精确度等方面均优于传统的ARMA-GARCH模型。徐国祥(2011)在传统SVM方法的基础上,引入主成分分析方法和遗传算法,构建了新的PCA-GA-SVM模型。并利用该模型对沪深300指数和多只成分股进行了验证分析,并发现该模型对沪深300指数和大盘股每日走势有很好的预测精度。韩瑜(2016)结合时间序列提出了一种基于GARCH-SVM、AR-SVM的股票涨跌预测方法,结果表明,加入GARCH或AR等时间序列模型的初步预测结果可以提高SVM预测准确率。
从国内的研究文献来看,大多数文献都是通过机器学习方法来优化传统的时间序列预测模型,很少去研究如何通过机器学习方法构建有效的量化投资策略。由此,本文将利用SVM算法,结合经典的Fama-Fench三因子模型,设计量化投资策略,探讨机器学习方法在金融投资领域应用的新思路。
二、模型理论介绍
(一)Fama&Fench三因子模型
Sharpe(1964),Lintner(1965)和Mossin(1966)提出的资本资产定价模型(CAPM)是一个里程碑。在若干假定前提条件下,他们严谨地推导出了在均衡状态下任意证券的定价公式:
式中,E(ri)是任意证券i的期望收益率,E(r0)是无风险利率,E(rm)是市场组合(market portfolio)的期望收益率。■。法马(Fama,1973)对CAPM进行了验证,发现组合的β值与其收益率之间的线性关系近似成立,但截距偏高,斜率偏低,说明β不能解释超额收益。之后,Fama&Fench(1992)详细地分析了那些引起CAPM异象的因子对证券横截面收益率的影响。结果发现,所有这些因子对截面收益率都有单独的解释力,但联合起来时,市值和账目价值比(BE/ME)两个因子在很大程度上吸收了估计比值(E/P)以及杠杆率的作用。基于此,Fama&Fench(1993)在构建多因子模型时,着重考虑规模市值(SMB)和账面价值比(HML)这两个因子。因此,三因子模型可以写为:
(二)支持向量机
支持向量机是一种二分类模型,也可以用于多分类,它的基本模型是定义在特征空间上的间隔最大的线性分类器,通过寻求结构化风险最小来提高分类器的泛华能力,实现经验风险和置信范围的最小化,最终可转化为一个凸二次规划的问题求解。支持向量机是90年代最成功的机器学习方法,它的基本思想是求解能够正确划分训练数据集并几何间隔最大的分离超平面,该超平面可以对数据进行分类,分类的标准起源于逻辑回归,logistic回归的目的是从特征学习出一个0/1分类模型,logistic函数(sigmoid函数)的表达形式为: 这个模型是将特征的线性组合作为自变量。由于自变量的取值范围是负无穷到正无穷,因此,sigmoid函数将自变量映射到(0,1)上,对应的类别用y来表示,可以取-1或者1。根据输的概率对数据进行分类,sigmoid函数图像如图1。
支持向量机也是利用上述分类原理对数据进行分类,如图2所示,wTx+b=0为n维空间的一个超平面,该超平面将数据分开,一般来说,一个点距离超平面的远近可以表示为分类预测的准确程度。支持向量机就是求解■的最大值,也就是说,构造最大间隔分类器γ,使两个间隔边界的距离达到最大,而落在间隔边界上的点就叫做支持向量,明显有y(wT+b)>1。
当数据不能线性可分时,就需要利用非线性模型才能很好地进行分类,当不能用直线将数据分开的情况下,构造一个超曲面可以将数据分开。SVM采用的方法是选择一个核函数,通过将数据映射到高维空间,在这个空中构造最优分类超平面,用线性分类法进行数据分类。
然而,在不知道特征映射的形式时,很难确定选择什么样的核函数是合适的。因此,选择不同的核函数可能面临不同的结果,若核函数选择不合适,则意味着将样本映射到了一個不合适的特征空间,很可能导致结果不佳。常用的核函数见表1。
三、实证分析与应用
(一)数据说明
训练数据为2012年8月1日至2016年8月1日沪深300成分股在每月最后一个交易日有交易的股票因子值,市值因子SMB(marketValue)和账面价值比HML(PB)比这两个因子见表2,所有因子数据都通过标准化并处理。利用PB和marketValue两个因子,预测下月该股票的涨跌,利用机器学习中的支持向量机进行训练,数据特征为月度股票因子,训练标签为该股票下个月月初第一个交易日的涨跌,上涨为1,下跌和股价不变标记为0,采用交叉验证方法,其中80%的数据为训练集,20%的数据为测试集,利用R语言中的e1071包进行分析。
表2 因子名称与因子说明
■
(二)策略回测
从实验结果看,SVM的测试集预测准确率为62.32%,回测策略为等权重买入当月预测上涨概率排名前20的股票,每月初第一个交易日进行调仓,回测区间共调仓41次。回测区间为2013年7月1日至2017年2月28日,初始资金设为1000000元,利用优矿量化平台进行回测,策略回测的部分持仓记录见表3,策略效果见图3和表4。
表3 策略回测持仓记录
■
■
图3 策略收益率与基准收益率对比
表4 模型回测结果主要数据
■
由于多因子模型通常为稳健策略,因此为了避免频繁交易带来的高额交易费用,本策略采用了月度定期调仓的手法。从表3,图3和表4的策略回测结果来看,利用支持向量机算法结合Fama-Fench三因子模型设计的交易策略,在回测区间年化收益率为22.4%,超越了13.4%的基准市场收益率,获得了8.2%的阿尔法,这也说明Fama-Fench三因子模型在A股市场依然有效。同时我们也能看到,该策略最大回撤为48.1%,说明在不加入止损、止盈条件下,该策略并不能实现很好的对冲效果。从量化投资的角度来看,利用股指期货进行对冲,是多因子策略的一个很好的选择。
四、结论
本文通过利用机器学习中的经典算法支持向量机并结合Fama-Fench三因子模型构建了量化投资策略。通过市值因子和市净率因子,利用机器学习算法,滚动预测下一个月股票的涨跌方向。实验结果发现,支持向量机的预测准确率达到了62.23%,通过预测股票涨跌方向的概率,设计了对应的投资策略,该策略在回测期间的年化收益达到了22.4%,远超过基准年华收益率的13.4%。本文的研究表明,机器学习方法在金融市场有很好的运用空间,在大数据时代的今天,传统统计模型无法从复杂、多维的金融数据中提取出有效的信息特征,而机器学习算法擅长处理复杂、高维数据。这也是人工智能投资在金融行业越来越受到重视的原因。从量化投资这一角度来说,如何将机器学习方法应用到金融投资领域还是一个饱受争议的话题,本文只是从尝试的角度出发,创新的将机器学习方法结合经典的Fama-Fench三因子模型来验证对中国股市的投资效果。而如何将机器学习方法应用到更多的金融投资领域将是本文下一阶段的研究重点。
参考文献
[1]Cortes C,Vapnik V.Support-Vector Networks.[J].Machine Learning,1995,20(3):273-297.
[2]Fama,E.F.&K.R.French(1992),“The cross-section ofexpected stock returns”,Journal of Finance 47:427-466.
[3]Fama,E.F.&K.R.French(1993),“Common risk factors in the returns on stocks and bonds”,Journal of Financial Economics 33:3-56.
[4]塞英,张凤廷,张涛.基于支持向量机的中国股指期货回归预测研究[J].中国管理科学,2013,21(3):35-39.