本研究在前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)的基础上,将大模型因子挖掘扩展至基本面与高频因子挖掘场景。本文继续沿用前期报告中的多智能体架构,核心改变在于针对基本面与高频因子定制化设计算子,以尽可能保证因子表达式的合乎逻辑。从结果上看,GPT因子工厂2.0在基本面因子挖掘中表现尚可,在高频因子挖掘中表现优异,因子相关性均普遍偏低。此外,本文利用GPT因子工厂产出的因子进行指增策略实践,基于高频因子构建中证1000指增策略(回测区间20161230- 20240920),年化超额收益率为31.32%,信息比率为4.20,策略效果较为出色。
人工智能82:GPT因子工厂扩展至基本面与高频因子挖掘
本研究在前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)的基础上,将大模型因子挖掘扩展至基本面与高频因子挖掘场景。本文继续沿用前期报告中的多智能体架构,核心改变在于针对基本面与高频因子定制化设计算子,以尽可能保证因子表达式的合乎逻辑。在基本面因子挖掘中,因子周度IC均值为0.011,周度RankIC均值为0.013;对于高频因子挖掘,因子周度IC均值为0.020,周度RankIC均值为0.031,GPT因子工厂2.0挖掘高频因子质量较高。利用GPT因子工厂2.0产出的高频因子构建中证1000指增策略(回测区间20161230- 20240920),年化超额收益率为31.32%,信息比率为4.20。
因子挖掘与GPT因子工厂:大模型因子挖掘或成为因子挖掘新兴方案
因子挖掘在量化研究中占据核心地位,是为多因子模型补充Alpha源的重要途径。传统的因子挖掘主要包括人工手动挖掘和算法自动挖掘两种方案:人工手动挖掘依赖于量化研究员对市场的理解与直觉,离不开研究员的专业素养,需消耗高昂的人力成本;算法自动挖掘将因子挖掘流程自动化,有效降低人力成本,然而其缺陷是过拟合风险与可解释性难题。大模型因子挖掘或将成为新兴的因子挖掘方案,其可行性在前期报告中已得到证明,同时大模型可给予清晰的逻辑解释,过拟合风险或更可控。
基本面与高频因子挖掘:或是自动化因子挖掘难涉之境
算法自动化因子挖掘相比于人工挖掘存在诸多优势,但却鲜有针对基本面或高频因子的自动化因子挖掘,人工挖掘因子似乎更具优势。对于基本面因子挖掘而言,传统算法在无法利用专业知识的前提下,难以构造具备逻辑性的基本面因子。对于高频因子而言,传统算法可能难以在表达式中融入日频化采样,高频因子表达式的复杂性形成一道隐形的墙。大模型或许是解决之道,一方面在于大模型近乎人类的逻辑推理能力,另一方面在于,从自然语言中诞生的大模型拥有更灵活的因子构建与因子计算能力。
因子挖掘效果:基本面因子表现尚可,高频因子效果优异
本文对GPT因子工厂2.0产出的基本面因子和高频因子挖掘效果进行测试,分别进行30次因子挖掘,每次因子挖掘仅包括首次挖掘。因子IC方面,30个基本面因子IC均值为0.011,RankIC均值为0.013,|t|均值为1.542;23个筛选后的高频因子IC均值为0.020,RankIC均值为0.031,|t|均值为4.588。因子相关性方面,基本面因子相关系数绝对值均值为0.10,高频因子相关系数绝对值均值为0.17,因子工厂产出的因子相关性普遍偏低。
指数增强策略实践:基于量价与高频因子的指增策略均表现较出色
本文基于量价和高频因子分别进行指增策略实践检验。对于前期报告初次挖掘产出的量价因子,沪深300、中证500、中证1000指增策略年化超额收益率分别为7.18%、10.34%、18.50%,对于高频因子,三类指增年化超额分别为13.78%、18.40%、31.32%。将合成后的量价因子与高频因子按1:4权重合并,合并后因子三类指增年化超额分别为12.38%、17.74%、30.72%。指增策略实践表明,GPT因子工厂产出的高频因子效果总体优于量价因子,基于高频因子可构建效果较出色的指增策略。
01 导言
“一法通,万法通” ——谚语
自多因子框架诞生以来,因子挖掘便成为无数量化从业者与学术研究者百谈不厌的话题。因子挖掘的常规技法不外乎两种:人工挖掘与机器挖掘,后者包括遗传规划、深度学习与强化学习等。与常规技法不同,随着大语言模型的兴起,利用大模型挖掘因子也成为大模型在量化领域的先锋应用之一,华泰金工在前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)中做了深度探索。
量价因子挖掘是自动化因子挖掘的“起手式”,遗传规划等如此,大模型亦是如此。对于狭义的因子挖掘而言,产出的因子需要具备明确的因子表达式,量价数据恰恰拥有形成明确表达式的诸多优势:含义清晰、格式整齐、维度一致等等。然而,在面对基本面与高频因子时,遗传规划等方案常陷入困境,原因在于,一方面基本面因子往往需要清晰的逻辑支撑,仅凭算子的组合很难形成逻辑效果兼备的因子,另一方面高频因子日频化操作需要复杂的格式转换,需要考量算子间细致的逻辑关系。大模型近乎人类的逻辑推理能力或许能成为基本面因子与高频因子挖掘困境的解决之道。
本文是对前序研究GPT因子工厂在基本面与高频因子挖掘场景下的扩展。在框架设计上,本文沿用了GPT因子工厂的多智能体框架:FactorGPT负责因子挖掘,CodeGPT负责代码撰写,EvalGPT负责因子评估。字段方面,对于基本面因子挖掘,我们筛选资产负债表、现金流量表、利润表中的部分财务指标作为底层字段;对于高频因子挖掘,我们使用分钟频原始量价数据作为底层字段,包括最高价、最低价、开盘价、收盘价、成交额、成交量和成交笔数7个字段。算子方面,为了贴合基本面与高频因子挖掘,本文设计构建定制化的算子列表,以实现不同场景下的因子挖掘功能。
GPT因子工厂2.0显示出较优异的因子挖掘性能。对于基本面因子,因子工厂产出的30个基本面因子IC均值为0.011,RankIC均值为0.013,|t|均值为1.542,因子总体效果尚可,因子相关系数为正的系数均值为0.10,相关系数为负的系数均值为-0.09,所有相关系数绝对值的均值为0.10,总体相关性较低。对于高频因子,因子工厂产出30个因子,经筛选后保留23个因子,其IC均值为0.020,RankIC均值为0.031,|t|均值为4.588,因子表现较为出色,相关性方面,相关系数为正的系数均值为0.20,相关系数为负的系数均值为-0.13,所有相关系数绝对值的均值为0.17,因子相关性同样偏低。
与此同时,本文利用前序研究GPT因子工厂中产出的量价因子与本文产出的高频因子进行指增策略实证。对于前序研究初次挖掘产出的量价因子,沪深300指增策略年化超额收益率为7.18%,信息比率1.53,中证500指增策略年化超额收益率为10.34%,信息比率1.61,中证1000指增策略年化超额收益率为18.50%,信息比率2.61。对于高频因子,沪深300指增策略年化超额收益率为13.78%,信息比率2.73,中证500指增策略年化超额收益率为18.40%,信息比率为2.68,中证1000指增策略年化超额收益率为31.32%,信息比率4.20。将合成后的量价因子与高频因子按1:4权重合并,量价高频合并因子沪深300指增策略年化超额收益率为12.38%,信息比率2.45,中证500指增策略年化超额收益率为17.74%,信息比率为2.56,中证1000指增策略年化超额收益率为30.72%,信息比率4.08。上述结果表明,仅基于GPT因子工厂产出因子即可构建效果较出色的指增策略,有效彰显了GPT因子工厂的实用价值。
02大语言模型与因子挖掘
近几年来,由ChatGPT引发的大模型浪潮席卷各行各业,大模型应用在不同领域不断带来技术革新。金融领域亦是如此,大语言模型的海量文本处理能力、逻辑推理能力、生成能力使其在金融领域具有广阔的应用前景。Zhao et al.(2024)认为,大模型在金融任务中展现出的能力可分为5种:问答、情感分析、命名实体识别、时序预测、以及数学推理,基于这些能力,大模型在金融工程、金融预测、金融风险管理、金融实时问答等任务中的应用被广泛探索。
在大模型自身能力的基础上,合理的应用架构是提升大模型应用效果的必经之路,例如多智能体(Multi-Agent)架构。举例而言,Zhang et al.(2024)提出专为金融交易场景设计的大模型智能体架构FinAgent。FinAgent通过其多模态能力处理金融市场数值、文本和视觉数据在内的多模态数据,同时利用低层反思模块分析市场价格变动、高层反思模块评估历史交易决策,在融合专家指导与技术分析指标后实现最终的交易决策。从测试结果上看,FinAgent的交易盈利效果显著好于传统技术交易策略(MACD、KDJ&RSI等)和其他复杂算法(SAC、PPO、DQN、FinGPT和FinMem),显示出智能体架构加持下的大模型应用潜力。
基于大模型的因子挖掘
因子挖掘在量化研究中占据核心地位,是为多因子模型补充Alpha源的重要途径。传统的因子挖掘主要有两种方案,一种是人工手动挖掘,另一种是算法自动挖掘。对于人工手动挖掘而言,量化研究员将其对市场的理解与直觉转化为因子表达式,进而捕捉Alpha,这一过程将会不断循环,依赖的是研究员的专业素养以及高昂的人力成本。对于算法自动挖掘,因子表达式将由算法生成,例如遗传规划在上百个算子与字段构成的探索空间中不断试错,以逐渐提升因子IC值等为优化目标,而这类方案的缺陷在于庞大探索空间带来的高昂算力成本,并且算法无法提供任何因子含义,可解释性往往受到诟病。
利用大模型进行因子挖掘或许是一种解决之道。在前期研究“GPT因子工厂”中,我们基于GPT+多智能体架构搭建了大模型驱动的因子挖掘框架,为大模型的因子挖掘能力提供证据支持。在GPT因子工厂中,三个智能体有序分工:FactorGPT负责因子表达式与因子释义生成,CodeGPT基于FactorGPT产出的因子表达式撰写因子计算代码,EvalGPT对因子回测结果进行评估并提出优化建议。在多智能体架构的加持下,我们完成了因子挖掘流程的拆解,使得GPT因子工厂的因子产出过程稳定且有效。
学界同样对基于大模型的因子挖掘进行了诸多探索,港科大和IDEA研究院等机构开发的Alpha-GPT是其中的代表。Alpha-GPT的设计理念是提供一个可交互的自动化因子挖掘框架,因此在其架构设计中,大模型发挥的作用在于将研究人员的思路转化为遗传规划算法参数,再由遗传规划算法进行因子挖掘,最后将表现较好的因子返回给研究人员。Alpha-GPT的优势在于既能将研究人员的想法融入到因子挖掘过程中,又能结合大模型与遗传算法的优势,大大节省人力成本。
Alpha-GPT 2.0借助多智能体架构对Alpha-GPT进行了全面升级。Alpha-GPT 2.0由Alpha Mining Agent,Alpha Modeling Agent和Alpha Analysis Agent构成,其中,Alpha Mining Agent负责根据市场数据进行因子挖掘,结合研究人员见解构建因子或进行因子增强,Alpha Modeling Agent负责因子的机器学习建模、构建有效的Alpha信号,Alpha Analysis Agent则结合实时知识,对因子进行全面的投资组合分析和风险管理。
基本面与高频因子挖掘
尽管算法自动化因子挖掘相比于人工挖掘有诸多优势,但却鲜有针对基本面因子和高频因子的自动化因子挖掘,人工挖掘因子在这些场景下似乎更具优势。对于基本面因子挖掘而言,底层字段主要来源于各类财务报表,报表与指标间的勾稽关系较为复杂,传统算法在无法利用专业知识的前提下,难以构造具备逻辑性的基本面因子。对于高频因子而言,传统算法挖掘方案的困境在于难以在表达式中融入日频化采样,当前主流的高频因子挖掘方案实际是利用时序神经网络学习高频数据的隐含规律,直接预测未来股票收益,本质上已经脱离了公式化的传统因子挖掘方案,但神经网络“黑箱”问题仍然是难解之痛。
在前序研究“GPT因子工厂”的基础上,本文尝试继续使用大模型进行基本面因子与高频因子挖掘。对于基本面因子挖掘,我们筛选资产负债表、现金流量表、利润表中的部分财务指标作为底层字段,同时设计了基本面因子构造中常用的算子;对于高频因子挖掘,我们使用分钟频原始量价数据作为底层字段,同样也为高频因子构造了一批定制算子。除此之外,本文尝试分别利用GPT因子工厂产出的量价因子与高频因子构建指数增强策略,最终将经过LGBM模型合成后的量价因子与高频因子加权合成,构建最终的指数增强策略。
03 方法
本文主要探究“GPT因子工厂”在基本面与高频因子挖掘场景下的适用性。在应用架构设计层面,本文仍然遵循以往“GPT因子工厂”的多智能体架构:FactorGPT、CodeGPT与EvalGPT。核心改进在于字段与算子方面,基本面因子挖掘主要基于原始财务指标数据,高频因子挖掘主要基于分钟K线量价数据,算子则针对因子特性进行个性化设计及筛选。无论是基本面还是高频因子挖掘,所有步骤均由智能体自动执行,因子工厂将依据参数设定源源不断产出因子,同时将因子的表达式、含义、计算代码、回测结果以及优化建议保存至本地。
基本面因子挖掘
字段
基本面因子版GPT因子工厂主要依赖于Wind数据源中的AShareCashFlow、AShareBalanceSheet和AShareIncome三张表,具体底层字段如下:
算子
基本面因子版GPT因子工厂主要依赖于以下算子:
高频因子挖掘
字段
高频因子版GPT因子工厂依赖于以下底层字段:
算子
高频因子版GPT因子工厂依赖于以下算子:
选股组合构建
为检验GPT因子工厂产出因子的实用性,我们基于前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)挖掘的量价因子与本期报告挖掘的高频因子构建指数增强选股组合。通过将因子输入LightGBM模型中进行训练,利用训练完成的模型预测股票未来收益,最后基于股票预测收益构建选股组合。模型训练与选股组合构建的参数如下表所示。
04 结果
在GPT因子工厂2.0的测试中,我们共产出30个基本面因子和30个高频因子。对于FactorGPT而言,我们使用的模型为gpt-4-1106-preview,与前期报告GPT因子工厂中的一致,而其他智能体均改为gpt-4o,这意味着对于产出的因子而言,其样本外区间为2023年11月6日之后,保留较长的样本外区间能够提供因子及策略效果的观察窗口,确保结论的可靠性。此次测试中我们仅对因子进行初次挖掘,未进行因子优化循环,一方面尽可能反映大模型直接产出因子的能力,另一方面为避免可能的未来信息。
基本面因子挖掘实例
以下展示基本面因子版GPT因子工厂2.0的产出实例。图表13-15展示GPT因子工厂2.0挖掘出的一个基本面因子实例:从因子释义看,该因子被GPT命名为“短期偿债能力因子”,因子同时考虑企业货币资金同比增长排名和短期负债排名,并将二者相除,试图反映企业流动性管理水平,因子释义与因子表达式相符;从累计周度IC和RankIC看,因子表现尚可,正向趋势较为明显;从分层回测结果上看,分层1年化收益率、夏普比率和年化超额收益率优于其他分层,因子总体分层效果在可接受范围内。
基本面因子挖掘效果
我们对30个基本面因子进行总体效果评估。图表16与17展示所有基本面因子的累计周度IC和累计RankIC,总体而言,大部分基本面因子的周度IC或RankIC累计趋势较为明确,少数因子累计值趋近于0或存在较大波动,局部看,不乏累计周度IC和RankIC持续单调且波动较小的优质基本面因子。
从相关性上看,GPT因子工厂2.0产出的基本面因子相关性普遍偏低。因子相关系数最大值为0.91,最小值为-0.94,相关系数为正的系数均值为0.10,相关系数为负的系数均值为-0.09,所有相关系数绝对值的均值为0.10。
高频因子挖掘实例
对于高频因子挖掘,我们同样展示一个GPT因子工厂2.0的产出实例。图表19-21是一个高频因子实例:从因子释义看,该因子被GPT命名为“高频价格量相关波动因子”,通过计算收盘价滚动波动性与成交量滚动波动性间的相关系数得到因子值,大模型认为价格与成交量之间的短期相关性反映了市场的情绪变动;从累计周度IC和RankIC看,因子方向为负向,周度IC与RankIC均较为稳定;从分层回测结果上看,分层5各项指标均优于其他分层,因子总体分层效果较优。
高频因子挖掘效果
总体效果上,GPT因子工厂在高频因子挖掘上展现出较大的潜力。从累计周度IC和RankIC的结果中看,因子的累计周度IC与RankIC趋势均较为明确,部分因子展现出持续强劲的IC和RankIC累计趋势,表明因子效果较为稳定。值得强调的是,部分因子的累计曲线中间部分为直线且后续存在缺失值,原因可能在于因子计算过程中出现极端值导致长期空值。
从因子相关性上看,GPT因子工厂2.0产出的高频因子相关性同样普遍偏低。将周度IC与RankIC累计曲线异常的因子剔除,我们保留剩下的23个因子进行相关性检验:因子相关系数最大值为0.97,最小值为-0.86,相关系数为正的系数均值为0.20,相关系数为负的系数均值为-0.13,所有相关系数绝对值的均值为0.17。
基于GPT因子工厂的指数增强策略实践
作为因子挖掘的一种手段,GPT因子工厂并不直接输出投资组合或量化策略。为验证GPT因子工厂因子产出的实际效果,我们将因子输入机器学习模型,基于模型预测结果构建指数增强策略。由于基本面因子频率较低,较难与量价因子和高频因子混合,这里我们仅对量价因子和高频因子进行测试。
基于合成量价因子的指数增强策略
对于前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)中产出的量价因子,我们选取首次挖掘的50个因子,不进行额外筛选,直接输入LGBM模型中进行训练,具体训练参数请参考图表12。
经LGBM模型合成后的因子TOP层相对净值及累计双周度IC和RankIC如图表25和26,因子TOP层在样本外并未衰减,双周度IC与RankIC保持稳定。
基于LGBM合成量价因子构建的增强组合策略净值与绩效如下:
基于LGBM合成量价因子构建的中证500指数增强组合策略净值与绩效如下:
基于LGBM合成量价因子构建的增强组合策略净值与绩效如下:
基于合成高频因子的指数增强策略
对于GPT因子工厂2.0产出的高频因子,我们选取前文中保留的23个因子,同样不再进行额外筛选,直接输入LGBM模型中进行训练,具体训练参数请参考图表12。经LGBM模型合成后的因子TOP层相对净值及累计双周度IC和RankIC如图表33和34。
基于LGBM合成高频因子构建的沪深300指数增强组合策略净值与绩效如下:
基于LGBM合成高频因子构建的中证500指数增强组合策略净值与绩效如下:
基于LGBM合成高频因子构建的中证1000指数增强组合策略净值与绩效如下:
基于量价高频合并因子的指数增强策略
我们将经过LGBM合成后的量价因子与高频因子按1:4的权重合并,形成量价高频合并因子,基于该因子构建分别构建沪深300、中证500与中证1000指数增强策略。基于量价高频合并因子构建的沪深300指数增强组合策略净值与绩效如下:
基于量价高频合并因子构建的中证500指数增强组合策略表现如下:
基于量价高频合并因子构建的中证1000指数增强组合策略表现如下:
总结而言,量价高频合并因子的效果主要来源于高频合成因子,量价合成因子一定程度上成为拖累。基于量价高频合并因子构建的沪深300增强策略年化超额收益率为12.38%,略逊于合成高频因子的13.78%。基于量价高频合并因子的中证500增强策略历史表现优异,年化超额收益率,但近一年来效果平平。而中证1000增强策略历史区间超额收益稳定,在2024年年内测试区间也获得了11%左右的年化超额收益,总体效果较好。
此外,我们测试了华泰金工前期报告《基于全频段量价特征的选股模型》(20231208)中全频段因子与本文因子间的相关性,结果如下表。全频段因子与本文产出的量价合成因子、高频合成因子与量价高频合并因子总体相关性较低,分别为0.38、0.26与0.31;量价合成因子与高频合成因子相关性略高,为0.57。
05 总结
本文是GPT因子工厂扩展至基本面与高频因子挖掘场景的深入实践。在GPT因子工厂2.0中,架构上基本沿用之前的多智能体架构,即FactorGPT生成因子表达式和因子释义,CodeGPT生成因子计算代码,EvalGPT负责评估因子结果以及生成优化建议。在因子效果方面,30个基本面因子IC均值为0.011,RankIC均值为0.013,|t|均值为1.542;23个筛选后的高频因子IC均值为0.020,RankIC均值为0.031,|t|均值为4.588。因子相关性方面,基本面因子相关系数绝对值均值为0.10,高频因子相关系数绝对值均值为0.17,因子工厂产出的因子相关性普遍偏低。基本面因子效果总体尚可,高频因子表现出色。
因子挖掘一直是量化研究皇冠上的明珠之一,基于大模型的因子挖掘在未来或将成为极具潜力的新兴方案。传统因子挖掘无论是基于人工还是自动化算法,皆存在得此失彼的现状,大模型一方面能够降低人工挖掘因子的高人力成本,另一方面能够有效弥补自动化算法缺乏可解释性与灵活性的缺陷。华泰金工前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)是对大模型挖掘因子可行性的有力证明,而本文不仅进一步将这种可行性扩展至基本面与高频因子挖掘,同时利用GPT产出因子构建出较出色的中证1000指数增强策略,有效彰显了GPT因子工厂的实用价值。
本文的主要结果及结论如下:
1. GPT因子工厂可扩展至基本面与高频因子挖掘场景,因子产出质量较好。因子工厂产出的30个基本面因子IC均值为0.011,RankIC均值为0.013,因子工厂产出的23个高频因子IC均值为0.020,RankIC均值为0.031。
2. GPT产出的因子相关性偏低继续在基本面与高频因子挖掘中得到体现。基本面因子相关系数绝对值均值为0.10,高频因子相关系数绝对值均值为0.17。
3. GPT因子工厂产出的因子可构建较出色的中证1000指增策略。仅基于前期报告《GPT因子工厂:多智能体与因子挖掘》(20240220)产出的量价因子可构建出年化超额收益率达18.50%的中证1000指增策略,基于本文产出的高频因子可构建出年化超额收益率达31.32%的中证1000指增策略,二者加权合成后中证1000指增策略年化超额为30.72%。
本文仍有多项未尽之处:(1)本研究挖掘的高频因子仅限于分钟K线,尚未尝试更高频量价数据的因子挖掘;(2)本研究仅涉及较低频的财报基本面因子挖掘,未来可尝试将量价与基本面指标融合、以及使用例如一致预期数据,构建更为高频的基本面因子;(3)本文并未将基本面因子融入指增策略构建中,未来可尝试向策略中融入多维信息,以提升指增策略稳定性。
参考文献
Wang, S., Yuan, H., Zhou, L., Ni, L. M., Shum, H. Y., & Guo, J.(2023). Alpha-gpt: Human-ai interactive alpha mining for quantitativeinvestment.arXiv preprint arXiv:2308.00016.
Yuan, H., Wang, S., & Guo, J. (2024). Alpha-GPT 2.0:Human-in-the-Loop AI for Quantitative Investment.arXiv preprintarXiv:2402.09746.
Zhang, W., Zhao, L., Xia, H., Sun, S., Sun, J., Qin, M., ... & An,B. (2024). FinAgent: A Multimodal Foundation Agent for Financial Trading:Tool-Augmented, Diversified, and Generalist.arXiv preprintarXiv:2402.18485.
Zhao, H., Liu, Z., Wu, Z., Li, Y., Yang, T., Shu, P., ... & Liu, T.(2024). Revolutionizing finance with llms: An overview of applications andinsights.arXiv preprint arXiv:2401.11641.
风险提示:
GPT挖掘因子是对历史的总结,具有失效风险。GPT挖掘因子可解释性受限,使用需谨慎。大模型训练集广泛,可能存在过拟合风险。
(转自:金融工程)