专栏名称: 留富兵法
从量化的视角去看市场,用金融工程的思维去解决问题
目录
相关文章推荐
刀法研究所  ·  文心一言宣布将全面免费;ABC回应“比基尼安 ... ·  11 小时前  
刀法研究所  ·  亲历《哪吒2》联名,这是我们的复盘和建议|A ... ·  11 小时前  
玩物志  ·  情人节甜蜜来袭|充电贴贴,爱不离线 ·  昨天  
刀法研究所  ·  资生堂2024年营业利润下滑73%;%Ara ... ·  2 天前  
玩物志  ·  瑞幸涨价,「背刺」返乡打工人 ·  3 天前  
51好读  ›  专栏  ›  留富兵法

【国盛金工】量化专题:提升AI模型边际效能:图注意力网络与特征集成

留富兵法  · 公众号  ·  · 2024-06-17 08:30

正文

0

摘要



在报告《基于深度学习的指数增强策略》中,我们提出了增强AI选股模型绩效的3个思路:
  1. 对同一模型构建差异化数据集输入,堆叠多数据集的输出;
  2. 通过调整超参数选取、标签构建、数据预处理方式等精进单一模型;
  3. 对同一数据集根据不同模型训练,堆叠多模型的输出;

我们在之前研究中重点讨论了前两者,本文围绕第三个思路展开,探讨如何基于同一数据集,在不同模型下训练并堆叠因子输出,以提升模型效能。
多维度提升AI选股模型绩效
首先,我们在时序神经网络中引入图结构网络,以此刻画股票之间的关联,该空间信息的引入增强了单一数据集的预测能力;
其次,我们在原有基础数据集之外引入手工构建的量价和基本面特征集合,手工特征集显著捕获了端对端模型之外的增量Alpha信息;
最后,在特征集成阶段,我们考虑数据输入、算法使用与标签设计等维度的多样性,综合构建集成模型,这进一步提高了模型的选股能力。

深度学习选股因子

基于多维度特征集合、集成算法与标签设计,我们得到深度学习选股因子,在回溯期2019年至2023年间,因子多头超额收益45.4%,5日IC均值为12.9%,10日IC均值达到14.7%。

指数增强组合

基于AI选股因子,我们构建周频调仓的中证500和中证1000指增组合:
  1. 2019至2023年,中证500指数增强组合相对中证500指数年化超额收益18.6%,跟踪误差5.5%,信息比率2.98;
  2. 2019至2023年,中证1000指数增强组合相对中证1000指数年化超额收益28.1%,跟踪误差6.4%,信息比率3.67。


1

AI选股模型



在《基于深度学习的指数增强策略》报告中,我们提出以下思路以提升AI选股模型绩效:
  1. 对同一模型构建差异化数据集输入,堆叠多数据集的输出;
  2. 通过调整超参数选取、label构建、数据预处理方式等精进单一模型;
  3. 对同一数据集根据不同模型训练,堆叠多模型的输出;
在之前的研究中,我们重点讨论了思路1,构建多样化的特征集作为网络输入;此外,对于思路2,我们对网络结构、损失函数、模型架构的差异进行了分析。

据此构建的中证500和中证1000指数增强组合,今年样本外表现突出,截至2024-05-31日组合超额收益分别达到10.1%和8.2%。因此,本文将进一步深化思路3的想法,探讨如何将同一数据集在不同模型下的训练输出有效堆叠,以提升模型边际效能。

对于AI模型在多因子选股策略中的应用,我们专注于两个方向:特征工程和特征集成。基于此,本文将具体探索以下三个维度:
  1. 股票的空间信息:时序类网络更多关注股票量价信息在时间维度的变化,我们引入图网络结构提取股票之间截面比较的空间信息;
  2. 手工特征的引入:基于端到端建模,我们直接将原始数据输入模型提取因子特征,而手工设计精细化因子(基本面/量价)可能包含额外有价值的信息;
  3. 多维度特征集成:对于多网络结构输出的多维度特征集合,我们讨论如何从多样化数据输入、多集成算法、多类型标签、多预测窗口等维度集成特征。


2

数据与网络



2.1 数据输入

我们依据不同数据源构建特征集合独立训练神经网络模型。数据集1到5为本文基础数据集合,在前序报告中已经介绍;我们引入新数据集6和7,其中数据集6为量价因子集,数据集7为基本面因子集。

1)数据集:日K线

数据特征:开盘价、最高价、最低价、收盘价、均价、成交量、成交额

