1、量化投资的决策依赖于大样本下的统计显著性,所以量化投资者会以更长远的眼光来看待交易结果,不计较单笔交易的得失。

2、遗传规划的优势除了可以提升挖掘因子效率之外,更重要的是它可以突破人类的思维定式,挖掘出一些隐藏的、难以通过人脑构建出来的因子。

3、机器学习是量化CTA策略的新方向,相较传统线性模型提供了高维的非线性视角,可以更好地分类并提升拟合效果。而可视化可以打开机器学习的黑箱。

4、从大类资产配置的角度看,由于低相关性,在持有股票型基金获取阿尔法的同时,配置CTA产品可以在资产组合的层面起到风险分散化的作用。

以上是朱雀基金量化组负责人章晓珏12月12日在“融入洪流”朱雀基金2021年度策略会上发表的观点。以下是我们整理的演讲精要:



量化CTA策略介绍

首先简单介绍一下什么是量化CTA策略。简而言之,就是用量化的手段构建交易模型,由模型给出对期货标的走势的涨跌判断,从而在期货上进行做多、做空或多空双向的操作,目的是为了获得绝对收益。

目前国内CTA的投资范围还是股指期货及期权、大宗商品期货和国债期货。至于投资策略,我们会用机器学习的手段做模式识别,从而给出价格预测。

量化CTA策略是如何盈利的呢?整体来说它不像主动投资那么地看重因果逻辑推演,而是更看重基于历史行情大样本下提取出来的量价统计规律,并且我们认为在历史上重复出现的量价规律大概率在未来也会继续出现。这里的统计规律可看做是条件概率,也即在已发生的特定量价模式下,指数未来上涨或下跌的概率。

举个例子,如果我们通过数据挖掘,发现当指数在下跌超过一个点之后会加速下跌,我们就可以基于这个规律构建简单的交易策略,当指数日内下跌超过一个阈值之后,我们就进行跟随开空的操作,只要这个简单策略在历史回测中所有单笔交易的总和是盈利的,比如每交易100笔里面有55笔盈利、45笔亏损,并且平均单笔盈利幅度大于亏损幅度,我们就认为这是一个具有正收益期望的策略。

当这个策略投入实盘运作之后,我们不会再计较单笔交易的得失,而是看重长期多笔交易累计之后的收益情况。因为根据统计大数定理,单笔交易的盈亏有一定的随机性,但是当我们交易足够多次之后,所有单笔交易的收益总和会逐渐接近策略本身的收益期望,而这是一个具有正期望的策略,所以长期来看我们终将会盈利。这也是为什么量化投资者会以一个更长远的眼光来看待交易策略,并且会更多地关注策略的收益期望。

接下来展开讲一下策略的单笔收益期望,大家可以把它理解成我们对策略长期的盈利预期,它其实是由策略的胜率和盈亏比(赔率)决定的。

期望收益=胜率×盈亏比(赔率)

整体来说不同持仓周期策略的胜率往往不一样,但一般而言对量化投资者来说胜率高于50%的策略已经是合格的策略了。当然我们也可以通过对因子和模型持续优化来不断提高策略的胜率。盈亏比就是我们所说的赔率,可以通过在策略中加入止损手段得到提高。

这是我们一个CTA子策略的单笔收益分布直方图,横轴代表策略单笔交易的收益区间,纵轴代表收益落在该收益区间的交易笔数。我们可以看到,单笔盈利大于0的交易占比高于50%,也即策略相比于随机决策有更高的胜率。同时整个收益分布是向右偏移的,因为我们做了止损,所以左侧的亏损是截尾的而右侧的盈利是长尾的,也就是说这个策略的盈亏比大于1。这是一个非常典型的正收益期望策略。而CTA的净值就是由几百几千笔具有这样收益特征的单笔交易一点一点累加起来的。

来源:朱雀基金

总结来看,量化CTA策略就是不断从历史行情数据中挖掘一些具有正期望的量价规律,再在实盘中根据市场的变化来进行规律的匹配,从而快速改变投资方向。在这个过程中我们强调以大样本下的期望作为我们的视野。

最后,我们认为对CTA而言分散化是最好的风控手段。我们的实盘经验支持“分散化是金融市场中唯一免费的午餐”这一说法,也就是说分散化可以在不引入额外风险的前提下增厚我们的收益。所以我们在实际投资时,一直秉持交易品种的分散化、策略持仓周期的分散化,和交易信号产生逻辑的分散化。