数据预处理:

  1. 数据滚动30日窗口取日K线数据构建数据集,数据序列长度为30;

  2. 价格数据先除以最新收盘价标准化,成交量/额数据除以序列均值标准化。

2)数据集:分钟K线

数据特征:开盘价、最高价、最低价、收盘价、均价、成交量、成交额

数据预处理:

  1. 数据滚动20日窗口取2小时分钟线数据构建数据集,数据序列长度为40;

  2. 价格数据先除以最新收盘价标准化,成交量/额数据除以序列均值标准化。

3)数据集:日内收益分布

数据特征:开盘收益率、早盘/尾盘收益率、日内最高/最低收益率、日内平均收益率

数据预处理:

  1. 以30分钟K线将每日行情拆成8个窗口,并计算窗口内股票收益率;

  2. 基于8个收益率特征计算股票在日内的收益分布特征,序列长度为30。

4)数据集:资金流

数据特征:特大单、大单、中单、小单买入/卖出金额

数据预处理
  1. 将各类型资金流金额除以当日成交总额得到比例值;

  2. 数据滚动30日窗口取数据构建数据集,数据序列长度为30。

5)数据集:技术特征

数据特征:日收益率、换手率、非流动冲击、振幅等基础量价特征信息

数据预处理
  1. 基于原始行情数据预处理后得到常用技术指标;

  2. 数据滚动30日窗口取数据构建数据集,数据序列长度为30。

6) 数据集:alpha158

数据特征:量价因子

数据预处理

以alpha158因子集为数据源,基于谱聚类算法聚类,数据序列长度为30。

7) 数据集:fundamental

数据特征:基本面因子

数据预处理

以常用基本面因子为数据源,信息为截面信号,数据序列长度为1。


2.2 网络结构

在先前的研究报告中,我们采用了LSTM结合自注意力机制的结构,从股票的量价数据中有效提取了时序特征。LSTM(长短期记忆网络)作为RNN(循环神经网络)的一种,它在处理股票时间序列信息方面表现出色,能够捕捉到关键的时序动态。

然而,在实际的投资决策中,除了单只股票的时间序列信息外,股票之间的截面关联同样蕴含着至关重要的信息。为了捕捉这种股票间的相互关系,我们引入了图注意力网络GAT(Graph Attention Network) 。GAT是一种图神经网络,它通过注意力机制来编码股票之间的复杂截面关系,从而为我们提供了一个全面的视角来分析和预测市场动态。

通过结合LSTM的时序分析能力和GAT的截面关联捕捉能力,我们的模型能够更全面地理解股票市场的行为,为投资决策提供更为深入和精确的洞察。

因此,在本研究中我们构建了一个结合了时序分析和图结构分析的复合模型,以全面捕捉股票市场的特征。LSTM模型来处理每个样本在时间维度上的迭代,其能够记住长期依赖关系,但并不涉及样本数据间的交互。将LSTM的输出接入自注意力机制捕捉序列内部的依赖关系,再接入图注意力网络GAT以捕捉不同股票之间的相互关联。

我们具体的网络结构如下:

其中input为模型输入,MLP之后得到output为网络模型输出,其为N*F为矩阵,对于任意时间点的N只股票,我们输出维度为F的因子集合;[]符号表示矩阵concat操作,下标表示在时间维度取索引,adj为图网络中的股票邻接矩阵。

此外,考虑到数据集7主要为截面信息,它并不涉及时间序列的变化,因此无需通过LSTM网络进行时序特征的提取。我们选择直接从步骤3)开始处理这些数据,将截面信息作为输入,直接送入图模型GAT进行分析。

在神经网络的训练过程中,我们遵循以下步骤:

  1. 滚动训练策略:我们采用滚动训练方法,每年更新模型,使用过去8年的历史数据作为训练基础,确保模型能够适应时间序列的变化;

  2. 数据时间序列拆分:我们将数据集按照时间顺序进行划分,将最后10%的数据保留作为验证集,用于评估模型的泛化能力,而其余数据则用于训练模型;

  3. 按日拆分训练批次:在训练过程中,我们按照日为单位将数据拆分为不同的批次,确保每批次输入网络的样本来自同一时间点;

  4. 早停机制:为了预防模型训练过程中的过拟合现象,我们引入了早停机制。该机制会在验证集上的性能不再提升时停止训练,从而保证模型的泛化性能。

因此,对于图网络模型而言,邻接矩阵的定义至为重要。我们认为股票节点之间的连通性与它们的风险暴露紧密相关,而行业和风格正是风险最自然的刻画。


3

因子信号