我们认为机器学习是量化CTA策略的新方向,它相较传统线性模型提供了高维的非线性视角,可以更好地分类并提升拟合效果。这里将机器学习CTA的流程拆分成四步:


Step 1:因子挖掘

主要指从原始的行情数据中提取可以描述当前市场特征的因子,比如PB因子就可以用来描述当前市场的整体估值。

Step 2:因子筛选

在控制因子间相关性的前提下,对第一步挖掘得到的因子进行有效性检验,从中筛出对市场有预测效力的因子。

Step 3:机器学习

在得到有效因子池后,将因子输入机器学习模型进行因子组合,这里机器学习的任务是对历史的因子样本进行学习,并从中挖掘出具有正收益期望的规律。

Step 4:交易决策

在训练完机器学习模型后,模型就可以基于对实时行情数据的分析给出后市的涨跌预测,从而指导实盘的投资决策。

以上是机器学习CTA的大体流程,近期我们的研究突破主要在第一步的因子挖掘和第三步的机器学习的可视化上。

传统来说,因子挖掘主要由投资经理根据自己的交易经验和逻辑来手工完成,人工挖掘得到的因子因为具有较强逻辑性,因此往往可以在较长时间内都保持有效。但缺点是因子挖掘的周期较长,并且这两年随着各家机构研究的不断深入,人工挖掘因子的效率不断降低。所以我们在传统的人工因子挖掘外引入了遗传规划,由算法自动对因子进行挖掘。算法挖掘因子的优势是可以依托计算机的强大算力,因子挖掘效率非常高,但缺点是由于因子的逻辑性较弱,所以需要定期的迭代更新来维持因子的有效性。

第二个突破点是在机器学习做因子组合上。我们对机器学习的可视化做了一些努力。后面我们会展开来介绍下遗传规划因子挖掘和机器学习可视化这两方面的突破。


遗传规划:跳出人类思维定式

遗传规划所做的事情,其实就是模拟了自然界中物竞天择、适者生存的演化模式,通过优化迭代的手段逐渐生成契合优化目标的因子,优化的目标往往被设定为因子对价格走势的预测能力。

遗传规划的优势除了前面提到的可以提升因子挖掘的效率之外,更重要的是可以突破人类的思维定式,挖掘出一些隐藏的、难以通过人脑构建的因子。同时我们也可以通过算法控制因子间的相关性,从而得到两两低相关的因子池。因为因子间的高相关性会导致后续机器学习时模型的参数不稳定,所以低相关的因子池可以在一定程度上使我们的模型更加稳健。

接下来我们看看遗传规划的具体算法。首先,我们需要事先定义一个变量集和一个算子集,这里的变量往往是基础的行情指标,而算子集中包含常规的运算符,如加减乘除均值等等。然后我们会将变量和算子随机组合生成大量的个体样本,这里的每一个样本个体都可以被翻译成一个因子的公式表达式,从而得到初始种群。之后,我们会计算初始种群中每个个体对环境的适应度,并从中选出适应度高的个体作为下一代进化的父代。因为适应度是以因子对价格的预测效力衡量的,所以通过这一步我们就选出了对价格走势有一定预测效力的因子集作为父代种群。有了父代种群之后,下一步就是遗传变异。一部分父代个体可以直接进入子代,而一部分父代将通过变异的方式,将部分因子结构传递至下一代。

这里展示了几种常见的变异方式。第一种交叉变异类似人类的染色体交叉,两个适应度较高的父代个体会互相交换一部分因子结构生成子代,交叉变异较为保守,可以保留并传承父代中“好”的因子结构。第二种子树变异会随机替换父代树结构中的一个子树。第三种点变异则是随机替换父代树结构中的一个叶片。子树变异和点变异更像基因突变,是比较激进的变异方式,可以重新引入被淘汰的因子结构来维持种群的多样性。第四种提升变异可以理解为基因片段剪除,我们会随机地从父代中移除一部分树结构,这样做可以防止因子结构过于复杂而导致过度拟合。

数据来源:gplearn

那么,在第一代种群经过一系列的遗传变异之后,我们就可以得到第二代种群,整体来看,第二代种群中因子的适应度会高于第一代,也就是第二代种群中因子对价格有更高的预测效力。这样不断循环迭代,我们就可以不断提升种群中因子的有效性,最终得到对价格有较强预测效力的因子集。以上就是遗传规划的大致流程。


可视化:打开机器学习的黑箱