在对于网络模型训练出来的因子信号评估时,我们对比3类模型:

  1. Baseline:以LSTM作为基准模型;

  2. GAT-ind:在LSTM基础上加入GAT,使用行业信息构建邻接矩阵;

  3. GAT-ind-style:在LSTM基础上加入GAT,邻接矩阵基于行业和风格信息构建。

对于因子绩效具体检验规则,如下:

  1. 因子绩效回溯区间为2019.1.1~2023.12.31;

  2. 以周频(5个交易日)为调仓窗口,计算收益时不考虑交易成本;

  3. T日因子,对应T+1~T+6日均价收益,计算因子IC以及20分组超额收益;

  4. 对于每个因子的5条路径分别统计因子绩效,取表现均值作为因子绩效刻画。


3.1 基础数据集

基础数据集包含数据集1-5,它们的具体构建细则在前序报告中已经介绍,下面我们基于3类网络模型训练,分别统计输出因子的绩效。

从因子绩效维度来看,3类模型下数据集1-5的因子输出多头超额收益均值分别为23.9%、24.5%和25.9%,随着图网络复杂度的提高,因子绩效也略有提升。因此,图网络模型对于单一数据集而言能提高数据集的预测能力。


3.2 手工特征 数据集

数据集6为来自于qlib 的alpha158,特征是基于股票量价数据构建的常见技术类因子。若将158个特征同时输入神经网络,其对算力、显存具有较高要求,因此我们对特征做适当聚类预处理。

我们以谱聚类算法做特征聚类。谱聚类算法将数据集中的每个对象看作是图的顶点X,将顶点间的相似度量化作为相应顶点连接边E的权值,这样就得到一个基于相似度的无向加权图G(X, E),于是聚类问题就可以转化为图的划分问题。

我们基于训练集数据统计因子相关性,并以因子相关性作为顶点间的相似性度量,将158个聚类成8个类别,每个类别内特征取均值得到8个综合特征作为网络模型的输入。

数据集7为基本面数据集fundamental,其以股票基本面财务特征为主,包含盈利、成长、估值等常用基本面因子,以及少量如IVR、CorrFundStk等特殊技术类指标。

由于基本面信号在短期几乎不会发生明显变化,因此不同于量价信息我们先用时序网络编码提取特征,我们直接以T日截面数据作为图注意力网络GAT在T日的输入。

因此,训练数据集7的具体网络结构如下所示:


基于以上流程,我们对于数据集6和7建模训练,统计数据集6-7的因子输出与基础数据集1-5输出因子的截面相关性,如下表所示。

整体而言,数据集6和7相对于基础数据集仍然存在增量信息。量价数据集6(alpha158数据集)由股票行情数据构建,因此其与基础特征存在较高的相关性,平均相关性为57%;而基本面数据集7(fundamental数据集)与基础特征相关性均不高,截面相关性均值为33%,存在明显增量信息。

上表展示了3类模型Baseline、GAT-ind和GAT-ind-style对于alpha158数据集因子输出的绩效统计。与基于基础数据集的分析结论一致,随着图网络的复杂度提升,alpha158数据集因子绩效也出现提高,三类模型多头超额收益分别为19.1%、20.5%和21.9%。

因此,对于网络模型而言,模型复杂度可能提高单模型的预测能力,但也很可能提高多模型之间的关联,二者之间需要进行适当的权衡。

最后,我们展示了基本面数据集fundamental的因子绩效。fundamental数据集因子整体IC不高,要弱于量类数据集,但多头表现在这几年较为优秀。2019至2013年,因子多头年化超额收益24.5%,多空收益59.2%,IC均值为8.1%,ICIR为0.97。


4

特征集成



在金融领域,尤其是量化投资中,神经网络训练得到的因子输出通常需要进一步的处理以提高预测的准确性和稳健性。业界普遍采用的方法之一就是使用集成学习技术,尤其是梯度提升决策树(GBDT)算法,来对这些因子输出进行集成。

GBDT算法对于参数而言并不敏感,这意味着通过细致的参数调优来实现显著的性能提升往往较为困难。因此,我们希望在模型构建中,通过差异化的数据输入、集成算法以及标签设定,得到多元的集成输出,而综合这些结果以获取更稳健的收益预测。

我们的alpha模型构建架构如下:

对于数据输入而言:对于每个数据集,我们采用3类神经网络Baseline、GAT-ind和GAT-ind-style独立集建模、提取因子特征,而后进行特征合并。若将因子特征直接拼接(concat)合并,这将显著增加特征数量;因此我们采用相加(add)的方式,将不同模型提取的因子特征随机相加;最后拼接不同数据集的因子特征,得到综合特征集合。