我们的另一个新进展是机器学习的可视化。机器学习策略的优势,在于可以处理海量的历史数据,并且它的预测准确率更高。同时机器学习有一定的自适应性,可以不断学习新的数据来优化自身。但是因为机器学习特别是神经网络模型的决策流程是一个黑箱,所以这类模型一直以来也被批评可解释性太差。那我们现在做的就是想打开神经网络的黑箱,来看看它到底是如何做出价格预测的。

我们先以一个图像识别的例子来说明。假设我们已经有了一个训练好的神经网络,如果我们要识别一张图片里的动物是猫还是狗,最经典的做法就是把图片先转换成数字像素矩阵,然后输入给卷积神经网络,样本在经过若干层卷积层后,最后由softmax函数来给出这是一只猫或者狗的概率。

在深度学习模式下,图片从输入模型到输出结果中间可能要经过几百层的卷积层,整个神经网络的结构非常复杂,人脑很难解释清楚它的内部决策机制。而可视化可以告诉我们,在神经网络给出判断的时候,主要读取了图片里哪些局部区域的特征。

具体到算法层面,我们可以计算最后一层隐含层的激活函数值和它的梯度斜率,然后以热力图的形式来表征每个局部特征的重要性。这里热力图的颜色越红表示这块区域对图像识别越重要,反之颜色越偏蓝,表明该区域越不重要。我们可以看到神经网络在判断动物类别的时候,主要是读取了猫和狗的头部区域和身体花色的特征,这其实是非常明智的。

然后我们再来看在CTA策略中,神经网络模型在预测后市涨跌的时候,主要是基于了哪些特征因子。这里的热力图是对CTA神经网络模型可视化后的结果,图中每一列代表一个因子,从左到右逐渐从趋势因子过渡到反转因子。

我们可以看到在2015年6月的时候,热力图左侧区域更为明亮,也就是说神经网络在价格预测的时候更侧重于趋势因子,结合当时连续上涨的行情来看,神经网络这一选择是正确的。而在2015年8月,此时市场已经经历了股灾、上行趋势被打破,这时热力图的右侧区域更亮,也就是说此时神经网络在做预测的时候,给了反转指标更多权重。由此可以得出神经网络在做训练的时候,可以通过不断吸纳学习新的数据来调整模型自身,并且它在实盘做出价格预测的时候也较好地适应了市场环境的变化。

在CTA之外,我们今年也对阿尔法策略做了升级改造。阿尔法策略可以分为两类:一类用量化手段选出可以战胜基准指数的股票组合,也就是指数增强策略,另外是在指数增强的基础上叠加相应股指期货的空头头寸来对冲市场风险从而获得绝对收益,也就是量化对冲策略。所以阿尔法策略的核心还是在于选股,下图对量化选股的流程做了拆解,可,分为因子挖掘、因子组合和组合优化这三步。

第一步,因子挖掘的目的是找出一些可以预测股票未来相对强弱的选股因子,数据源包括个股的基本面、量价特征、资金流、分析师对个股的一致预期等等。第二步会把因子放入机器学习模型做因子组合。最后通过对股票流动性的筛选确定选股范围,再用组合优化的手段,使得所选股票组合在风格和行业上的分布尽可能贴近基准指数,从而得到一个跟踪误差低,但同时又可以跑赢基准指数的股票组合。

明年我们就会推出全新的量化产品,用的策略是CTA+阿尔法策略,用机器学习的手段,挖掘股票和期货里面的机会,也请大家关注。

来源:朝阳永续

我们一直说CTA是一种非常好的危机保护策略,因为这类策略往往可以在市场大幅下跌时候取得非常不错的收益,例如今年2月3日和3月份市场大跌的时候,我们的量化CTA产品都表现不错。从大类资产配置的角度看,由于低相关性,在持有股票型基金获取阿尔法的同时,配置CTA产品可以在资产组合的层面起到风险分散化的作用。


注:本文件非基金宣传推介材料,仅作为本公司旗下基金的客户服务事项之一。

本文件所提供之任何信息仅供阅读者参考,既不构成未来本公司管理之基金进行投资决策之必然依据,亦不构成对阅读者或投资者的任何实质性投资建议或承诺。本公司并不保证本文件所载文字及数据的准确性及完整性,也不对因此导致的任何第三方投资后果承担法律责任。

本文所载的意见仅为本文出具日的观点和判断,在不同时期,朱雀基金可能会发出与本文所载不一致的意见。本文未经朱雀基金书面许可任何机构和个人不得以任何形式转发、翻版、复制、刊登、发表或引用。