我们将该综合特征集记为LSTM-GAT因子集,而将基础模型LSTM提取的因子特征集记为LSTM因子集。我们在因子特征维度随机打乱后相加,通过多次重复该步骤,可得到多个差异化的综合特征集,这丰富了集成模型的数据输入。

对于集成算法而言:我们采用3类经典的GBDT算法Lightgbm、XGBoost 和CatBoost。每种算法都有其独特性,通过结合这三种算法,我们的集成模型能够从不同角度捕捉数据的复杂性和多样性,从而提高整体模型的泛化能力和预测准确性。

对于标签设定而言:我们采用多维度预测窗口与多类型标签设计。不同长度的预测窗口确保模型对于中、短期收益均具有预测能力,减缓模型收益预测能力在时序上的衰减;不同类型的标签设计从多个维度去定义alpha,增强模型收益预测能力的稳健性。

综合各个步骤的差异,我们将得到数量为“综合特征集数×集成算法数×标签数”的收益率预测信号。对于这些收益率预测取均值,即得本文多维度集成的alpha信号。

在报告中,我们提出了三个维度的想法以提升模型的绩效。以下,我们将拆解这些步骤,分析每个维度对最终绩效增益的贡献。

首先,我们对比基准模型LSTM在引入图注意力网络前后对于收益预测能力的变化。以数据集1-5作为训练输入,CatBoost作为集成算法,我们比较两个模型提取的因子特征在集成后的综合因子绩效。

图表12展示了以LSTM因子集做输入,用CatBoost算法集成后的综合因子绩效。回溯期2019至2023年内,因子多头组合超额收益36.6%,因子5日IC均值11.5%,10日IC均值12.9%。

图表13展示了以单一的LSTM-GAT因子集做训练输入,用CatBoost算法集成得到的综合因子绩效。回溯期2019至2023年内,因子多头超额收益37.3%, 5日IC均值11.5%,10日IC均值12.9%。

对比前后两者,加入图注意力网络之后因子多头年化超额收益略有提高,幅度约为0.7%,而IC均值未出现明显变化,复杂的网络模型对于特征的提取能力有一定的增量效用。

但如前文所述,对于特征提取而言,图注意力网络的相同的股票邻接信息引入,它提高了单数据集的预测能力,但同时也增加了数据集之间的alpha关联。

另一方面,多个LSTM-GAT因子集分别集成得到的综合因子彼此之间存在一定差异,通过二次综合这些因子能提高模型预测能力。

其次,我们对比手工特征集对于模型绩效的提升。以CatBoost作为集成算法,我们对比基于数据集1-5提取的因子特征与数据集1-7提取的因子特征,在集成后的绩效差异。

图表14展示了数据集1-7训练得到的因子特征集成后的综合因子绩效。回溯期2019至2023年内,因子多头超额收益40.4%,5日IC均值12.0%,10日IC均值13.5%。

相比于数据集1-5的集成因子多头超额收益37.3%,5日IC均值11.5%,数据集1-7的集成因子在IC和多头超额收益维度均提高明显。

因此,增量的数据源能显著提高AI选股模型绩效,尤其是精心设计的手工特征集,它们可能蕴含神经网络难以直接从原始数据中提取的特征信息。

最后,我们对比多次集成相对于单次集成对于模型绩效的提升。以单一因子集、单一集成算法、单一标签的集成因子比较多因子集、多集成算法、多维度标签的多次集成输出。

多次集成以数据集1-7作为输入数据,3类神经网络独立做特征提取之后通过多次特征随机相加得到多个综合特征集合;而后,分别以Lightgbm、XGBoost 和CatBoost算法集成;同时,通过设计多类型标签、构建多维度预测窗口来设置多维度预测目标;最终,综合多次训练得到多个因子,取均值作为股票的收益预测值。

回溯期2019至2023年内,因子多头超额收益45.4%,5日IC均值12.9%,10日IC均值14.7%;相较于单次集成多头超额收益40.4%,5日IC均值12.0%,10日IC均值13.5%;多次集成在因子多头收益、IC均值维度均提高明显。

因此,在输入特征、集成算法和标签设定等多维度构建差异,而后通过多次集成能显著提高选股模型的绩效。我们以此作为本文最终的深度学习综合因子,构建选股策略。


5

指增 策略



基于综合因子,我们分别构建中证500和中证1000指数增强组合。组合以最大化预期收益为目标,周度调仓,按次日均价撮合,交易成本按双边千分之3计费。







请到「今天看啥」查看全文