首页 > 其他分享 >面向金融市场的人工智能-多模型方法-全-

面向金融市场的人工智能-多模型方法-全-

时间:2024-05-14 12:42:16浏览次数:25  
标签:01 预测 组合 人工智能 模型 面向 金融市场 我们 变量

面向金融市场的人工智能:多模型方法(全)

原文:zh.annas-archive.org/md5/0aabc8078dabbde7af4df5aa9d55c374

译者:飞龙

协议:CC BY-NC-SA 4.0

前言

本书介绍了一种利用非线性性进行金融投资的可行方法。它总结了 Raphael Douady 和合作者们近二十年来进行的研究。这项研究由 Thomas Barrau 进行了多方面的合作。

通常,变量之间的关系是非线性和嘈杂的。当试图将目标变量与几个解释变量联系起来时,通过精细建模多维线性往往会遭受维度诅咒而不带来明显的好处。Polymodels 通过保留一维非线性并根据手头的任务提出各种聚合方法来简化此方法。例如,在预测的情况下,每个一维模型都会产生一个预测。然后选择最相关的预测结果,可能在存在歧义的情况下平均,以得出最终的预测结果。在定义风险指标的情况下,由于衰退通常与相关性增加相关,因此会分析拟合度指标的分布。它可以被看作是一种集成学习形式。

第一个任务是进行一维非线性回归。介绍了几种方法,包括非参数核回归,但首选方法是对解释变量的非线性函数(由于其正交性质,使用厄米多项式)进行线性回归,进一步通过收缩到线性分量来减轻过拟合。

初始因子的非线性转换可以用作新的变量或特征,以供机器学习算法使用。提取的非线性的另一个用途是将其凸性转换为抗脆弱性得分(以 N.N. Taleb 的观点)。这些分数随后可以用作构建多空投资组合的因子。Polymodel 方法可以在市场、行业或个别股票的级别实施。借助贝叶斯调节,它可以结合数百个因素的信息。

总之,polymodels 为投资、预测和风险管理提供了一种非常可行的方法。Barrau 和 Douady 在这本书中描述了该方法及其应用,书中充满了示例和回测,必将激励无数的金融从业者。

布鲁诺·杜皮雷序言

像许多创新性的想法一样,polymodels是在一个非常紧张的局势下出现的。我们刚开始 Riskdata 公司风险软件,针对买方的,纽约的双子塔被击中了。这个事件改变了世界的面貌,并严重地使我们初创的项目岌岌可危。至少一年内没有机会签订任何合同。当我们正准备放弃这个项目并找到一份有工资的工作时,一个对冲基金经理向我们提出了以下挑战:根据基金的经审计月度回报,我们能够可靠地说出他们的策略、风险以及它们如何适合包含流动资产和另类资产的投资组合吗?

这个挑战远远超出了对经典绩效指标的简单评估,比如夏普比率、下行波动率、贝塔、法玛-法国因子分析等。这些行业广泛使用的指标被认为提供了过去的相关信息,但对于未来的行为却没有真正可靠的信息。我们发现,即使是一款功能复杂的软件,如果忽略了投资者和经理之间讨论的关键点,它也会忽略掉房间里的大象。因此,我们要求这位经理让我们在他与要么已经投资或者计划投资的经理们的一些会议上悄悄地参加。令我们惊讶的是,投资者只会花几分钟时间谈论相关性和波动性,然后其余的一个小时都在谈论对于特定策略而言相关的特定时刻:经理是如何经历这样或那样的事件的?;他是什么时候以及如何调整他的立场?;以及其他类似的问题。我们的挑战是将这些问题放入一个足够系统化的软件中,以自动解决它们。这个想法不是严格复制这些问题,因为答案不会明确地在基金回报中,而是创建一个统计框架,机械地提供最佳答案,考虑到回报信息。

解决方案必须结合基金所处的金融环境。单独的回报并不具有很高的信息量。只有与其他市场相关时,它才变得如此。首先要解决的问题是:哪些市场因素与基金有统计学关系,以及如何?请注意,如果我们不想错过主要风险,这里可能的因素范围可以非常广泛。仅对几个因素进行多元回归肯定无法解决问题。第二个观察结果是,异常大的事件承载了大部分信息。从小事件的相关性推断受限,容易受到阈值效应的意外影响。

然后,挑战的另一个方面出现了:我们如何使这种具体分析在各种基金之间可比较,以便全面了解投资组合的风险?投资组合可能包含数百种投资线。其风险可能是由于某个具有过大权重的特定投资的暴涨,或者更严重的是,由于投资组合的大部分资金意外损失,我们可以称之为消失的多元化,在某种特定事件中。

解决方案是对投资组合中所有基金进行彻底的因子分析,具有两个重要特征:

    每个风险因素都应该针对投资组合中的所有基金进行测试。

    应该强调大事件,以预测可预测的相关性突破。

多模型方法自然而然地成为这个问题的唯一可能解决方案。传统的多因素分析首先寻求每个基金的一组相关因素,然后评估每个因素及其“影响系数”(因子载荷)的重要性。相关性破裂和制度变化通常是分开处理的,而且往往是以非常基本的方式,很少以系统性方式处理。相反,多模型方法首先考虑每个单一因素对投资组合所有组成部分的影响,通过非线性模型考虑系统性相关性破裂,然后,只有在这样做之后,才汇总单一因素信息以回答诸如全局投资组合风险或投资组合中特定行的贡献等问题。

这种分析可以被视为一个巨大的自动压力测试生成器。与其将每个基金和整个投资组合都描述为由风险因素组合而成的代理,不如通过其对所有这些压力测试的响应列表来表示每个资产、每个基金和投资组合本身,每个测试都由因子变化来标识。例如,消失的分散风险效应特别容易预见,因为我们知道,在利率突然上涨的情况下,所有资产类别都会受到影响:股票、信用利差等。

我们知道,没有统计方法能摆脱其基于过去的事实,而未来对我们来说充满了意外。但是多模型留给意外的余地明显比传统的线性多因素分析留下的余地要小得多。

在成功将多模型方法应用于对冲基金投资组合之后,2007 年次级房贷危机和 2008 年全球金融危机等重大危机显然表明,这种非线性方法不仅适用于对冲基金领域,而且适用于整个投资领域:流动性投资(股票、固定收益、衍生品等)、私募股权、房地产等。我们还发现,除了简单的风险/回报分析之外,多模型的丰富性还使我们能够回答更广泛的问题,如经理在流动性危机中的预期行为、策略和风格漂移、宏观经济条件对金融市场的影响、危机预测等。本书包含了解决其中几个问题的方法。

制度变化和相关性破裂经常发生在重大事件发生时。在我们看来,一个健全的数学模型必须包括任何观察到的系统性现象。简言之,数学应该符合现实,而不是相反。在这方面,像任何其他人工智能方法一样,多模型首先寻求为经验问题带来有效解决方案。

现在这本书的组织结构自然而然地来源于这个目标,因为它围绕着解决实证问题的想法而构建。由于金融的最通用问题是对金融市场的预测,这是我们选择解决的问题。

因此,我们提出了一个投资于股市的投资组合收益的简单模型,将其分解为市场、行业和特定收益。我们使用各种技术对这三个不同的组成部分进行预测,所有这些技术都基于多模型的非线性建模。实证应用还包括对多模型理论的理论介绍,并提出了解决其引发的各种挑战的实用解决方案。最后,我们通过遗传算法对预测进行聚合,并通过交易策略的模拟来评估组合的预测能力。在交易成本之后,获得的投资组合达到了市场的两倍以上的夏普比率。

尽管本书的主要目标是支持博士论文,但在撰写过程中,很明显它的兴趣远远超出了这个目的。本书旨在提供应用,并同时以多模型的自包含理论呈现为基础,这使得它成为了一个通过人工智能探索金融市场的成套手册。对于从业者来说,这是一本合适的手册,因为它提出了解决现实问题的新颖而具体的解决方案。因此,本书将对寻找新的预测算法的机器学习者,寻找原始策略的量化交易员,试图避免回撤的风险经理,以及处理多种交易策略组合问题的投资组合经理感兴趣。

我们要感谢几位对本书做出贡献的人。

  • Charles-Albert Lehalle 和 Yuri Kabanov 对整本书进行了出色的评论,从而在各种统计和机器学习方面进行了改进。

  • Augustin Landier 在因子投资相关问题上提供了精辟的观点,更广泛地涉及了金融经济学。

  • Jean-Philippe Bouchaud,Jean-Paul Laurent 和 Alexander Lipton 在其首次公开展示期间对手稿提出了一些巧妙的改进意见。

  • 纳西姆·塔勒布,纽约州立大学石溪分校的量化金融团队(特别是罗伯特·弗雷和安德鲁·穆尔豪普特),Riskdata 研究团队,Igmar Adlerberg,Bertrand Cabrit,Iliya Zovko,Cyril Coste,相信我们的对冲基金经理,Bernad Lozé,Jeffrey Tarrant,以及 Adil Abdulali,Bruno Dupire,Marco Avellaneda,Emmanuel Derman,Dominique Guégan,Shivaji Rao,所有实际风险研究所成员,以及 Hector Chan,Gavin Chan,Olivier Parent-Colombel,AXA IM Chorus 的 Pierre-Emmanuel Juillard 分享了富有成效的讨论和见解。

  • Aurelien Vallée 和 Omar Masmoudi 在开发书中各种应用所需的代码以及处理大型机群进行计算方面提供了极大的帮助。

  • 最后,我们感谢索邦经济学中心(CES)的物质支持,并感谢我们与该中心成员进行的讨论。

第一章:介绍

Thomas Barrau^(1  ) 和 Raphael Douady² (1) AXA Investment Managers Chorus Ltd,中国香港,香港特别行政区。(2) 经济中心,巴黎索邦大学,法国巴黎。

摘要

随着多模型被引入作为一种人工智能技术来预测金融市场,我们开始本书,提出一个简单的框架来产生这些预测。我们从简明的文献回顾股票回报的预测开始。然后介绍一个简单的模型,并解释如何对模型的贡献实际上与对文献的贡献相一致。最后,我们制定了本书的计划,回答了有关金融市场预测文献的每个不同点。

关键词:多模型理论、预测框架、建模、股票市场、金融市场。

1.1 金融市场预测:简明文献回顾

首次提出对金融市场进行预测的可能性是由巴舍利埃 (1900) 提出的,他使用随机漫步模型来描述商品和股票价格的变化。按照随机漫步对金融市场进行建模意味着有效市场假说的有效性(参见 Samuelson,1965),该假说认为资产价格反映了所有可用信息,导致无法预测价格变化(Fama,1965)。这些在当时无可争议的开创性工作现在部分地被来自不同领域(如经济学、应用数学和心理经济物理学)的大量文献所无效化,这些文献从各种不同角度探讨了金融市场的预测问题。

尽管追求“战胜市场”的目标可能有几种方法,但或许最明显的方法之一是简单地预测给定股票指数的回报。

经济学家们提出使用各种宏观经济变量作为市场回报的预测因子。尽管他们的研究可能存在某种形式的过拟合,但 Rapach 等人 (2010) 表明,这些变量的预测组合可以持续预测市场。此外,他们的结果基于样本外数据,因此指向了股票溢价的宏观经济根基的结构稳定性。在随后的研究中 (Neely 等,2014),这种宏观经济方法通过使用基于趋势、动量和成交量的技术指标来完善。

其他人则专注于分析极端市场事件:崩盘的预测。遵循受物理启发的方法,¹ 索内特(Sornette)开发了一种基于在价格中识别幂律趋势的模型,这不可避免地导致了一个不可持续的泡沫,从而导致了崩盘(Johansen 等人,2000;Sornette,2009)。市场崩盘也曾被使用各种基于相关性的方法预测过(例如见 Patro 等人,2013;Zheng 等人,2012;Douady&Kornprobst,2018;Harmon 等人,2011)。²

所有这些预测方法,无论它们是集中在预测普通还是极端事件,即使它们使用非常不同的方法,都有一个共同的目标:提供关于未来市场回报的可靠预测。

然而,即使在样本内,市场回报也提供不了每只股票回报方差的充分描述。已经证明行业成分也很重要(King,1966),而股票回报的特定成分,即不依赖于市场或行业的部分,更加重要(Roll,1988)。

就像市场回报一样,行业回报也被证明是可预测的,例如利用动量异常,该异常表明过去的高(低)行业回报会在未来跟随着高(低)的行业回报(O’Neal,2000)。由于存在多个行业,也可以通过利用行业特征以横截面方式预测行业回报(Asness 等人,2000)。在这篇论文中,Asness 还证明了可以进行特定回报的横截面预测,然而,大多数专注于股票回报横截面的论文并没有控制行业曝光。

这个文献中最重要的里程碑可能是法玛和弗伦奇(Fama and French)的开创性论文(1993),该论文介绍了一个解释股票回报横截面的三因子线性模型。同样的两位作者在 2015 年完成了这个模型(Fama & French,2015),引入了一个五因子模型,考虑了公司的 beta(对市场回报的敏感性)、公司规模(市值)、价值因子(账面市值比)、(运营)盈利能力以及其投资模式(公司的积极与保守的投资行为)。尽管这不包含在模型中,动量异常也是股票回报横截面的一个重要解释因素(见 Carhart,1997;Jegadeesh&Titman,1993)。

描述股票回报横截面的这种线性多因子模型的方法已经被扩展到文献中现在认可的几十甚至上百个因子(见例如格林等人(2014)和侯等人(2017)对不同因子可靠性的评估)。它也塑造了资产管理行业,即所谓的“风险溢价”³ 基金往往作为新的资产类别出现,以被动方式投资于这些因子(本德等人,2014)。曾被称为“alpha”的东西,按照詹森(1968)的意义,现在被简单地视为风险因子,使得这些策略可与“beta”投资进行比较,即在市场上进行被动投资。随着预测(“定时”)市场的方法的出现,最后产生了一本关于定时风险因子回报的文献(见本德等人,2018; 阿斯尼斯等人,2017)。

1.2 投资组合回报的简单模型

最终,尽管它们依赖于非常不同的方法,上述作品都旨在对未来的股票回报产生预期。然而,在撰写本文时,据我们所知,文献中并不存在将所有这些类型的预测结合起来的单一框架。我们在下面提出了这样一个简单的、描述性的模型。请注意,该模型的目标是效率。它不旨在提出股票回报的经济解释。

我们首先回到罗尔(1988)提出的股票回报的三个主要组成部分的区分。

这种区分可以通过以下公式正式化:$$ {r}_a={\omega}_a\left({r}_M,{r}_I,{r}_S\right). $$(1.1)在这里,r[a] 是给定股票“a”的股票回报,而 r[M]、r[I]和 r[S] 分别是市场回报、行业回报和该股票的特定回报。请注意,在这个阶段避免了函数ωa 的定义,以便通用性。

从文献中可以明显看出,行业和特定回报可以分别通过行业和公司特征(规模、价值、质量等)的横截面来解释。根据法玛和弗伦奇(1993、2015),对于每个特征,我们可以形成一个投资组合,使得股票回报可以表示为因子投资组合回报的函数。

例如,我们可以创建一个投资于动量异常的投资组合。如果构建为多空头,这个投资组合将做多过去的赢家,做空过去的输家,并在一定程度上可能中和市场收益的暴露。此后,我们将这个动量因子投资组合的收益称为“r[mom]”。注意,该投资组合可以使用相同的股票构建,以便仅投资于行业或特定收益的横截面。事实上,我们可以通过适当的多空头构建来中和一个投资组合的行业暴露或其特定暴露(参见 Asness 等人,2014 年的一个这样的投资组合构建示例)。因此,我们采用名称“r[mom,I]”来表示通过行业横截面投资于动量异常的投资组合的收益,同时在特定级别中是中和的。类似地,“r[mom,S]”指的是通过特定收益横截面投资于动量异常的投资组合的收益,同时在行业级别中是中和的。

在文献中发现了许多异常,无论是在行业层面还是具体层面上都有。我们将所涉及的行业和具体因素(已知和未知)定义为所有相关因素的集合,如下所示:$$ {\mathcal{F}}_I=\left{{r}_{mom,I},{r}_{size,I},{r}_{value,I},{r}_{quality,I},\dots \right}, $$$$ {\mathcal{F}}_S=\left{{r}_{mom,S},{r}_{size,S},{r}_{value,S},{r}_{quality,S},\dots \right}. $$(1.2)假设这些因素能够完全描述行业和公司特征,我们可以将$$ {r}_I={\eta}_I\left({\mathcal{F}}_I\right) $$(1.3)和$$ {r}_S={\eta}_S\left({\mathcal{F}}_S\right), $$(1.4)其中$$ {\mathcal{F}}_{\mathrm{I}} $$$$ {\mathcal{F}}_{\mathrm{S}} $$ 使用它们关联的函数 η[I] 和 η[S] 组合以形成行业和特定回报。 将这些代入方程 (1.1) 得到$$ {r}_a={\omega}_a\left({r}_M,{\eta}_I\left({\mathcal{F}}_I\right),{\eta}_S\left({\mathcal{F}}_S\right)\right). $$(1.5)注意,如果我们将每个股票回报表示为几个因素组合的回报,我们还可以将投资组合“P”,由总数为 b 的股票组成,表示为因素组合。 因此,这样一个投资组合的回报将是:$$ {r}_P=\sum \limits_{a=1}^b{\omega}_a\left({r}_M,{\eta}_I\left({\mathcal{F}}_I\right),{\eta}_S\left({\mathcal{F}}_S\right)\right)\times {w}_a, $$(1.6)其中 w[a] 是投资组合中股票“a”的权重。 个体组合函数 ω[a] 的加权和仅仅是一个面纱,掩盖了我们最终投资于因素组合的事实,我们可以将投资组合的回报重写为:$$ {r}_P={\varOmega}_P\left({r}_M,{\mathcal{F}}_I,{\mathcal{F}}_S\right), $$(1.7)其中 Ω[P] 是用于构建投资组合 P 的子投资组合的组合函数。 Ω[P] 的适当定义将在一定程度上反映出通过组合函数 ω[a]、η[I] 和 η[S] 捕获的因素之间的加权(可能是非线性的)。

然而,遵循平均股票分解将导致一个静态暴露于不同因素的回报的投资组合。最大化 r[p] 需要根据某种标准动态调整曝光,以便从时机调整因子表现中获益。例如,如果我们从市场定时策略中得到市场即将进入熊市期的信息,我们应该做空市场投资组合。因此,适当定义的组合函数将能够确定因子投资组合的适当比例以及时间其表现。

我们在下文提出了一个基本示例,展示了一个投资于众所周知因子的投资组合的回报,遵循了 omega 的简单线性规范:

  • 识别未知因素,称为“阿尔法”,解释行业或特定回报。

  • 通过因子或市场定时来确定子投资组合的表现。

  • 正确组合不同的子投资组合,即在 omega 中正确定义权重。

本书通过使用多模型对这三个来源做出贡献,从而为金融市场预测文献增添了一笔。

书籍计划

我们提出了新的方法来预测金融市场。如前所述,这些方法主要基于多模型理论,这是一种被归类为人工智能方法的非线性分析框架。本书由八章组成:引言;两章介绍技术;四章应用这些技术进行应用;以及结论。

由于它们最近才出现在文献中,多模型在本书的第二章中有所描述。虽然保持相当一般性,我们解释了这种方法的总体利益,该方法允许减少过度拟合并同时增加精度,与标准多变量替代方案相比。

第三章致力于我们用于多模型的估计方法,称为“线性非线性混合”(LNLM),该方法使用交叉验证来正则化模型的非线性部分。我们在这一章中通过大量的模拟考虑了 LNLM 模型的理论性能。

第四章描述了将 Polymodel 理论应用于市场定时的一个应用。我们在这一章中看到,多模型允许以一种非平凡的方式捕捉市场与其经济环境之间的相关结构,从而导致对市场回报方向的预测信号。

第五章考虑了行业回报的预测。虽然我们没有直接使用多模型,但我们仍然依赖于 LNLM 进行非线性建模,揭示出非线性在行业横截面中是被定价的,以一种反脆弱因子的形式。该因子被证明是可投资的 alpha。

第六章讨论了特定回报的预测。我们提出使用多模型直接预测特定回报,并提供了在聚合多个多模型预测时考虑预测变量相关性的技术。我们获得的预测被证实为一个重要的信号。

在第七章中,我们将预测市场、行业和特定回报的信号组合成一个单一的投资组合。这种组合是使用另一种人工智能方法进行的,即遗传算法,使我们能够最大化最终投资组合的回报,扣除交易成本。

总结章节总结了结果。

第二章:多模型理论:概述

Thomas Barrau^(1  ) 和 Raphael Douady²(1)AXA 投资经理 Chorus Ltd,香港,中国香港特别行政区(2)巴黎索邦大学经济中心,法国巴黎

摘要

我们提出了多模型理论,将多模型定义为一组非线性单变量模型。我们提出了数学公式和认识基础。我们解释了多模型在几个方面是传统 OLS、岭回归和逐步回归等估计的多元回归的一个优越替代;我们还介绍了这种方法的局限性。尽管它是一种回归技术,但我们阐明了多模型框架如何比传统统计学更接近人工智能。

关键词多模型理论人工智能机器学习单变量回归多元回归非线性建模高维建模过拟合

2.1 引言

多模型,理解为一组非线性单变量模型,是由 Coste 等人(2010) 在金融领域引入的。在他们的论文中,多模型被用作预测对冲基金绩效的整体程序的一部分。因此,尽管概念相当通用,但论文以简洁方式呈现,因为其目的是专注于其应用结果。因此,当前章节的目的是更深入地讨论多模型理论,以便了解这种技术的利弊,以及其提供的框架的可能性。

一组单变量模型的使用必须被理解为对多元回归模型的一种替代。因此,从这个角度来看,多模型的利益在当前章节中得到了广泛解释。然而,我们通过多模型来处理建模的方式在某种程度上与统计学的标准视角有所不同,因为它更接近人工智能。为了让读者理解我们提出的观点,我们需要回到建模目的的问题。

对于阿里斯(1994),“一个方程组Σ被称为是典型系统 S 的模型,如果它被构建来表达 S 的定律,并且其解决方案意图代表 S 行为的某个方面”。这个相当静态的定义被戴维斯等人(2011)补充,他们提出了模型被构建的目的列表,其中包括“影响进一步的实验或观察”。这个最后的目标是理解我们立场的关键。由于它被设计来解决金融领域遇到的问题,Polymodel 理论属于应用数学领域,因为我们的重点是“找到应用于自身利益之外的数学”(参见戴维斯等人(2011)再次说明这个定义)。Polymodels 不仅是一个观察和表示(金融系统的某些子部分)的工具,还旨在作为其中的从业人员、交易员和风险管理人员,从而改变系统。基本上,我们对建模的方法是通过追求在现实世界中行动时产生有效结果来导向的。

有了这个目标,我们在下面提出了建模过程的简化、漫画版本。这个表示不打算描述每个研究者遵循的过程,也不是要勾勒出一个方法标准;它只是为了支持我们对建模方法的介绍。我们从拥有一个(或多个)感兴趣的变量的问题开始,这些变量是(部分)随机的,并且我们希望在一个由随机变量组成的环境中进行一些预测。让我们称我们感兴趣的变量为Y,组成环境的变量集合为X。然后我们可以遵循这个程式化的过程:

  • 步骤 A:研究者制定感兴趣变量的模型命题,作为其环境条件期望。此步骤的目的是对YX之间的联系建模:

$$ E\left[Y|X\right]=f(X). $$(2.1)

  • 这一步骤可能非常复杂,可能涉及对YX的定义讨论,以及一些复杂版本的f()的开发。例如,如果Y是一个随机过程,它可能包括一些动态表示:

$$ E\left[{Y}_t\ |\ {\left{{X}_s\right}}_{s\in \left[t-\tau :t\right]}\right]=f\left({X}_t,{X}_{t-1},{X}_{t-2},\dots \right). $$(2.2)这里的“t”是当前时间索引,“τ”是 X 的最远重要时间滞后,“s”是定义在 t−τ和 t 之间的第二个时间索引。

  • 第二步:研究模型的统计特性。这一步骤可能包括研究感兴趣变量Y的分布以及环境变量X的联合分布,但也可能包括研究模型参数f()的分布,以量化其不确定性、评估其鲁棒性等。

  • 第三步:将模型用于特定目的。这可能是最大化给定效用函数,或者估计风险度量,或者任何能够帮助做出决策的目标。

  • 第四步:选择由步骤 A 到 C 产生的最佳模型。评估它们包含的变量、使用的函数形式以及采用的方法,使用性能和相关性度量,例如p-值。

可以在第三步引入对模型的某种形式的应力测试(例如使用蒙特卡洛模拟),作为模型验证的一部分,或者在第四步作为选择标准。

由于我们建模以行动,我们的重点完全放在步骤 C 中获得的结果上。

个别研究人员通常关注步骤 A 到 C,而 D 可能被视为与文献在给定主题上的演变相关的元问题。在执行多模型分析时,步骤以不同的方式完成。我们首先估计一组单变量模型,这对应于步骤 A 的重复。然后,我们使用有意义地与步骤 C 的目标相关的标准选择最佳模型,这对应于步骤 D。步骤 D 本身是重复的,因为我们将其用于考虑模型集合随时间的动态演变。我们主要以多维形式保留所获得的信息,这使我们能够导出各种指标(例如 StressVaR (Coste 等人(2010))或 Long-term Expectation (Guan,2019))。

我们以不精确、简化和次优的方式重复执行步骤 A,但由于模型的多样性,这种简化被克服,因为模型集合是我们所研究现象的非常丰富的表示。让我们通过一个简单的例子来澄清这一点。我们可以用从金融变量获得的非线性单变量模型集合来模拟标准普尔 500 的回报。通常,我们假设模型的噪声是高斯的,这当然是相当简化的,知道金融市场的尾部更厚(参见例如 Platen 和 Rendek (2008))。然而,例如,对油的非线性建模可能能够在某种程度上捕捉标准普尔 500 的尾部事件。而且对于因子集中的大量独立变量,非线性建模很可能在某个时候捕捉到尾部事件(例如,参见 Ye & Douady,(2019),以获取使用多模型进行市场回撤预测的示例)。

仍然需要问关于方法鲁棒性的问题,但方式与上述的程式化研究过程有所不同。由于我们完全专注于实现关于步骤 C 的结果,通常在步骤 B 中完成的部分工作可能变得无关紧要。例如,我们可以观察到,从步骤 B 到 C 的过渡没有特定的原因,它甚至在大多数情况下可能是高度非线性的。按照这种推理,追求无偏估计变得无关紧要,因为它们不能有效地用于实现步骤 C 的最终目标。因此,通过敏感性分析或特定测试来评估多模型方法得到的结果的鲁棒性经常是通过统计显著性(见本书第 4、5 和 6 章)的测量来进行的。因此,我们不讨论步骤 B 所解决的问题,尽管它们本身很有趣,但在考虑到将步骤 C 作为中心关注时,它们是次要的。

注意,除了多模型之外,另一个研究领域直接执行步骤 A 和 D,关于步骤 C 的目标:机器学习(Friedman 等人,(2001)提供了对主要技术的长篇介绍)。从这个角度来看,多模型可以被视为一种机器学习技术。

现在,一旦建立了多模型理论建模方法的面包屑,我们可以发展几个进一步澄清概念的要点。为此,我们将本章组织如下:

  • 作为介绍的最后部分,我们首先回顾了有关多模型主题的文献的当前研究状况。

  • 然后我们正式定义了多模型的概念。

  • 这一定义之后,我们讨论了如何从认识论角度解释这个对象。

  • 然后,我们回顾了在计量经济学术语中使用该技术时所期望的最显著优势。使用一系列单变量模型是使用多变量模型的一种替代方法。因此,我们将这些优势与标准替代方案进行讨论,例如由 OLS 估计的经典线性回归,岭回归或逐步回归。

  • 最后,我们考虑了多模型理论所引发的挑战,并总结了本章。

在实践中使用多模型时引发的一些重要问题是:

  • 我们如何估计单变量模型?

  • 我们如何选择变量?

  • 我们如何合并结果?

当前章节只是提出了 Polymodel 理论的理论概述,因此回答了“什么是 polymodel?”和“为什么使用它?”的问题,但没有回答“如何使用它?”的问题。上述三个简单发展更一般问题“如何使用它?”的实际问题可能会以非常不同的方式来解决,必须根据所处理的经验问题进行调整。因此,介绍我们可以用来回答这些问题的任何技术都会导致当前章节缺乏普遍性。因此,我们将限制我们的解释以呈现 polymodel 的概念。

对于 Polymodel 理论的文献仍然很稀少。目前的形式已经在金融领域有了应用,但是单变量线性模型集合的使用也存在于这个领域之外。

我们首先回顾了关于这个主题的新兴金融文献。除了 Coste 等人 (2010) 的初始论文介绍了这个概念之外,Polymodel 理论已经在金融领域的各种应用中得到了使用:

  • 张 (2019) 基于 polymodel 估计构建了一个聚类算法,并应用于股票市场。总体思想是,如果两只股票对不同因素的反应方式相同,它们在某种程度上是相似的。聚类算法被用来设计一种比基准表现更好的统计套利交易策略。聚类算法在统计套利的背景下表现出色,超越了经典的聚类方法(相关性、定性分类)。

  • 叶和杜亚迪 (2019),以及匡和杜亚迪 (2022) 提出了一些基于 polymodel 的股票指数系统风险指标。这些指标主要关注因子集与股票指数之间联系的统计显著性增加(叶 & 杜亚迪)和基本模型的凹性(匡 & 杜亚迪)。

  • 关 (2019) 使用 polymodel 生成了一些传统风险溢价的变体。他证明了 StressVaR,这是 Coste 等人 (2010) 用于区分风险对冲基金的风险指标,也是股票收益横截面的一个有用预测因子。

Polymodel 理论的文献仍然稀少,这正好说明了我们提出对这种分析框架进行更密集讨论的建议。当数据量过大无法处理时,构建一组单变量模型是一种相当直观的建模方法,这种情况下多元线性回归可能会有一些限制。的确,由于预测变量的协方差矩阵不可逆(因为预测变量多于观测值),或者出现多重共线性问题,这些问题并不局限于金融领域。毫不奇怪,Polymodel 理论的一些迹象和先例已经在几个学科中找到:

  • 在遗传学中,基因组范围关联研究(GWAS)领域大量依赖于 Polymodels 的线性版本。GWAS 面临的问题是要处理数十万个预测变量来预测单个目标变量。此外,独立变量比观测值更多。经典的正则化技术已被用来尝试解决预测变量之间的相关性问题,例如参见 de Vlaming 和 Groenen(2015)的 Ridge 回归,Wu 等人(2009)的 Lasso,或 Liang 和 Kelemen(2008)的文献综述。

  • 在对驾驶员致命风险因素进行分析时,Bose 等人(2013)使用一组单变量模型来对多变量模型得到的系数进行基准测试。

  • 为了分析流行病,Bessell 等人(2010)从一组单变量模型开始他们的研究。他们利用这个多模型的结果来评估预测变量的统计显著性,以选择最相关的变量来构建多变量模型。

  • Ladyzhets(2019)建议分析一组回归模型的概率空间来建模金融时间序列。虽然与 Polymodels 接近,因为它使用替代模型表示目标变量,但该论文仍然使用多元模型,从而失去了前者的一些好处。

这些最后的例子并没有直接涉及到我们在当前章节中提出的 Polymodel 理论,然而,它们表明了在使用多元回归技术时我们遇到的关注点是多个领域共享的,使得 Polymodels 在金融之外的数学应用中可能是有趣的。

2.2 数学公式化

一个 Polymodel 可以被定义为一组模型,它们都同样有效和显著,可以被理解为对同一现实的一系列相关观点的集合。

从数学上讲,可以用方程(2.3)或方程(2.4)等式来等效地形式化:$$ \left{\begin{array}{c}Y={\varphi}_1\left({X}_1\right)\ {}Y={\varphi}_2\left({X}_2\right)\ {}\dots \ {}Y={\varphi}_n\left({X}_n\right)\end{array}\right. $$(2.3)$$ \left{Y={\varphi}_i\left({X}_i\right)\kern1em \forall i\right}. $$(2.4)这里,Y 是目标变量,X[i]是解释变量,而φ[i]分别是第 i 个模型的函数,其中 i ϵ[1: n],n 是模型(和因素)的数量。

我们在这里呈现的n个模型,称为“基本模型”,都是单变量模型。这些模型都在解释变量^(n)的整个超空间上定义。它们彼此不相互作用,并且它们同时都是有效的。

噪声项ε[i]被添加以表示随机误差:¹$$ \left{\begin{array}{c}Y={\varphi}_1\left({X}_1\right)+{\varepsilon}_1\ {}Y={\varphi}_2\left({X}_2\right)+{\varepsilon}_2\ {}\dots \ {}Y={\varphi}_n\left({X}_n\right)+{\varepsilon}_{n.}\end{array}\right. $$(2.5)同样,从方程(2.4)可以得到:$$ \left{Y={\varphi}_i\left({X}_i\right)+{\varepsilon}_i\kern1em \forall i\right}. $$(2.6)

2.3 认识论基础

多模型理论可以从许多不同的角度来考虑。即使我们明确专注于金融数学的应用,强调导致该理论出现的哲学根源也是很重要的。

2.3.1 统计视角主义

视角主义的概念最初由前苏格拉底哲学家普罗泰戈拉斯(约公元前 481 年至公元前 420 年)发展而来,我们通过柏拉图(Lamb,1967;Taylor & Lee,2016)的对话了解到他的思想。视角主义是理解多模型理论的关键,它声称我们无法获得单一和绝对的真理。我们认为真实的东西往往只是从特定视角来看才是真实的,而这种对现实的感知本身取决于它出现的视角。这是一个谦逊地理解我们是有偏见的,对世界的了解和接触是有限的邀请。

人们可以很容易地从帕斯卡在他的《圆锥曲线论文》(Clarke & Smith,1928)中的反思中理解需要在同一问题上使用几个不同视角的必要性:“通过圆锥截面这个术语,我们指的是圆周、椭圆、双曲线、抛物线和直线角”。对于同一对象的所有这些视角都是真实且互补的,因为没有一个能够完全描述圆锥的本质。

因此,在流经视角主义的哲学学说中,现实是我们对其所有视角的聚合。

同样,多模型理论的目的是将同一变量的几个描述组合在一起,以尽可能全面地理解其本质。它提供了对现实的非常丰富的描述,这种描述不仅仅是其部分的总和,还允许我们非常准确地理解所考虑变量的一些特定方面。因此,多模型理论是哲学视角主义的数学等价物。

2.3.2 现象学方法

构成多模型的不同基本模型是其感兴趣变量的替代描述。但是这些描述是以一种特定的方式进行的:它们描述了依赖变量对每个自变量的反应

现象学可以如下描述(Smith,2018):“字面上,现象学是对‘现象’的研究:事物的外表,或者事物在我们的经验中呈现的方式,或者我们经验事物的方式,因此事物在我们经验中具有的含义。”

因此,现象学的焦点是我们的经验中组成的各种现象如何与我们互动。Polymodel 理论提出了类似的方法,通过研究各种独立变量(即环境)如何与感兴趣的变量互动来实现。

这样的立场本身就非常有意义,因为它指出对于因变量的底层机制没有兴趣。Polymodel 只是描述了这个变量在各种情况下的行为,这些情况与解释变量的集合一样完整。它并不解释为什么会发生这种行为,尽管它可以帮助我们理解它。因此,Polymodel 理论更接近于物理学家研究现实的方法,而不是经济学家的方法,因为它主要回答的问题是“怎么样?”而不是“为什么?”。

2.4 Polymodels 与多变量模型的比较

2.4.1 减少过度拟合

计量经济模型通常包括两个组成部分,一个确定性部分,通常称为均值方程,和一个随机部分,称为误差项(参见斯托克和沃森(2015)以及塞伯和李(2012)的计量经济学导论,或者亚历克索普洛斯(2010)关于多元回归的简洁论文):$$ Y=f(X)+\varepsilon . $$(2.7)这里 Y 是我们希望解释的随机变量,f(X) 是由一组随机变量 X 和一个函数 f () 组成的均值方程,该函数产生 YX 之间的关联,ε 是误差项,通常服从于 0 的某种概率规律。当随机变量 X 的集合只包含一个变量时,该模型称为“单变量”,而当它包含多个变量时,则称为“多变量”。将确定性部分(f(X))和随机部分(ε)之间的分离是因为我们的世界的自然复杂性,其中通常存在着与发生的现象相关的大量原因,使得每个事件部分不可预测,仅仅因为数学模型目前无法处理如此高的复杂性。这种描述现实的方式暗示了只有一部分目标变量的值可以用预测变量来描述,而其余部分则不能,并且必须保持未解释。假设目标变量与预测变量之间存在有效的联系,则我们的上下文中建模的目标是准确地表示这种关系。这应该通过构建一个表示预测变量与目标变量确定性部分之间关系的均值方程来完成,仅使用包含在预测变量中的关于目标变量的信息。这种关系由一个功能形式来形式化,它是真实关系的一种程式化代理。最简单的功能形式是线性的一个(斯托克和沃森,2015):$$ Y= X\beta +\varepsilon, $$(2.8)其中 β 是线性系数的列向量,X 是一个矩阵,当包含一个常数时包含一个向量,我们假定以后都是这样。以及解释变量的向量。

给定一组特定的数据样本,科学家的任务是选择一个功能形式并估计其参数,以表示这种关系。当然,目标是解释目标变量,良好模型中确定性部分与随机部分的重要性²应尽可能高*。

然而,模型中真正随机的部分,即与预测变量无关的目标变量值部分,总是可以通过预测变量虚假建模。这只是使用足够复杂和适当参数化的预测变量函数的问题。在样本内,这将极大地改善模型的常规拟合度度量,但在这种情况下,我们将对不存在的联系进行建模,因为根据定义,预测变量与目标变量的随机部分之间没有联系。因此,在使用特定数据样本估计模型之后,当使用预测变量的新值(超出原始数据集)来预测相应的目标变量值时,这种不良实践的直接后果就会出现。预测的准确度很低,揭示了初始模型的弱点。

在样本外呈现出高拟合度模型的低预测能力是过拟合的典型定义(Babyak,2004)。

直觉上,我们可以看出,在数据中很容易找到似乎对应于不存在的联系的模式,特别是因为我们通过估计函数形式参数来将这些模式适应于目标变量。

这种描述模型的函数形式,在更复杂的情况下,更容易适应这些虚假模式。这种复杂性取决于参数的数量,并且主要来自两个来源:与每个变量相关的函数形式的复杂性,以及模型中使用的变量数量(Hawkins (2004) 对这些问题进行了深入讨论)。

这就是为什么增加多变量回归中预测变量数量会暴露过拟合风险的原因,以至于像经济计量学家这样的专家会引用约翰·冯·诺伊曼的著名语录而开玩笑:“用四个参数我可以拟合一只大象,用五个我可以让它摇摆鼻子”。当观察数量减少时,这种情况经常发生。事实上,对于给定数量的观察,增加多变量模型中的预测变量数量会减少残差的方差,使模型在拟合度方面变得“更好”,但只是表面上看起来如此。

当预测变量的数量增加到比观察数量更高时,问题变得更加严重。在这种情况下,预测变量的协方差矩阵X'X不可逆,导致通常的普通最小二乘线性模型参数估计解决方案失败,定义为:$$ \hat{\beta}={\left[{X}^{\prime }X\right]}{-1}{X}{\prime }Y. $$(2.9)计算 OLS 估计量所需的矩阵求逆可以看作是要解决的一组方程,而在我们的情况下,解决方案不唯一。因此,这个问题被称为“病态”(Hadamard,1902)。解决这个问题的一个非常常见的方法是使用 L²-范数的系数估计值进行回归正则化(称为岭回归(Hoerl & Kennard,1988)或 Tikhonov 正则化)。请记住,在普通最小二乘中,直线与数据之间的平方差之和被最小化。参数β的估计值,称为$$ \hat{\upbeta} $$,因此是优化问题的解:$$ \underset{\beta }{\mathit{\min}}\ {\left\Vert Y- X\beta \right\Vert}_2². $$(2.10)在岭回归中,L²-范数的惩罚被添加如下:$$ \underset{\beta }{\mathit{\min}}\ {\left\Vert Y- X\beta \right\Vert}_2²+\lambda {\left\Vert \beta \right\Vert}_2², $$(2.11)这里,“λ”是岭惩罚参数。导致参数的以下缩小估计值:$$ {\hat{\beta}}{Ridge}={\left[{X}{\prime }X+\lambda I\right]}{-1}{X}{\prime }Y. $$(2.12)“I”是 n × n 单位矩阵。

在允许矩阵求逆的基础上,L²-范数的惩罚自动减小了 OLS 估计的系数的大小,从而导致更好的外样本估计(Van Dusen,2016)提出了对这一点的全面概述)。还可以在优化问题中引入 L¹和 L²-范数的惩罚,这种技术称为弹性网络正则化(Tibshirani,1996,另见 Zou 和 Hastie,2005)。当加入 L¹-范数的惩罚时,一些系数会变为零,从而实现对自变量的选择。岭回归和弹性网络回归因此解决了与多模型相同的问题,这是在使用大量变量进行建模时防止过度拟合的替代方法。

然而,在这些方法的大多数应用中,即使在变量选择后,模型的自由度数量仍然非常低,这总是会对结果拟合引起一些疑虑。通过使用多模型,可以轻松解决这个问题,因为每个基本模型中使用单个变量大大增加了自由度的数量。因此,使用多模型提供了一种更简单、更有效的解决这些问题的方法。

为了更好地理解多元模型与多模型相比过度拟合的情况,我们提出通过一个玩具例子来说明我们的推理。为了解决一个熟悉的问题,我们将 S&P 500 的回报建模为一组n个预测变量的函数(如方程 (2.7) 中所示,其中Y是 S&P 回报)。

为了测试各种方法的虚假性,我们构建了一个包含从自由度为 4 的学生 t 分布中随机抽取的值的预测器集合:³$$ X=0+\varepsilon $$$$ \varepsilon \sim {t}_{\nu =4.} $$(2.13)因此,根据构造,在我们的实验中,目标变量与预测变量之间没有任何联系。只有噪声可以适应解释变量。为了得到f(),我们比较了三种不同的建模技术:

  • 由方程 (2.8) 描述的多元线性模型,使用方程 (2.9) 描述的 OLS 估计器进行估计。

  • 使用由方程 (2.12) 描述的 Ridge 估计器进行估计的相同多元模型。对于估计至关重要的参数λ是通过 5 倍交叉验证(参见 Golub 等人,1979)选择的(有关使用交叉验证选择 Ridge 参数的使用)。

  • 如方程 (2.5) 中描述的多模型,其中基本模型被定义为使用 OLS 估计的线性单变量模型。

这个简单的设置不包括非线性或变量选择,因此结果仅由多元/单一区分驱动。我们使用 2001-01-01 至 2003-12-31 期间的标普 500 周回报估计了这三种模型的参数,这对应于 157 个观测值。然后,我们为 X 生成新值,并使用先前估计的参数将它们与模型化的标普回报模型化为 2004-01-01 至 2006-12-31 期间的情况。当然,我们不指望这些预测中有任何好的结果,实验的目的是反映不同模型被拟合纯噪音的能力。因此,我们通过比较样本内(2001 年至 2003 年期间)的拟合度和样本外(2004 年至 2006 年期间)的拟合度来测量过拟合。拟合度使用 R²来评估,它是总平方和中残差平方和的减法值的百分比:$$ {R}²=1-\frac{\sum \limits_{s=1}^t{\left({y}_s-{f}_t\left({x}_s\right)\right)}²}{\sum \limits_{s=1}^t{\left({y}_s-{\overline{y}}_t\right)}²}. $$(2.14)这里,“t”是当前时间索引(即 2003 年底),“s”是窗口中滚动时间索引(即它在 01-2001 和 12-2003 之间采用每周日期值),“ $$ {\overline{y}}_t $$”是在 s= 1 和 s=t 之间的目标变量的平均值,“ f[t]”是使用在日期 t 可用的数据估计的拟合函数。更确切地说,为了评估过拟合,我们测量“样本外 R²”,它与上面的“样本内 R²”公式相同,但使用样本内系数和样本外数据:$$ {R²}_{oos}=1-\frac{\sum \limits_{s=t+1}^{t+157}{\left({y}_s-{f}_t\left({x}_s\right)\right)}²}{\sum \limits_{s=t+1}^{t+157}{\left({y}_s-{\overline{y}}_{t+157}\right)}²}. $$(2.15)上述公式反映了使用新数据(在 t + 1 到 t + 157 之间)重新计算 R^(2),但拟合函数 f[t]() 保持不变。

我们接着测量“样本内 R²”和“样本外 R²”之间的差异

$$ 差异={R²}_{IS}-{R²}_{OOS}. $$(2.16)对于多元模型,我们不表示每个基本模型的差异,而是选择呈现基本模型之间的平均⁴ 差异,为了简洁起见。接下来我们观察差异如何随预测变量数量 n 的变化而变化。我们将这个数字变化在 1 和 156 之间(回顾一下共有 157 个观测值)。在图 2.1 中,将这个作为过拟合度量的预测变量数量的函数进行了比较:

图 2.1

根据回归中包含的解释变量的数量,内样本和外样本 R²之间的差距(缩放)

上图表示内样本和外样本拟合优度之间的差距,作为回归系数数量的函数(对于多项模型,显示的值是在不同基本模型之间的差距的(非加权,未选择)平均值)。对于多元模型,独立变量的数量越多,差距越大,因此过拟合越强。

当回归器的数量达到数据点的数量时,多元 OLS 的差距会变得非常爆炸性,以至于它打破了图的比例。通过缩放可以理解(见图 2.2):

图 2.2

根据回归中包含的解释变量的数量,内样本和外样本的 R²之间的差距(缩放)

在这个玩具例子中,Ridge 估计器表现如预期,明显减少了与多元 OLS 相比的过拟合。实际上,对于极端情况,即n=156 时,Ridge 估计器的差距大约比经典 OLS 估计器低 3000 倍。然而,即使有正则化,显然过拟合也随着多元模型中包含的变量数量的增加而增加。

在多项式模型的平均差距的情况下,当回归数n增加时,差距(当然)在渐近时是恒定的。对于n=156 的情况,多项式模型的差距比 OLS 低了 10⁵倍,在这种特殊情况下比 Ridge 低了 34 倍(图 2.3)。

图 2.3

解释变量数量的函数(仅限多项式模型)中内样本和外样本 R²之间的平均差距

这个简单的实验还帮助我们通过比较三个模型的内样本 R²和外样本 R²来理解过拟合的本质:

在这三个图中,我们展示了内样本 R²和外样本 R²作为独立变量数量的函数,对于三种拟合方法。在这两种多元模型中,我们发现差距增长不仅仅是因为内样本 R²的增加。外样本 R²急剧恶化,以至于它迅速成为差距计算中最重要的数字。这说明过拟合不仅导致对外样本性能有太高的期望,而且在很大程度上实际上也导致其恶化,因为在这种情况下我们只是在跟随过去的噪声。注意 R²的比例在图中是完全不同的(图 2.4、2.5 和 2.6)。

图 2.4

多元 OLS 回归:样本内与样本外的 R²随包含在回归中的解释变量数量的变化而变化

图 2.5

多元岭回归:样本内与样本外的 R²随包含在回归中的解释变量数量的变化而变化

图 2.6

多模型(单变量 OLS):样本内与样本外的 R²随包含在回归中的解释变量数量的变化而变化

当然,这个玩具示例有点简化,远离我们实际使用的技术,⁵但它使我们能够解释过度拟合现象,并使我们对其效果的大小有所了解。除了明显由多模型主导的过度拟合降低水平外,当似乎简单 OLS 估计的重复表现更好时,我们还可以质疑交叉验证的正则化估计器的使用。我们让奥卡姆剃刀的支持者做出选择。

另一种常用于处理大量潜在候选变量的技术是逐步回归。逐步回归通过将所有变量置于模型中开始构建最终模型,然后消除其中一些变量('向后消除'),或者从不包含变量开始,然后逐步将它们引入模型中('向前选择')(霍金,1976)。变量的选择基于特定的拟合优度准则,这些准则通常鼓励在模型中减少变量的数量,例如调整后的 R²、阿卡信息准则或贝叶斯信息准则。然后,按照一步一步的程序进行,评估每一步模型的添加/删除变量的兴趣,使用每一步的拟合优度量度。这样的方法可以保留合理数量的自由度(特别是在向前选择过程中),并且也比岭回归更容易地将自变量的非线性变化整合进来。然而,这样的重复程序会导致用于评估其拟合优度的统计量存在偏差(威尔金森和达拉尔,1981),通常,一步一步的过程会导致过度拟合(弗洛姆和卡塞尔,2007)。当潜在的独立变量数量很高时,多模型可能以非常不同的方式进行估计,因此在一步一步的过程中可以轻松避免陷阱。

考虑到逐步选择或正则化的常见替代方案,多模型方法提供了一种有效的减少过度拟合的方法,因为当潜在独立变量的数量很高时,在多元模型中实际上无法避免过度拟合。

2.4.2 增加精度

经济计量学的另一个关注点,尽管不经常被强调,是欠拟合。模拟两个变量之间关系的最简单方法是线性模型,然而,真实反应函数为直线并没有特定的原因。即使线性模型对大多数情况下都能产生可接受的结果,但是通过引入平滑曲线来取代通常的直线,这些结果可以得到改进。事实上,如果真实的基础模型是非线性的,那么非线性模型应该比线性模型表现更好,这要归功于其灵活性。然而,反之并不成立,如果基础模型是线性的,那么线性和非线性模型都有能力拟合直线。[⁶]

在许多领域,如金融领域,预测准确性的显著提高可能在经济后果方面具有决定性意义,但是使用非线性建模作为标准可以获得的好处不一定仅限于相对于线性模型的精度增加。在许多情况下,线性建模会导致错误的建模。即使在线性模型平均下能够产生良好的结果的情况下,独立变量分布尾部发生的事件可能表现出与目标变量非常不同的响应函数。这对从业者可能会造成最糟糕的后果,因为一个被认为是良好的模型,似乎始终能够产生一致良好的结果,突然间可能无法进行任何准确的预测。从这个角度来看,非线性建模不仅是一种如果想要略微提高预测准确性的可行方法,而且是一种在极端情况下避免出现意外的要求。

另一个很好的例子来说明这一点是基金经理的观点,他们可能关注对冲基金收益的多因子建模。对冲基金承担着显著的尾部风险,因此它们的凹形收益不能用线性因子模型来恰当描述。线性多因子模型可能能够解释对冲基金的“正常时期”,即非极端收益,但是由于与其因子暴露之间的关系是非线性的,它将无法对其极端收益进行建模,从而证明了为此目的开发非线性方法的必要性(例如,Cherny 等人,2010)。

在基础模型中使用非线性函数,例如多项式,如果适当拟合,可以增加预测的精度,并模拟极端事件⁷。例如,我们可以将方程(2.6)中的函数φ**i定义为:$$ {\varphi}_i\left({X}_i\right)=\sum \limits_{h=0}u{\beta}_{i,h}{X}_ih. $$(2.17)上述基础模型中使用的函数是多项式的加权和。这样的模型的权重可以通过 OLS 估计。然而,简单的多项式之间高度相关,并且 OLS 估计量的假设之一是回归变量的线性独立性。尽管如此,通过正交化多项式可以满足这一假设。假设因素的联合分布是高斯 Copula,我们被引导使用 Hermite 多项式(Cherny 等,2010)。Chebyshev 多项式已知适用于区间[−1, 1]的 OLS 估计(Mason&Handscomb,2002),这个区间包含大部分金融收益。最后,Guan(2019)提议对多项式进行数值自正交化。所有这些替代选择都有利有弊,取决于应用。请注意,存在许多非线性逼近函数φ**i的可能性。例如,在非参数世界中,Nadaraya–Watson 估计器(Nadaraya,1964;Watson,1964),也称为核回归,可能会产生合适的结果。尽管如此,多项式回归具有极易实现的优点,因此可以在现实世界中快速计算。

当然,我们对非线性技术优于线性技术的推理是有条件的,即多项式模型如果使用,则不是盲目拟合的。事实上,由于多项式模型更复杂,更容易导致过拟合。为了解决这个问题,Zhang(2019)提议使用正则化来收缩多项式基础模型的参数。

使用非线性建模可以实现非常灵活的函数形式,如果使用得当,比起模型驱动更加数据驱动。这种合理适应数据的精神也体现在多模型中对变量假设的制定上。实际上,由于我们不希望忽视对现实的任何相关视角以理解它,多模型理论是一种邀请,可以在多模型中包含任何潜在重要的变量。在估算程序之前,几乎可以(并应该)在多模型中包含任意数量的变量。这一令人振奋的特性需要在多模型的估算过程中系统地包含一个选择方法,以便仅保留在最终估算的多模型中真正相关的变量。在这个阶段,没有关于选择方法的标准,因此它被适应于各种经验案例(第 4 和 6 章就此提出了一些解决方案)。因此,在使用弱功能假设之上,多模型理论还使用弱变量假设,这构成了一种避免模型僵化的良好方式,该模型受到可能是错误的假设(从一般观点来看,假设线性模型可以被视为对模型的函数形式做出的强假设)的驱使。

这种极高的多模型灵活性需要一种谨慎的估算方法。正如所述,这种估算方法应包括一种平衡和/或选择不同基本模型的方法,但更重要的是,拟合过程不应过于自适应,否则可能再次出现过度拟合。满足这种对合理算法以拟合基本模型的需求是第三章的主题。

非线性建模引入的整体精度增加可以通过逐步回归实现。这样的方法还允许自动变量选择,然而我们已经看到逐步过程会导致过度拟合。在岭回归和弹性网正则化的情况下,引入预测变量的非线性版本可能克服线性建模的精度不足,但显然会以增加模型系数的数量为代价,这必然会增加过拟合的风险。因此,就准确拟合真正存在于大量数据中的模式这个特定问题而言,多模型理论与标准替代方案相比表现出令人羡慕的特性。

2.4.3 提高鲁棒性

与多元模型相比,使用 polymodel 最明显的好处之一是消除了多重共线性。在大数据样本中,我们经常会遇到多重共线性,它提供了对参数的非稳健估计,即回归系数对估计数据的微小变化非常敏感(参见例如 Belsley,2014)。这在使用时间滚动窗口进行重复拟合时尤其成问题,这是金融领域经常使用的一种技术。此外,多重共线性可能会使我们难以可靠地识别与我们试图解释的目标变量有效相关的自变量。由于它增加了受影响系数的标准误差,如果通过常规 t 统计量计算,则虚高了参数的 p-值。虽然可以使用 Ridge 回归来解决预测变量之间的多重共线性问题,但会以准确性为代价(Hoerl&Kennard,1970),但在 Polymodel 理论框架下,多重共线性根本不会出现,这使其更适用于获得对每个预测变量的反应函数的稳健估计。

我们建议从现实世界中提取另一个玩具示例来说明这一特定点。同样,我们考虑用多元 OLS、多元 Ridge 和简单线性 polymodel 拟合多因子模型的问题。目标变量仍然是标准普尔 500 指数的周回报,我们继续研究 2001-01-01 至 2003-12-31(157 次观测)的情况。然而,我们用于预测它的预测变量集合不再由随机选择组成。相反,我们使用了 43 个美国股票指数,其中大多数是行业指数。⁸我们首先使用这 43 个解释变量估计三种不同的模型,并收集它们的相关参数。接下来,我们重新估计三个模型,同时删除其中一个预测变量,因此保留 42 个。如果初始估计是稳健的,它们应该是稳定的,因此与多因子模型中使用 43 个变量估计的系数完全相同。对于每个模型,我们测量系数的绝对变化,预计等于 0,使用以下基本度量标准:$$ {\Delta}_{coeff}=\left|\frac{{\hat{\beta}}_{42}-{\hat{\beta}}_{43}}{{\hat{\beta}}_{43}}\right|. $$(2.18)然后,此过程重复 43 次,每次更改从预测器集中删除的变量,以便我们可以收集三种模型的Δ[coeff]的 42 × 43 = 1,806 个值。这些值的描述性统计如下(表 2.1):表 2.1

对解释变量集合变化的估计的敏感性

多元(OLS) 多元(Ridge) polymodel(单变量 OLS)
计数 1,806 1,806 1,806
均值 76% 28% 0%
最小值 0% 0% 0%
四分位数 25% 2% 1% 0%
四分位数 50% 10% 5% 0%
四分位数 75% 39% 18% 0%
最大值 9.110% 1.556% 0%
标准差 4.12 0.93 0.00
峰度 233.30 88.70 0.00
偏度 13.83 8.19 0.00

多变量 OLS 的系数平均绝对变化为 76%,多变量 Ridge 为 28%,而多项模型显然为 0%。多变量情况下这些极大的变化是由于预测变量中存在高水平的多重共线性。事实上,它们的平均相关性为 56%。

当然,有很多情况下使用的预测变量只有低相关性,或者根本没有相关性。但是,使用的解释变量越多,某些解释变量出现多重共线性的可能性就越大。我们提出的简单例子表明,即使 Ridge 估计器确实能够降低参数不稳定性,其结果仍然不完美,而多项模型则完全消除了任何多重共线性问题,因此提供了一个彻底解决这个问题的工具。

为了确保估计的模型是可靠的,在建模中的一个标准假设是,用于拟合的样本的所有观测的残差方差都是恒定的。在处理时间序列时,可能很难确保同方差性,因为时间序列可能显示出波动的集群(在金融领域,曼德布罗特 1997 和恩格尔 1982 已经引起了人们的注意)。因此,使用于估计的窗口越长,同方差性假设不被满足的可能性就越小。当这个条件不被满足时,OLS 估计的系数的标准误差就会有偏差,再次导致基于 t 统计量的虚假 p 值水平,从而可能错误地确定在分析中要考虑的最相关的变量。请注意,在尝试避免过度拟合时,多变量模型必须依赖于可用的最大时间深度。相比之下,多项模型允许减少估计的时间深度,同时保持令人满意的自由度,这样就不太容易过度拟合。因此,除了避免多重共线性之外,从尊重同方差性假设的特定角度来看,使用多项模型而不是多变量模型也更有利于建模的稳健性。

在对多个变量建模时,从业者经常会遇到缺失数据的问题。在预测变量的矩阵中缺少观测会导致估计不准确,因此要么删除所有具有相同索引的其他变量的观测(例如简单地删除日期),要么完全删除整个变量本身。当使用大量变量时,这个问题变得越来越棘手,因为通常会缺少广泛的观测,并且这些观测可能不会同时缺失。无论采取何种选择,使用任何多元回归技术都会导致移除一部分可用数据。模型的稳健性也与用于估计其参数的观测数量相关联。再次,多模型允许克服这一问题。由于每个变量都是使用其自己的基本模型独立拟合的,因此无需删除任何观测,每个基本模型中使用的观测数量可以不同。自然地,这种差异应该在用于评估每个变量的统计显着性的测试中考虑进去。通过保留所有观测,多模型因此增加了估计的稳健性,与多元模型相比。

多变量建模技术只能难以解决对估计的稳健性的担忧。尽管岭回归可能在一定程度上解决了多重共线性的问题,但没有一种多元技术能像多模型那样尊重数据的原始结构(方差的动态性,缺失观测)。这些发现将多模型技术定位为适合处理大量数据的技术。

2.5 多模型引发的考虑

2.5.1 预测的聚合

当介绍多模型理论时,常常引起的一个常见问题是使用什么方法来聚合预测。

首先,重要的是要注意,多模型理论提供的不仅仅是聚合预测。由于其目的是提供一个准确的表示一个变量与其整个环境之间关系的近似全面的表示,因此从这种表示本身就可以学到很多东西。研究人员可以关注这些联系强度的动态性,它们的非线性程度等等。此外,可以使用基本模型生成除目标变量预测之外的其他度量,例如风险价值。因此,可以生成代表系统不同方面的非常不同的度量。

调查多模型不同维度的度量的聚合可以通过非常不同的方式进行。我们可以考虑这些度量的整个分布,以及在压力条件下描述系统反应的最大值、最小值或极端分位数。度量的随时间变化的波动提供了关于其不稳定性的信息。还可以考虑度量与其历史平均值的比率,以获得其相对当前水平的有意义值。

最后,将不同基本模型的预测聚合在一起引发了不同预测器的相关性的问题。

为了有效地理解这个问题的重要性,我们通过一个大礼堂的隐喻来解决它。

让我们考虑一下,一个由某大学财务系的学生填满的大礼堂。我们希望利用他们的知识来预测金融资产的未来收益。在加入大礼堂之前,学生们已经被选为该特定任务在大学中最有技能的学生。选择是使用多项选择问卷进行的。因此,一小部分通过随机猜测程序回答问卷的不好的学生,可能会被偶然选中。用于确定最佳学生的测试是有缺陷的,就像所有测试一样。

这些被毫无原则地选择出来的学生在我们在大礼堂里可能会遇到的学生中并不具有最常见的特征。然而,大多数被选择的学生都很有技能,因为他们都来自同一所大学,他们对金融市场有着相同的知识和想法。

然而,一些学生在其他大学开始了他们的学习,甚至在少数情况下在不同领域开始了他们的学习,而且他们中的一些人比其他人学习得更多,在讲座之外寻找补充信息,因此,一些原始观点可能会被这些学生表达出来。

学生们所做的预测是匿名的,因此我们无法知道这些原始学生是谁。我们只能观察到这些预测,这些预测在几轮中重复,每次都试图预测下一个时期的金融资产收益。

很明显,大礼堂是一个多模型,每个学生代表着一个基本模型。此外,我们清楚地了解到,大多数学生的预测,即使相关,也会有所关联,因为他们代表市场的方式本质上是相同的。问题是如何区分智者、愚者和群众。这个问题可以通过几种方式来解决,我们提议通过一个同时考虑到原创性和可信度的度量来解决,该度量在第六章中提出。

2.5.2 每个基本模型的变量数量

选择只包括基本模型中的单个变量需要进行讨论。事实上,如果基本模型由多个变量组成,则大多数 Polymodel 的好处仍然存在。这样的构造也符合 Polymodel 理论的认识论方法。

然而,将几个变量包括在基本模型中将不允许我们在没有过度拟合的情况下获得高水平的精度(即非线性建模)。例如,多重共线性的缺失将会丢失一些其他的好处。

除了统计考虑之外,使用单变量基本模型大大简化了分析,因为我们测量的基本模型指标与一个单一、明确定义的因子相关联。

因此,单变量基本模型似乎是构建 Polymodel 的最合适选择。

2.6 结论

Polymodel 理论是一种直观的方法,长期以来已经在不同领域中使用,但通常会被匆忙地拒绝,以支持多变量建模。然而,金融领域的首次应用表明,该方法提供了一个丰富的框架,特别有利于大数据的非线性建模,在多变量建模范围之外有大量应用。

形式化一个在最近文献中越来越常用的工具,我们已经表明多元多变量(polymodels)方法在计量经济学角度具有许多有利特性。特别地,这些优点符合当前金融利益,其中需要以数据驱动、稳健、准确、非过度拟合的方式处理大量数据的技术。从这个角度来看,Polymodel 理论可以被看作是一种机器学习方法。

Polymodel 理论还具有哲学上的好处:从认识论的角度来看,它似乎比多变量建模更合理,因为它提供了同一对象的多种表示(可以根据可信度加权),而不是单一的、不变的表示。

Polymodel 的非线性使得可以有效地处理市场动态中的制度变化,这些变化是“空间”的,即由于移动的大小而不是由于随机的“时间”事件。这与例如隐藏的马尔可夫模型一致,在其中股票对某些指数的“beta”取决于制度。

估计、选择和聚合预测的挑战是接下来章节要讨论的重要话题。妥善处理这些问题是使用 Polymodel 的基石。但是,如果得到适当处理,这使得 Polymodel 理论成为一种强大的建模方法,并在某种程度上,成为大多数传统多变量回归技术的优越替代品。

第三章:估计方法:线性非线性混合模型

Thomas Barrau^(1  ) 和 Raphael Douady²(1)AXA 投资经理 Chorus 有限公司,香港,香港特别行政区。(2)巴黎索邦大学经济中心,法国巴黎。

摘要

我们引入了线性非线性混合(LNLM)模型作为产生非线性单变量模型的有效方法,主要关注减少过拟合。我们通过数值模拟表明,LNLM 模型能够成功地检测到噪声数据中的模式,其准确度与或优于数据驱动建模替代方案。我们发现我们的算法在计算上是高效的,这对于机器学习应用来说是一个必要的特征,这些应用通常涉及大量的估计。

关键词非线性建模多项式回归 Polymodel 理论正则化过拟合数据驱动非参数单变量回归

3.1 引言

如第二章所述,Polymodel 相对于经典的多因子模型最强大的优势之一是更准确地拟合目标变量,而不局限于简单的线性函数形式。在数据驱动建模领域有很多选择,但对于大多数技术来说,估计过程可能在计算资源方面很重,这在 polymodels 框架中是一个特别重要的点。事实上,即使是 Polymodel 理论的简单应用也可能涉及到数百万到数十亿的拟合。例如,一个人可能想要使用每天更新的一千个因子来拟合一个 20 年的模拟,这直接导致了 1,000 * 252 * 20 = 5,040,000 次拟合。很容易想象,在 polymodels 涉及的大数据框架中,计算时间非常重要。

从前从事者用于估计基本模型的简单解决方案是使用多项式的加权和。 Douady 和 Molchanov 以及 Cherny (2010) 引入了使用 Hermite 多项式的方法,这些多项式在回归中一起使用时表现出有趣的特性,限制了它们之间的相关性。

请回忆,Hermite 多项式被定义为:$$ {H}_h(x)\stackrel{\scriptscriptstyle\mathrm{def}}{=}{\left(-1\right)}h{e}{\frac{x²}{2}}\frac{dh}{d{x}h}{e}^{\frac{-{x}²}{2}}. $$(3.1)然后我们简单地使用以下非线性模型来估计基本模型:$$ {\varphi}_i\left({X}_i\right)=\sum \limits_{h=1}^u{\beta}_{h,i}{H}_h\left({X}_i\right)+{\varepsilon}_i. $$(3.2)这里的 beta 是从 OLS 中获得的估计值(在实践中,通常有 4 个多项式项足以达到足够的精度),即:$$ {\hat{\beta}}{OLS}={\left[{X}{\prime }X\right]}{-1}{X}{\prime }Y. $$(3.3)多项式解决方案有许多优点,因为 OLS 仅需要矩阵求逆,这是可以在当今高效完成的任务,并且可以轻松并行化。事实上,并行计算是从业者高效使用多模型理论的关键之一。此外,多项式组合可以以平滑和数据驱动的函数形式捕捉自变量和目标变量之间的潜在联系。

然而,这些优点是有代价的:过度拟合。使用多项式模型会导致在基本模型中重新引入几个人为的外生变量,由于它们的非线性特性,这特别适应,这为过度拟合创造了有利的基础。

线性非线性混合模型是对这一关注的回答。一方面,多项式的加权和模型可以很好地拟合数据,以至于它可以适应一些噪声以及变量之间的潜在关系。另一方面,线性模型会提供更健壮的拟合,但代价是仅提供一个天真和简单的现实表示的非常高。LNLM 模型建议混合这两种模型,并仅保留它们的优点。

当然,也可以使用其他技术来实现这样的正则化拟合。

可以使用岭估计来正则化多项式模型以获得模型的β值,简单地在预测变量的协方差矩阵的对角线上添加惩罚:$$ {\hat{\beta}}{OLS}={\left[{X}{\prime }X\right]}{-1}{X}{\prime }Y\Rightarrow {\hat{\beta}}{Ridge}={\left[{X}{\prime }X+\lambda I\right]}{-1}{X}{\prime }Y. $$(3.4)通过交叉验证(见 Golub 等人,1979),可以获得参数λ的适当值,这个过程是通过测试不同λ的值及其相关的(伪)样本外拟合度来实现的。这种方法的问题在于,每次测试一个λ的值时都需要对惩罚的协方差矩阵进行反转。因此,进行 10 折交叉验证同时评估 10 个不同的λ值会导致 100 个矩阵反转,这在计算时间方面可能性能较低。

当然,还有其他技术可能适合提出一个数据驱动的拟合,该拟合比使用 OLS 估计的多项式模型更少过拟合。其中,我们保留 Nadaraya–Watson 估计量(Nadaraya,1964; Watson,1964)作为一个标准基准,我们用它来比较 LNLM 模型的性能。

本章的目的是介绍 LNLM 模型,并展示其在改善样本外拟合优度和计算时间方面的价值。就像许多其他人工智能技术一样(见第二章),我们的方法侧重于模型在使用时的有效性(此处用于产生非过拟合预测),而不是对其统计特性的深入理解,在本章中因此没有进行分析。

因此,我们将章节组织如下:

  • 首先,我们介绍了 LNLM 模型,通过正式定义,并对拟合过程进行了解释。

  • 然后,我们介绍了一种设计用来评估模型效率的方法,使用了大量的模拟。

  • 展示和讨论模拟结果,最终总结该章节。

3.2 LNLM 模型的介绍

3.2.1 定义

LNLM 模型旨在表示目标变量如下:$$ Y= LNLM(X). $$(3.5)这种表示使用以下定义完成:$$ LNLM(X)\stackrel{\scriptscriptstyle\mathrm{def}}{=}\overline{y}+\mu \sum \limits_{h=1}u{\hat{\beta}}_h{NonLin}{H}_h(X)+\left(1-\mu \right){\hat{\beta}}^{Lin}X+\varepsilon . $$(3.6)这里 0 ≤ μ ≤ 1 是允许控制潜在¹ 非线性的参数,因此被称为非线性倾向参数, $$ \overline{y} $$ 是目标变量的均值。

因此,LNLM 模型简单地通过线性模型对多项式模型进行正则化²。 这一点非常重要,并且与使用 Ridge 回归³ 对参数进行经典收缩造成了显著差异(Hoerl & Kennard,1988)。 实际上,首先想到的减少多项式引起的过拟合的自然想法是简单地收缩模型的 OLS 估计,就像 Zhang (2019) 所做的那样。 其他公认的替代方法包括 LASSO(Tibshirani,1996)或 Elastic Net(Zou & Hastie,2005)方法,但是这两种方法都包括 L¹-范数的惩罚,这通常会导致丢弃一些协变量。 在选择不同独立变量的简洁选择方面,这是非常有意义的,但在我们的情况下,我们只使用相同独立变量的不同变化,我们预计保留所有多项式项将导致更平衡的聚合函数。

使用 LNLM 模型而不是 Ridge 模型的动机主要是理论上的。我们先前的信念是,多项式模型的过度拟合仅来自模型的非线性项。换句话说,我们从不指望模型的线性部分过度拟合数据。在岭回归中,无法避免收缩线性项。回顾一下,岭回归的估计值定义为:$$ {\hat{\beta}}{Ridge}={\left[{X}{\prime }X+\lambda I\right]}{-1}{X}{\prime }Y,\kern0.75em s.t.\kern0.75em \lambda \ge 0 $$(3.7)这里λ是整数,收缩参数,“I”是 u×u 单位矩阵。在多项式模型的情况下,矩阵X′X将是 4×4,所以我们可以用矩阵J替换 4×4 单位矩阵I ⁴:$$ J=\left[\begin{array}{cc}\begin{array}{cc}0& 0\ {}0& 1\end{array}& \begin{array}{cc}0& 0\ {}0& 0\end{array}\ {}\begin{array}{cc}0& 0\ {}0& 0\end{array}& \begin{array}{cc}1& 0\ {}0& 1\end{array}\end{array}\right] $$(3.8)这个解决方案很诱人,因为我们可以期望线性项不再受到矩阵J的惩罚。然而,我们仍然必须求解矩阵[X′X + λJ]的逆,这相当于解一个四元方程组。在这样一个系统中,只有第二、第三和第四个方程被修改,而在协方差矩阵中加入惩罚项后,第一个方程保持不变。但是在求解系统时,每个方程的解都取决于所有其他方程的解,因此系统的第一个方程的解也被修改,结果线性系数也被改变。

因此,LNLM 模型是对 Ridge 回归在拟合单变量多项式模型的非常特殊情况下的极限的响应(保持过度拟合仅来自非线性的假设)。

3.2.2 拟合过程

LNLM 模型的结构阻止了使用 OLS 进行全局直接拟合,首先因为结果将只是一个过度拟合的大型多项式模型,其次是因为模型中线性项的完美相关性将阻止矩阵求逆。

因此,我们设计了一个三步拟合过程,首先选择非线性倾向参数μ的值,然后分别估计非线性模型和线性模型,最后将 LNLM 的所有要素结合起来得到最终拟合。步骤 2 和步骤 3 是微不足道的,因此我们将重点放在接下来详细介绍的步骤 1 上。

我们方法的目标是减少过度拟合,我们围绕交叉验证的概念构建我们的方法论。 更准确地说,我们使用 k 折交叉验证的变体来数值地接近最小化过度拟合的值μ,即样本外误差。 选择交叉验证是由其已被证明可以减少过度拟合的能力所驱动的(Moore,2001)。

为了做到这一点,我们首先将目标变量数据分割成k个子样本,称为“折叠”。 分层 K-Folds 包括几种技术,旨在保持子样本代表目标变量的全局分布。 如果我们有q个观测值可用,我们将数据分割成⌈q/k⌉个分位数。 因此,每个分位数桶都包含正好k个观测值(如果q/k不是整数,则除了最后一个之外的每个桶)。 如果我们以在 50 个观测值上执行的 5 倍交叉验证为例,我们将得到一个分布分成 10 个包含 5 个观测值的分位数(图 3.1):

图 3.1

分层交叉验证的分位数分割的样式化表示

在每个完整的分位数中,我们随机为每个观测值分配一个折叠标识符。 所有折叠标识符都以相等的概率分配,并且相同的标识符不能在同一个分位数桶中出现超过一次。 可能的不完整分位数是唯一一个可能不包含所有k个标识符的分位数。 最后,我们只是按折叠标识符对观测值进行分组,得到k个折叠,每个折叠都包含以前定义的所有分位数中的观测值。 因此,所有折叠都包含代表目标变量的全样本分布的数据。 在我们之前的示例中,我们得到 5 个折叠,每个折叠包含从初始分布的 10 个分位数中抽取的 10 个观测值(图 3.2):

图 3.2

分层交叉验证的折叠分布的样式化表示

一旦数据分成了折叠,我们分别使用最后的k−1 个折叠来拟合线性模型和非线性模型。然后,我们使用第一个折叠来数值计算最小化该伪样本折叠内的均方根误差(RMSE)的μ的值,该折叠尚未用于估计 OLS 参数:$$ \underset{\mu_1}{\mathit{\min}}\sqrt{\frac{1}{q}{\sum}_{d=1}^q{\left({y}_{1,d}-\left[{\overline{y}}_{2,3,\dots, k}+{\mu}_1\sum \limits_{h=1}^u{\hat{\beta}}_{2,3,\dots, k,h}^{NonLin}{H}_h\left({x}_{1,d}\right)+\left(1-{\mu}_1\right){\hat{\beta}}_{2,3,\dots, k}^{Lin}{x}_{d,1}\right]\right)}²} $$(3.9)这个数值选择重复k次,每次改变用于确定μ的伪样本折叠:$$ \left{\begin{array}{c}\underset{\mu_1}{\mathit{\min}}\sqrt{\frac{1}{q}{\sum}_{d=1}^q{\left({y}_{1,d}-\left[{\overline{y}}_{2,3,\dots, k}+{\mu}_1\sum \limits_{h=1}^u{\hat{\beta}}_{2,3,\dots, k,h}^{NonLin}{H}_h\left({x}_{1,d}\right)+\left(1-{\mu}_1\right){\hat{\beta}}_{2,3,\dots, k}^{Lin}{x}_{1,d}\right]\right)}²}\ {}\underset{\mu_2}{\mathit{\min}}\sqrt{\frac{1}{q}{\sum}_{d=1}^q{\left({y}_{2,d}-\left[{\overline{y}}_{1,3,\dots, k}+{\mu}_2\sum \limits_{h=1}^u{\hat{\beta}}_{1,3,\dots, k,h}^{NonLin}{H}_h\left({x}_{2,d}\right)+\left(1-{\mu}_2\right){\hat{\beta}}_{1,3,\dots, k}^{Lin}{x}_{2,d}\right]\right)}²}\ {}\begin{array}{c}\begin{array}{c}\dots \ {}\dots \ {}\dots \end{array}\ {}\underset{\mu_k}{\mathit{\min}}\sqrt{\frac{1}{q}{\sum}_{d=1}^q{\left({y}_{k,d}-\left[{\overline{y}}_{1,2,\dots, k-1}+{\mu}_k\sum \limits_{h=1}^u{\hat{\beta}}_{1,2,\dots, k-1,h}^{NonLin}{H}_h\left({x}_{k,d}\right)+\left(1-{\mu}_k\right){\hat{\beta}}_{1,2,\dots, k-1}^{Lin}{x}_{k,d}\right]\right)}²}\end{array}\end{array}\right. $$(3.10)因此,我们得到了k个不同的最佳μ值,最简单的聚合方法是取平均值。然而,μ的值在每个折叠中的重要性不同。在某些折叠中,选择最佳值⁵的μ会导致 RMSE 的显著减少,而在另一些折叠中,RMSE 对最佳选择的敏感性较低。为了考虑到这一点,对于k个折叠中的每一个,我们计算以下度量:$$ {\xi}_l=\sqrt{E\left[{\left({\mathfrak{R}}_l-{\mathfrak{r}}_l^{\ast}\right)}²\right]} $$(3.11)这里 $$ {\mathfrak{R}}_l $$ 是计算了所有测试折叠“ l”的μ值的均方根误差向量(约 100 个),而 $$ {\mathfrak{r}}_l^{\ast } $$ 是在最佳处的 RMSE 值。

因此,度量ξ测量了围绕最优解获得的误差的分散程度。它可以理解为与最小 RMSE 的标准偏差。ξ的值越大,当我们偏离最优解时误差增加的幅度就越大,选择这个特定值μ就越重要。

我们通过计算最终聚合值μ,将每折中对选择最优值的重要性进行衡量,该值是从与最小值相关联的标准偏差加权得到的$$ {\mu}^{\ast }=\sum \limits_{l=1}k{\mu}_l\frac{\xi_l}{\sum_{l=1}k{\xi}_l}. $$(3.12)这样的加权相当直观,因为我们的标准偏差到最小值的关系与标准误差的概念密切相关。

注意,上述描述的过程导致每个折叠中进行两次 OLS 拟合(一个用于线性模型,一个用于非线性模型),并且在所有可用数据进行两次最终 OLS 拟合。因此,在 10 倍交叉验证的情况下,只执行了 22 次矩阵求逆运算,而在相同情况下,Ridge 正则化需要进行 100 次矩阵求逆运算。这种差异使我们能够预期 LNLM 模型的计算时间更短。

3.3 评估方法学

我们建议使用反映真实情况的模拟来评估 LNLM 模型的兴趣。在我们的情境中,建模的目的是确定两个变量之间的关系,而我们只能获得带有噪声的观测结果。因此,我们按照以下方法进行:

  • 首先模拟一个变量X,其分布类似于股票收益。

  • 然后,我们将与这个变量相关联的特定反应函数ϕ(X),该函数建模了目标与我们的自变量之间的关系。

$$ Y=\phi (X). $$(3.13)

  • 然后,我们将一个噪声项与该函数的输出关联起来,从而定义观察到的目标变量Y,如下所示:

$$ \overset{\sim }{Y}=\phi (X)+\varepsilon . $$(3.14)

  • 我们假设可以观察到X$$ \overset{\sim }{\mathrm{Y}} $$的值,但模型的函数形式以及随机部分对于外部观察者是未知的。我们将自己置于这个外部观察者的位置,尝试使用几种建模技术来拟合均值方程。

  • 一旦使用这些不同模型进行拟合,我们使用与之前相同的分布生成X的新值,并观察估计模型如何使用这些新值适合其原始目标,⁶ ϕ(X)。

这个实验设计因此捕捉了每种建模技术的 样本外预测能力,即其应对过拟合问题的能力。

X 服从自由度为 4 的学生 t 分布,因为已发现这种分布能够适当地模拟股票收益的分布情况(Platen & Rendek,2008)。为方便起见,在反应函数的定义中,超出区间[−6, +6]的值会被截断处理。⁷

建模金融市场通常是一项困难的任务,因为使用的数据非常嘈杂。我们关注的是在大量噪声存在的情况下测试不同建模技术的准确性,因此 ε 的值也将从自由度为 4 的学生 t 分布中抽取。

我们使用几个基础函数来生成不同的目标变量。我们的目标是获得一组代表性的可能出现在现实生活中的函数。因此,我们在区间 [−6, +6] 中定义了以下十三个函数:

  • 函数必须在其定义区间上平滑地运行,反映出在 LNLM 模型设计的实际案例中观察到此类函数的合理性。下面是函数的图形表示(图 3.3):

  • 函数的斜率不能太陡。合成观测是通过向拟合值添加噪声而创建的,这导致嘈杂数据与真实数据之间产生垂直距离。如果我们考虑一个斜率为无穷大的极端情况,即垂直线,任何嘈杂数据都将成为原始曲线的一部分,使得拟合过于简单。通过显示第二个函数的嘈杂观测(图 3.4)可以直观地了解发生了什么:

图 3.3

用于模拟的函数的图形表示

图 3.4

第二个函数的嘈杂观测(斜率 = 0.8)

  • 将斜率从 0.8 增加到 3,ceteris paribus,导致以下嘈杂数据(图 3.5):

图 3.5

第二个函数的嘈杂观测(斜率 = 3)

  • 因此,限制函数的陡峭程度是重要的,以避免揭示基础函数的显而易见的特性。

  • 子函数必须被选中以代表可能的各种功能形式。我们特别注意包括简单的常数、线性和二次函数,但我们也集成了许多未包含在 LNLM 模型本身中的子函数(这大约占到了所有函数的一半)。如果我们关心的是知识诚实,这最后一点非常重要,因为在 LNLM 模型设计的实际情况中,连接独立变量和目标变量的真实函数并不是由多项式组成的。

使用以下建模技术拟合生成的嘈杂目标变量:

  • 使用 OLS 估计的简单线性模型。估计使用 Python 库 statsmodels 0.6.1 进行。

  • 一个与 LNLM 模型相同阶数(4 阶)的多项式模型,使用 OLS 进行估计。此模型也使用 statsmodels 进行估计。

  • 与 LNLM 模型相同阶数的多项式模型,通过最小二乘法的岭正则化进行估计。估计使用 Python 的 scikit-learn 0.22.2 库的 “RidgeCV” 函数进行。这允许我们对正则化参数进行交叉验证。我们使用 10 折交叉验证对 13 个不同的 λ 值进行数值搜索,范围从 1e−8 到 1e+4。

  • 使用我们的变体分层 k 折交叉验证估计的 LNLM 模型。用于计算 LNLM 模型中 μ 值的折数设置为 10. OLS 拟合直接编码在 Python 中,使用 numpy 1.10.4 来求解 OLS 估计的协方差矩阵的逆矩阵。

  • 一个天真版本的 LNLM 模型,其 μ 设置为 0.5. 这个拟合允许我们控制 μ 的选择算法的相关性。

  • 一个非参数模型,即纳达拉-沃森估计量(见纳达拉亚(1964),沃森(1964)以获得正式定义)。非参数拟合的最重要参数,即带宽,也是使用交叉验证方法进行选择的。估计是使用 statsmodels 的核回归模块执行的。

我们还使用不同数量的观测值在向量X中,由于相同的模拟噪声,用小数据集可能比用大数据集更难识别基础功能。为了保持对现实主义的关注,对于向量X,我们使用了 126、252、756 和 1,260 个观测值的长度。这些数字来自于使用滚动窗口估计多项式的频繁使用。⁸

在每个模拟中,用于估计的X值的数据、噪声值的数据以及用于预测的X值的数据是从不同的随机种子生成的(来自 numpy 库)。

为了给读者一个关于拟合的现实感和难度,我们下面展示了我们生成的一些噪声数据的图示(图 3.6,3.7,3.8 和 3.9):

图 3.6

合成噪声数据示例:带有 126 个观测值的函数 8

图 3.7

合成噪声数据示例:带有 252 个观测值的函数 6

图 3.8

合成噪声数据示例:带有 756 个观测值的函数 11

图 3.9

合成噪声数据示例:带有 1,260 个观测值的函数 5

这些图表显示,与实际情况一样,由于模拟数据中存在大量噪声,拟合相对困难。

对于每个X长度,我们对上述定义的 13 个函数的每个函数运行了 1,000 次模拟,每次使用不同的随机种子,从而达到总共 52,000 次模拟。⁹

我们计算了所有这些情况下的样本外预测的均方根误差,这是我们的样本外拟合优度的指标。

我们还记录了每个模型的平均计算时间,包括用于执行估计的时间和用于执行预测的时间。

3.4 结果

接下来我们呈现每个X长度的结果表。

我们首先介绍了 RMSE 的摘要统计,它汇总了所有特定长度X的拟合结果。

然后,我们显示了每个函数的平均结果,以查看每个模型适合特定函数形式的能力。

我们最后通过呈现平均计算时间来总结。

3.4.1 对于 126 个观测值(表 3.1 和 3.2)

表 3.1

126 个观测值的根均方误差的摘要统计

均值 标准差 中位数 最小值 最大值
线性 2.82E−01 1.49E−01 2.70E−01 4.30E−03 1.08E+00
LNLM 3.18E−01 3.21E−01 2.53E−01 8.37E−03 7.66E+00
Naive LNLM 3.51E−01 3.34E−01 2.66E−01 1.76E−02 6.18E+00
非参数 2.94E−01 1.52E−01 2.77E−01 2.34E−04 2.05E+00
OLS 多项式 5.43E−01 6.82E−01 3.22E−01 3.00E−02 1.20E+01
岭多项式 5.63E−01 5.34E−01 4.08E−01 2.87E−03 1.01E+01

表 3.2

126 次观测每个函数拟合的平均均方根误差

线性 LNLM Naive LNLM 非参数 OLS 多项式 岭多项式
函数 #1 1.54E−01 2.15E−01 3.05E−01 2.77E−01 5.13E−01 5.05E−01
函数 #2 1.54E−01 2.25E−01 3.05E−01 3.60E−01 5.13E−01 7.93E−01
函数 #3 4.11E−01 5.14E−01 5.09E−01 3.84E−01 7.48E−01 9.67E−01
函数 #4 3.54E−01 3.58E−01 3.51E−01 3.28E−01 5.13E−01 6.80E−01
函数 #5 3.44E−01 3.52E−01 3.51E−01 2.79E−01 5.18E−01 3.96E−01
函数 #6 4.60E−01 3.94E−01 3.74E−01 3.96E−01 5.13E−01 4.84E−01
函数 #7 1.66E−01 2.30E−01 3.08E−01 2.62E−01 5.15E−01 4.42E−01
函数 #8 2.57E−01 2.97E−01 3.22E−01 3.17E−01 5.13E−01 6.48E−01
函数 #9 1.95E−01 2.42E−01 3.10E−01 1.93E−01 5.13E−01 2.65E−01
函数 #10 3.36E−01 3.82E−01 3.86E−01 3.68E−01 6.14E−01 1.09E+00
函数 #11 5.00E−01 4.77E−01 4.33E−01 3.18E−01 5.62E−01 5.24E−01
函数 #12 1.74E−01 2.34E−01 3.08E−01 1.84E−01 5.13E−01 2.68E−01
函数 #13 1.54E−01 2.17E−01 3.05E−01 1.58E−01 5.13E−01 2.59E−01
均值 2.82E−01 3.18E−01 3.51E−01 2.94E−01 5.43E−01 5.63E−01
标准差 1.26E−01 1.03E−01 6.20E−02 7.80E−02 6.84E−02 2.64E−01
中位数 2.57E−01 2.97E−01 3.22E−01 3.17E−01 5.13E−01 5.05E−01
分钟 1.54E−01 2.15E−01 3.05E−01 1.58E−01 5.13E−01 2.59E−01
最大值 5.00E−01 5.14E−01 5.09E−01 3.96E−01 7.48E−01 1.09E+00

252 次观测的 3.4.2(表 3.3 和 3.4)

表 3.3

252 次观测的均方根误差汇总统计

均值 标准差 中位数 最小值 最大值
线性 2.49E−01 1.42E−01 2.37E−01 4.43E−03 8.19E−01
LNLM 2.19E−01 1.59E−01 1.90E−01 4.28E−03 3.40E+00
Naive LNLM 2.25E−01 1.39E−01 2.02E−01 1.61E−02 2.75E+00
非参数 2.30E−01 1.02E−01 2.24E−01 1.61E−04 8.07E−01
OLS 多项式 2.87E−01 2.61E−01 2.27E−01 2.33E−02 5.36E+00
岭多项式 4.21E−01 3.28E−01 3.29E−01 7.52E−03 5.14E+00

表 3.4

252 次观测每个函数拟合的平均均方根误差

线性 LNLM Naive LNLM 非参数 多项式 OLS 岭回归多项式
函数 #1 1.10E−01 1.39E−01 1.69E−01 2.21E−01 2.61E−01 3.75E−01
函数 #2 1.10E−01 1.41E−01 1.69E−01 2.75E−01 2.61E−01 5.47E−01
函数 #3 3.93E−01 3.92E−01 3.67E−01 2.98E−01 4.35E−01 7.97E−01
函数 #4 3.33E−01 2.43E−01 2.33E−01 2.54E−01 2.60E−01 5.10E−01
函数 #5 3.22E−01 2.46E−01 2.33E−01 2.24E−01 2.67E−01 2.91E−01
函数 #6 4.32E−01 2.54E−01 2.67E−01 2.95E−01 2.61E−01 2.89E−01
函数 #7 1.25E−01 1.51E−01 1.74E−01 2.10E−01 2.64E−01 3.27E−01
函数 #8 2.25E−01 2.05E−01 1.96E−01 2.50E−01 2.61E−01 4.73E−01
函数 #9 1.56E−01 1.69E−01 1.78E−01 1.56E−01 2.61E−01 1.69E−01
函数 #10 3.09E−01 2.98E−01 2.71E−01 2.86E−01 3.68E−01 9.62E−01
函数 #11 4.77E−01 3.16E−01 3.21E−01 2.52E−01 3.12E−01 3.95E−01
函数 #12 1.34E−01 1.55E−01 1.73E−01 1.48E−01 2.61E−01 1.73E−01
函数 #13 1.10E−01 1.39E−01 1.69E−01 1.20E−01 2.61E−01 1.66E−01
平均值 2.49E−01 2.19E−01 2.25E−01 2.30E−01 2.87E−01 4.21E−01
标准差 1.35E−01 8.08E−02 6.52E−02 5.80E−02 5.45E−02 2.41E−01
中位数 2.25E−01 2.05E−01 1.96E−01 2.50E−01 2.61E−01 3.75E−01
最小值 1.10E−01 1.39E−01 1.69E−01 1.20E−01 2.60E−01 1.66E−01
最大值 4.77E−01 3.92E−01 3.67E−01 2.98E−01 4.35E−01 9.62E−01

3.4.3 对于 756 次观察(表 3.5 和 3.6)

表 3.5

756 次观察的均方根误差汇总统计

平均值 标准差 中位数 最小值 最大值
线性 2.18E−01 1.41E−01 1.96E−01 2.30E−03 5.47E−01
LNLM 1.29E−01 7.41E−02 1.10E−01 4.22E−03 6.40E−01
Naive LNLM 1.53E−01 8.08E−02 1.39E−01 1.67E−02 4.95E−01
非参数 1.52E−01 6.37E−02 1.50E−01 7.60E−05 7.02E−01
多项式 OLS 1.41E−01 7.18E−02 1.23E−01 1.72E−02 7.95E−01
岭回归多项式 3.08E−01 3.00E−01 1.81E−01 1.43E−02 1.24E+00

表 3.6

每个函数拟合的平均均方根误差,共 756 次观察

线性 LNLM Naive LNLM 非参数 多项式 OLS 岭回归多项式
函数 #1 6.53E−02 7.55E−02 8.19E−02 1.50E−01 1.14E−01 2.71E−01
函数 #2 6.53E−02 7.64E−02 8.19E−02 1.83E−01 1.14E−01 3.04E−01
函数 #3 3.79E−01 2.98E−01 3.08E−01 2.01E−01 2.95E−01 8.21E−01
函数 #4 3.12E−01 1.19E−01 1.74E−01 1.70E−01 1.14E−01 3.53E−01
函数 #5 3.00E−01 1.29E−01 1.72E−01 1.48E−01 1.22E−01 1.66E−01
函数 #6 4.00E−01 1.19E−01 2.13E−01 1.73E−01 1.14E−01 1.50E−01
第 7 号函数 8.57E−02 8.98E−02 9.07E−02 1.44E−01 1.19E−01 2.28E−01
第 8 号函数 1.97E−01 1.15E−01 1.24E−01 1.68E−01 1.14E−01 3.30E−01
第 9 号函数 1.20E−01 1.01E−01 9.57E−02 1.07E−01 1.14E−01 9.11E−02
第 10 号函数 2.88E−01 2.12E−01 2.15E−01 1.94E−01 2.13E−01 8.83E−01
第 11 号函数 4.59E−01 1.72E−01 2.63E−01 1.72E−01 1.68E−01 2.36E−01
第 12 号函数 9.51E−02 9.11E−02 8.82E−02 1.01E−01 1.14E−01 8.91E−02
第 13 号函数 6.53E−02 7.56E−02 8.19E−02 7.06E−02 1.14E−01 8.71E−02
平均 2.18E−01 1.29E−01 1.53E−01 1.52E−01 1.41E−01 3.08E−01
标准差 1.44E−01 6.46E−02 7.72E−02 3.85E−02 5.50E−02 2.58E−01
中位数 1.97E−01 1.15E−01 1.24E−01 1.68E−01 1.14E−01 2.36E−01
最小值 6.53E−02 7.55E−02 8.19E−02 7.06E−02 1.14E−01 8.71E−02
最大值 4.59E−01 2.98E−01 3.08E−01 2.01E−01 2.95E−01 8.83E−01

3.4.4 对于 1,260 个观测值(表 3.7 和 3.8)

表 3.7

每个函数的均方根误差汇总统计,共 1,260 个观测值

平均 标准差 中位数 最小值 最大值
线性 2.09E−01 1.40E−01 1.88E−01 2.94E−03 5.12E−01
LNLM 1.16E−01 6.61E−02 9.58E−02 1.12E−02 4.38E−01
Naive LNLM 1.43E−01 7.97E−02 1.22E−01 2.14E−02 3.83E−01
非参数 1.37E−01 5.17E−02 1.38E−01 2.95E−03 5.46E−01
普通最小二乘法多项式 1.26E−01 6.25E−02 1.08E−01 2.77E−02 4.88E−01
岭回归多项式 2.58E−01 2.70E−01 1.40E−01 1.20E−02 1.08E+00

表 3.8

拟合的每个函数的平均均方根误差,共 1,260 个观测值

线性 LNLM Naive LNLM 非参数 普通最小二乘法多项式 岭回归多项式
第 1 号函数 5.63E−02 7.02E−02 7.14E−02 1.38E−01 9.92E−02 2.28E−01
第 2 号函数 5.63E−02 7.07E−02 7.14E−02 1.64E−01 9.92E−02 2.06E−01
第 3 号函数 3.77E−01 2.84E−01 3.03E−01 1.77E−01 2.83E−01 7.89E−01
第 4 号函数 3.05E−01 1.02E−01 1.68E−01 1.54E−01 9.94E−02 3.22E−01
第 5 号函数 2.92E−01 1.10E−01 1.66E−01 1.34E−01 1.06E−01 1.31E−01
第 6 号函数 3.80E−01 1.01E−01 2.02E−01 1.50E−01 9.92E−02 1.33E−01
第 7 号函数 7.80E−02 8.27E−02 8.02E−02 1.26E−01 1.04E−01 1.90E−01
第 8 号函数 1.89E−01 9.78E−02 1.12E−01 1.45E−01 9.92E−02 2.61E−01
第 9 号函数 1.10E−01 8.87E−02 8.29E−02 9.91E−02 9.92E−02 7.85E−02
第 10 号函数 2.81E−01 1.93E−01 2.07E−01 1.74E−01 1.94E−01 6.78E−01
第 11 号函数 4.52E−01 1.53E−01 2.53E−01 1.53E−01 1.54E−01 1.83E−01
第 12 号函数 8.58E−02 8.19E−02 7.69E−02 9.41E−02 9.92E−02 7.70E−02
第 13 号函数 5.63E−02 6.97E−02 7.14E−02 7.87E−02 9.92E−02 7.52E−02
平均值 2.09E−01 1.16E−01 1.43E−01 1.37E−01 1.26E−01 2.58E−01
标准差 1.44E−01 6.17E−02 7.89E−02 3.07E−02 5.52E−02 2.25E−01
中位数 1.89E−01 9.78E−02 1.12E−01 1.45E−01 9.92E−02 1.90E−01
最小值 5.63E−02 6.97E−02 7.14E−02 7.87E−02 9.92E−02 7.52E−02
最大值 4.52E−01 2.84E−01 3.03E−01 1.77E−01 2.83E−01 7.89E−01

3.4.5 计算时间(表 3.9)

表 3.9

每种模型的平均计算时间

126 个观察值 252 个观察值 756 个观察值 1,260 个观察值 平均
线性 1.00E02 1.11E02 8.83E03 1.01E02 1.00E02
朴素 LNLM 1.31E02 1.60E02 1.43E02 1.55E02 1.47E02
OLS 多项式 2.16E02 2.25E02 1.98E02 1.78E02 2.04E02
LNLM 8.88E−01 9.65E−01 8.48E−01 9.00E−01 9.00E−01
Ridge 多项式 1.51E+00 1.60E+00 1.62E+00 1.36E+00 1.52E+00
非参数 1.52E+00 2.60E+00 9.07E+00 1.75E+01 7.67E+00

3.4.6 解释

从前面的表中可以得出各种有趣的结论。

首先,最明显的发现是 LNLM 模型提供的外样品拟合质量,它在每个不同窗口长度的中值 RMSE 方面超过了所有其他建模技术,并且在 4 个不同窗口长度中的 3 个中在平均 RMSE 方面仍然更好。

如预期的那样,我们注意到,就平均而言,LNLM 的朴素版本的结果总是比使用分层 K 折估计的 LNLM 的结果更差,这给了该算法和其选择的非线性倾向参数的相关性一定的可信度。关于正则化方法,我们还看到,不清楚 Ridge 正则化是否可以改善由 OLS 估计的多项式模型。然而,这可能是由于交叉验证中评估的 λ 值的精度不足,因为我们从一个 λ 值进步到另一个 λ 值的因子是 10。

值得注意的是,LNLM 模型通常不会在每个特定的函数形式中击败其他建模技术,甚至大多数时候会被其他技术击败。其他建模技术往往只在特定情况下占优势,其中最明显的例子是线性模型,当基础函数确实是线性时,即对于函数 1、2 和 13 时,线性模型取得了最佳结果。LNLM 模型只在聚合级别上表现出过度性能的出现是其对识别未知(和各种)函数形式的稳健性的良好迹象。

核密度估计器取得了良好的结果,尤其是对于小窗口。值得注意的是,其 RMSE 的标准差大部分时间都是最小的。然而,该模型的计算时间随着观测数量的增加而线性增长,导致平均计算时间较长。

除了这个模型,所有其他的计算时间都相对独立于观测值的数量。使用岭回归的正则化多项式估计时间比 LNLM 更长,然而,计算时间直接取决于交叉验证算法对λ的测试值数量。然而,仅通过测试 13 个不同的λ值,我们对于这个参数的数值优化有较低的精度(在当前设置中,对于 LNLM 测试了 100 个μ值)。这一发现很容易与 LNLM 与交叉验证岭回归所需的矩阵求逆次数(在我们的情况下分别为 22 和 130)的数量联系起来,这揭示了计算性能的差异。因此,在提出的复杂方法中,即非参数拟合、多项式正则化模型和 LNLM,所有使用相同交叉验证原理的方法中,LNLM 模型在计算时间方面似乎是一个令人信服的选择。

线性模型在 126 个观测值的小窗口下的性能非常好,因为它不会被大量的噪声愚弄,不像其他模型那样,但随着窗口的增大,性能变得越来越差,允许非线性技术更准确地识别潜在的函数形式。

对于多项式模型,相反的现象出现了,它在小窗口下完全被噪声愚弄,但对于大窗口,当潜在函数变得更容易捕捉时,表现相对良好,因为误差更频繁地互相抵消。

对于非常小或非常大的窗口,超出了本研究的范围,这两个模型可能会有趣,但对于研究者可能合理假设的用于日常金融数据处理的窗口,LNLM 模型似乎是一个令人信服的选择。

3.5 结论

我们已经介绍了 LNLM 模型的动机以及完整的拟合过程,并解释了与其他正则化方法(如岭回归)相比,它的特殊兴趣。

本章利用一个真实的模拟框架,演示了 LNLM 模型相对于几种替代方案可以成功减少过拟合的性能。当然,不能保证在所有可能的应用中都会出现这种情况,但这仍然强调了该模型在金融领域的兴趣。

此外,该模型具有数据驱动的功能形式的优势。另外,估计的潜在函数始终是平滑的,这对于几种计算应用以及对潜在函数的真实性表示(例如,非参数方法可能会出现一些 LNLM 从未发生过的中断)可能是优势。

估计特别快速,与非参数方法相比大大提高了计算时间,以及使用最近的 Python 库优化了计算时间的岭正则化多项式模型(程度较低)。在大数据的背景下,这一点尤为重要,因为多项式模型经常涉及其中。

所有这些 LNLM 模型的特性为可能被其他建模方法忽略的应用打开了一扇门。

第四章:市场回报预测

Thomas Barrau^(1  ) 和 Raphael Douady²

摘要

我们提出了一个来源于多模型估计的系统风险指标。多模型使我们能够衡量股市与其经济环境之间的联系强度。我们表明,在市场危机之前,这些联系往往更为极端,验证了相关性增加的众所周知的情况,同时提出了一个更加微妙的视角。我们实施了一个完全自动化且成功的交易策略来评估信号的兴趣,这一信号在经济和统计学上都表现出了强烈的显著性。结果在不同时间段、不同解释变量集合和 12 个不同的股票市场之间都是稳健的。

关键词

4.1 引言

在本章中,我们预测了 12 个主要股票指数的市场回报。

我们的方法扎根于广泛致力于市场危机预测的文献。这些文献往往依赖于识别一些群体行为。

Sornette (参见 Johansen et al. (2000) 和 Sornette (2009)) 是使用其 LPPL 模型(也在 Geraskin 和 Fantazzini (2013) 中有很好的描述)预测股市崩盘的先驱。本质上,该模型描述了股市价格在投机泡沫期间的演变。市场动态使用幂律和一些减小的周期振荡的组合进行建模。价格中的幂律是一组理性、信息充分的交易者的行动的结果,他们投资于投机泡沫,因为股市崩盘的风险被价格上涨的加速所弥补。振荡是由一组噪声交易者的随机行动产生的,他们表现出一些群体行为,例如通过对新闻的过度反应而被从理性价格中驱赶出去。振荡的减小是因为当幂律加强时,接近其最终奇点,所有市场参与者都认识到了泡沫并且表现得像理性交易者一样。请注意,市场参与者的这种行为意味着在接近股市崩盘时,交易者的行动水平会逐渐增加。

对于金融危机的预期通常还依赖于识别构成市场的资产之间的增加相关性。Patro 等人(2013)通过衡量银行股票收益之间的增加相关性提出了一个非常简单的系统性风险指标。这种方法有许多变种,有关调查请参见 Silva 等人(2017)。一些其他作者不仅限于识别银行之间的相关性。例如,Douady 和 Kornprobst(2018)开发了一种基于定义市场的股票的相关矩阵结构的方法。Zheng 等人(2012)使用基于市场指数的部门子组件之间的联系的指标来预测市场本身。Harmon 等人(2011)表明市场内部的群集也可以通过共同运动来捕捉。

但是这些增加的相关性也出现在市场本身之间,这在金融危机期间倾向于表现为一个市场(Junior&Franca,2012)。这一点尤为重要,因为它突显了外部原因也很重要,与内部动态一样。Ye 和 Douady(2019)使用 200 个外部因素来估计一个非线性多项式模型,在推导出一个系统性风险指标方面取得了成功的结果。他们的指标基于一个好的拟合指标的基本模型之间的总和,即 R²。我们的方法也依赖于评估股票市场指数及其环境之间的联系,使用非线性多项式模型。然而,尽管我们的系统性风险指标专注于拟合度,但我们不假设拟合度在金融危机期间应如何发展。特别是,我们不假设市场与其环境之间的联系在危机期间加强,我们将看到这种加强只是现象特征的一部分。

在本章中,我们首先介绍用于估计非线性多项式模型的数据结构。接下来,我们提出了一种经济派别无关且以时间点为基础的系统性风险指标。我们还分析了该指标在各个方面的表现。在第三部分中,我们模拟了一种交易策略,以便将该指标与其最自然的现实实现相对比:试图击败市场。第四部分专门用于进行一系列健壮性测试。最后,我们在结论部分总结了本章的发现和局限性,随后是参考文献。

4.2 数据

使用的数据中绝大部分(96%)由彭博提供,以每日收益的形式。¹ 由于所有数据都是市场数据,所以是即时的。数据包括我们的多模型的目标变量,即 12 个股票指数的收益,以及一个包括 1,134 个解释变量的因素集。数据集定义于 1995-01-02 至 2018-10-16 之间,尽管某些变量仅在此期间的一部分定义。之后,因素集随时间可用的变量数量如下所示(图 4.1):

图 4.1

因素集随时间的变量数量

目标股票指数如下:

  • 标准普尔 500 指数

  • 欧洲 STOXX 600 指数

  • 富时 100 指数

  • 东京证券交易所价格指数(TOPIX)

  • DAX 指数

  • CAC 40 指数

  • 瑞士市场指数

  • IBEX 35 指数

  • OMX 哥本哈根指数

  • OMX 赫尔辛基指数

  • OMX 斯德哥尔摩 30 指数

  • MSCI 意大利指数

因素集是根据可用数据设计的,以达到对世界金融市场的近乎完整的代表性。然而,我们允许在股票指数方面存在重要的偏差,因为目标变量本身就是股票。这个选择也受到此资产类别涵盖的主题数量更广泛的影响(地区指数、国家指数、部门指数、因子指数等)。以下是因素集的资产类别分配(图 4.2):

图 4.2

因素集的资产类别分配

我们对因素集代表性的关注也包括地理覆盖范围的问题。为了从不同角度解决这个问题,我们选择了一些区域特定因素以及一些国家特定因素。

区域特定因素包括多个地理划分。在最包容的层面上,我们有一些世界或不包括美国的世界因素。最简单的划分然后是发达市场和新兴市场之间。最后,区域特定因素还包括一些大陆因素。区域特定因素占因素集的 34%,所有其他因素都是国家特定的。区域特定因素的分配如下表 4.1 所示:

区域特定因素的分配

世界 60.41%
美国以外世界 4.88%
发达市场 6.17%
新兴市场 4.88%
欧洲 5.91%
亚太地区 5.40%
非洲和中东 4.37%
南美 4.11%
北美 3.86%
总计 100.00%

因此,特定国家因素占因素集的 66%。以下是它们的分配(表 4.2):

国家特定因素的分配

美国 10.34%
中国 5.50%
日本 3.76%
意大利 2.82%
瑞士 3.09%
澳大利亚 3.36%
马来西亚 2.68%
英国 3.09%
埃及 2.55%
印度尼西亚 2.42%
新西兰 2.42%
俄罗斯 2.42%
台湾 2.68%
奥地利 2.28%
法国 2.55%
韩国 2.28%
波兰 2.28%
西班牙 2.28%
比利时 2.15%
德国 2.42%
香港 2.15%
墨西哥 2.15%
荷兰 2.15%
巴西 2.01%
沙特阿拉伯 2.15%
南非 2.01%
土耳其 2.01%
阿联酋 2.01%
加拿大 2.68%
挪威 1.88%
瑞典 1.88%
哥伦比亚 1.74%
丹麦 1.74%
希腊 1.74%
泰国 1.74%
印度 1.61%
阿根廷 1.48%
尼日利亚 1.21%
乌克兰 1.21%
牙买加 0.67%
孟加拉国 0.27%
伊朗 0.13%
总计 100.00%

4.3 系统风险指标

4.3.1 模型估计

对于考虑的每个股票市场,导出我们的系统性风险指标的方法是相同的。

首先我们估计一个多模型:$$ \left{Y={\varphi}_i\left({X}_i\right)\kern1em \forall i\right}. $$(4.1)多模型是使用 LNLM 模型估计的,如第三章所述:$$ LNLM(X)\stackrel{\scriptscriptstyle\mathrm{def}}{=}\overline{y}+\mu \sum \limits_{h=1}u{\hat{\beta}}_h{NonLin}{H}_h(X)+\left(1-\mu \right){\hat{\beta}}^{Lin}X+\varepsilon \Rightarrow \left{Y={LNLM}_i\left({X}_i\right)\kern1em \forall i\right}. $$(4.2)多模型是基于滚动基础估计的,使用 5 年的窗口。尽管数据以每日频率可用,但由于我们的计算资源限制,我们只在每月重新执行估计。我们转换每日收益以获得一些月度收益³,这可能显示出更清晰的模式。解释变量的因子集由一个月的滞后产生,以便为我们提供一个明确的因果方向(作为积极的副作用,它还确保我们避免由于国际市场的异步性而使用未来信息):$$ \left{{Y}_t={LNLM}_{i,t}\left({X}_{i,t-1}\right)\kern1em \forall i\right}. $$(4.3)一旦对给定日期完成估计,我们计算每个组成多模型的基本模型的拟合优度指标,即均方根误差。此指标捕获了给定因子与预测股市之间联系的强度。为了删除最不显著的因子,我们过滤多模型以仅保留最低的 80% 均方根误差。

4.3.2 系统性风险指标定义

RMSEs 的分布是市场与其整个经济环境保持联系的简单表示。它类似于具有相关性分布,然而,它是一个更一般的表示,因为它允许链接是非线性的,这要归功于使用 polymodels。我们指标的基础是一个假设:在危机爆发之前存在特定的 RMSEs 分布。

RMSEs 的分布是通过简单的核密度估计获得的(参见 Parzen,1962; Rosenblatt,1956)。带宽选择根据 Silverman 的经验法则完成(Silverman,1986)。

首先,我们仅选择后续 3 个月市场回调的 RMSE 分布。我们对危机前分布的表示是这些分布的滚动平均值,以随后 3 个月回报的平方加权(我们假设后续回调越大,分布越具代表性)。滚动平均值采用指数加权方案,半衰期为 10 年,这使我们能够略微加权最近的分布,而非常旧的危机前分布表示则被考虑得越来越不重要。当然,这种滚动表示被适当地移动,以便在每个时间点上,它不使用任何未来信息。

‘正常时期’的分布由市场后 3 个月回报的所有 RMSE 分布的平均值表示,无论该回报的符号如何。

因此,我们得到了每个我们分析的 12 个股票指数的危机前分布的表示和正常时期分布的表示。

一旦获得危机前分布的表示,我们计算这个分布与当前 RMSE 分布之间的 Hellinger 距离。Hellinger 距离越小,市场越接近危机前情况。在下图 4.3 中,我们显示了平均 Hellinger 距离到危机前分布的演变:

图 4.3

平均 Hellinger 距离到危机前分布,随时间变化。

Hellinger 距离绘制的图案清楚地反映了 2008 年金融危机之前的投机泡沫,以及其爆裂。假设这种模式确实具有预测性,那么距离的减小将是关于未来市场回报的负面信号,反之亦然。

我们的系统性风险指标简单地复制了这种推理,其定义为 Hellinger 距离变化的符号:$$ {SRI}_t\stackrel{\scriptscriptstyle\mathrm{def}}{=}\left{\begin{array}{c}1\kern0.5em if\kern0.5em \mathcal{H}\left({\mathcal{R}}_t{Current},{\mathcal{R}}_t{Pre- Crisis}\right)<\mathcal{H}\left({\mathcal{R}}_{t-1}{Current},{\mathcal{R}}_{t-1}{Pre- Crisis}\right)\ {}0\kern0.5em if\kern0.5em \mathcal{H}\left({\mathcal{R}}_t{Current},{\mathcal{R}}_t{Pre- Crisis}\right)\ge \mathcal{H}\left({\mathcal{R}}_{t-1}{Current},{\mathcal{R}}_{t-1}{Pre- Crisis}\right)\end{array}\right. $$(4.4)这里,“$$ {\mathcal{R}}_t^{Current} $$”是当前日期“t”的 RMSE 分布,“ $$ {\mathcal{R}}_t^{Pre- Crisis} $$”是日期“t”可用的 RMSE 预危机分布的上一个表示,“ $$ \mathcal{H}\left(\ \right) $$”是 Hellinger 距离。Hellinger 距离在我们的离散框架中被定义为:$$ \mathcal{H}\left({\mathcal{R}}_t{Current},{\mathcal{R}}_t{Pre- Crisis}\right)\stackrel{\scriptscriptstyle\mathrm{def}}{=}\frac{1}{\sqrt{2}}\sqrt{\sum \limits_{i=1}n{\left(\sqrt{{\mathcal{R}}_{i,t}{Current}}-\sqrt{{\mathcal{R}}_{i,t}^{Pre- Crisis}}\right)}²} $$(4.5)这里,“$$ {\mathcal{R}}_{i,t}^{Current} $$”是给定因子“i”当前日期“t”的 RMSE 值,“ $$ {\mathcal{R}}_{i,t}^{Pre- Crisis} $$”是因子“i”的 RMSE 值,从日期“t”可用的 RMSE 预危机分布的上一个表示中绘制而得。例如,我们在 Stoxx Europe 600 的情况下在下面显示⁴ 指标(图 4.4):

图 4.4

系统性风险指标和 Stoxx Europe 600

尽管该指标并不完美,但乍一看,它似乎在大多数市场回调期间激活,即使有一些误报。

4.3.3 初步分析

如果我们对系统风险指标的主要预测能力测试是实施交易策略,我们首先进行简单分析以更好地理解指标的性质。

首先,我们展示了由最大似然估计得到的 Logistic 回归的 t 统计量(表 4.3)。由于我们在指标构建中确定的危机前分布被定义为后续出现负 3 个月市场回报,我们感兴趣的变量是代表未来 3 个月回报符号的虚拟变量。解释变量当然是系统风险指标本身:表 4.3

对未来市场回报方向的 Logistic 回归摘要风险指标

a. 全样本 b. 次贷危机期间(2007 年–2009 年) c. 次贷危机后期(2010 年–2018 年)
德国 DAX 指数 −4.08171 (***) −3.870322 (***) −2.629115 (***)
瑞士 HEX 指数 −7.097665 (***) −9.184638 (***) −6.63464 (***)
西班牙 IBEX35 指数 −5.653079 (***) −7.82105 (***) −3.826911 (***)
德国 KAX 指数 −9.003569 (***) −6.395333 (***) −5.249408 (***)
墨西哥 IPC 指数 −10.995961 −11.167755 (***) −1.806702 (*)
中国 A 股指数 −5.725893 (***) −7.115673 (***) −0.018437 ()
瑞典 OMX 指数 −1.126313 () −1.793216 (*) 0.137003 ()
瑞士 SMI 指数 −7.651904 (***) −8.600267 (***) −2.39497 (**)
美国标准普尔 500 指数 −9.898438 (***) −7.752158 (***) −10.863697 (***)
欧洲 SXXP 指数 −9.53557 (***) −9.376226 (***) −3.017459 (***)
日本 TOPIX 指数 −17.485469 (***) −5.240356 (***) −11.043662 (***)
英国 FTSE100 指数 −5.492477 (***) −10.047277 (***) 1.483732 ()
平均值 7.812337 ()* 7.363689 ()* 3.822022 ()*
中位数 −7.374785 −7.786604 −2.823287
标准差 4.112063 2.691223 4.024313
最小值 −17.485469 −11.167755 −11.043662
最大值 −1.126313 −1.793216 1.483732

在全样本中,系统风险指标在 12 个市场中的 11 个市场中具有高度显著性,这是其预测能力的一个良好迹象。

由于该指标设计精确地预期危机,我们还进行了一些子样本回归,以比较 2008 年次贷危机期间和随后的十年期间(较为平静)指标的表现。结果在所有市场中的 p 值均显著达到 1%的水平,除了 OMX,在危机期间仅达到 7%的 p 值。尽管该指标在第二个时期的整体显著性较低,但它继续在大多数市场中证明具有很高的预测能力。

表 4.4 以下显示了信息系数,这应该与从业者的参考文献共鸣。我们计算了与未来 3 个月回报符号及其值的 IC⁵。有趣的是,在所有情况下预测未来回报的符号是不够的,对于瑞士 HEX 指数和 KAX 指数来说,IC 减少的值是重要的。表 4.4

系统风险指标的信息系数

DAX 指数(%) HEX 指数(%) IBEX 指数(%) KAX 指数(%) MXIT 指数(%) NCAC 指数(%) OMX 指数(%) SMI 指数(%) SPX 指数(%) SXXP 指数(%) TPX 指数(%) UKX 指数(%)
未来回报符号 −6.06 −10.56 −8.40 −13.43 −16.40 −8.51 −1.67 −11.39 −14.79 −14.22 −26.29 −8.16
未来回报价值 −4.80 −0.95 −7.40 −4.81 −14.08 −9.47 1.63 −8.40 −9.34 −13.42 −27.82 −6.71

这些 IC 之间的差异(IC:信息系数)在很大程度上可以通过一些先于市场大幅回报的假阳性/假阴性来解释。

总结这一初步分析,我们考虑指标之间的相关矩阵。该矩阵显示指标之间存在高水平的相关性,平均相关性为 58%(不包括对角线)。这样的配置要求系统性风险指标是否适应每个市场,或者它只是预测一种“平均市场”。回顾该指标预测下一个 3 个月市场回报的符号,我们将这些符号的相关矩阵与指标的相关矩阵进行比较(图 4.5 和 4.6)。

图 4.5

系统性风险指标的相关矩阵

图 4.6

3 个月市场回报的符号相关矩阵

比较这两个矩阵得出结论:指标之间的相关性仅反映市场回报之间的相关性。第二个矩阵的平均相关性与第一个矩阵的相似:57%。

我们还应考虑一些相关性特别低的指标,例如 HEX 和 TPX 的指标,在 t 统计量方面表现良好。因此,我们可以合理地认为我们的系统性风险指标适应了每个不同市场的特定情况。

4.3.4 预测能力的根源

为了更好地理解系统性风险指标用于预测未来回撤的模式,我们对 RMSE 的危机前和正常时期分布进行了聚合分析。

我们没有使用这两个分布的滚动平均值,而是直接计算了分布的全样本平均值。然后,我们再次对各个市场的全样本平均分布进行平均,以便获得正常情况和危机前案例的单一代表性分布。

这些代表性分布⁶使我们能够理解危机发生前发生了什么:

图 4.7 似乎显示了一些 RMSE 的同时增加和一些 RMSE 的减少。如果我们计算这两个分布的密度差异,这一现象将变得更加明显(图 4.8):

图 4.7

代表性 RMSE 分布

图 4.8

正常时期和危机前分布之间的前期密度差异

上面,我们将密度差异分成三个区域,大致对应于分布的左尾、分布的中心和右尾。在分布的中心,密度明显减少,这意味着在危机之前,通常与股票指数适度相关的因素的数量减少。我们注意到左尾增加,这对应于文献中已经很好地记录的相关性增加。但令人惊讶的是,大部分在中心消失的密度出现在右尾,这意味着通常相关的一些因素的去相关性是危机前时间的一个重要特征。更具体地说,在中心消失的密度中,69.7% 转移到右尾,只有 30.3% 转移到左尾。这些发现,基于市场中的平均代表性分布,似乎也适用于每个市场,在其中右尾和左尾的 fat tail 大多数时间是共存的,尽管右尾 fat tail 似乎更频繁发生(请参见附录:每个股票指数的代表性 RMSE 分布)。

4.4 交易策略

我们对系统风险指标的性能的主要评估是通过模拟交易策略来完成的。

4.4.1 方法论

模拟交易策略非常简单:我们始终获取市场的回报,但杠杆是可变的,当风险关闭时为 0.5,当风险开启时为 2。由于现在有各种各样的杠杆 ETF 可用,我们假设没有交易成本。(参见注释 7)这也是有道理的,因为由于系统风险指标仅每月计算一次,所以杠杆 ETF 的潜在变化也仅发生一次。

对于每个股票指数,我们计算市场的夏普比率以及市场时机组合的夏普比率。然后,我们计算市场的夏普比率的平均值,以及市场时机组合的夏普比率的平均值。这个平均夏普比率的改善百分比是我们综合分析的核心数字。

我们通过计算其 p 值来评估这个数字的显著性。p 值的生成如下:

  • 对于每个市场,我们计算 Hellinger 距离变化的符号,就像我们对系统风险指标一样。

  • 我们在样本时间段内对这些信号进行重新排列,使它们以与 SRI 中相同的比例但在不同的时间点出现。

  • 基于重新排列的指标,我们使用相同的交易策略计算新的市场定时投资组合的表现。

  • 然后,我们计算我们感兴趣的度量,即市场夏普比率的平均改善。

  • 我们重复这个过程 1,000 次,这样我们就得到了随机平均夏普改善的分布。

  • 为了避免p-值计算中的某些阈值效应,使用核密度估计对分布进行了平滑处理。

  • 给定这个分布,我们只需计算我们最初获得的改善水平的概率。

注意,这个过程最终仅评估信号出现的时刻的相关性,并确保性能不太可能来自随机机会,或者来自交易策略的特定设计。

4.4.2 结果

表 4.5 总结了交易策略的结果,通过呈现每个市场的夏普比率及其改善: 表 4.5

从交易策略获得的夏普比率改善

市场 市场定时投资组合 改善 (%)
DAX 指数 0.12 0.31 148
HEX 指数 0.20 0.25 21
IBEX 指数 0.19 0.45 141
KAX 指数 0.38 0.73 89
MXIT 指数 0.02 0.30 1,275
NCAC 指数 0.09 0.47 394
OMX 指数 0.28 0.53 88
SMI 指数 0.14 0.50 267
SPX 指数 0.35 0.68 95
SXXP 指数 0.17 0.53 205
TPX 指数 0.00 0.35 12,381
UKX 指数 0.21 0.50 140
平均值 0.18 0.47 157

每个市场的表现都通过交易策略得到了改善,并且夏普比率的增加在经济上具有重要意义。

使用先前提到的方法计算的平均改善的p-值⁸为 0.06%,证实了性能也具有统计学意义。

我们在下面展示了随机表现的分布(图 4.9):

图 4.9

随机生成的平均夏普改善分布

在 1,000 个模拟的随机投资组合中,只有一个比所提议的投资组合更好。这个分布也强调了击败市场是极其困难的事实,因为其平均值为 −14.62%。

注意,平均而言,市场定时投资组合有 41% 的时间进行对冲,这是不过度拟合的一个好迹象。事实上,由于每个月重新决定杠杆,随着时间的推移会进行大量不同的投注。与在 20 年模拟中仅对市场进行少数几次投注的指标相比,这显着降低了挑选危机指标的机会。

仍然以之前的例子为例,我们展示下面的策略对 Stoxx Europe 600⁹的表现(完整结果请见附录:按股票指数的市场时机组合和系统风险指标)(图 4.10):

图 4.10

Stoxx Europe 600:市场时机组合与市场组合(等波动性)

4.5 鲁棒性测试

在之前的发展中,我们已经看到指标的频繁变化是防止过度拟合的一个很好的保护措施,并且在子样本中指标仍然具有预测能力。我们通过一系列鲁棒性测试来补充这些发现,评估交易策略的性能对我们所做设计的敏感性。

对于每一个鲁棒性测试,我们提供交易策略显著性的变化,统计学意义上的(p值)和经济意义上的(平均夏普比率改善,策略击败市场的指数数量)。

4.5.1 对噪声滤波器的敏感性

回想一下,我们使用了一个非常简单的过滤器从 RMSE 分布中去除了噪声因素,这个过滤器只保留了 RMSE 方面排名前 X%的最佳解释变量。这个参数最初设置为 80%,以保留大多数因素。

我们可以在表 4.6 中看到这个选择似乎是合理的:表 4.6

对于平均夏普比率改善的敏感性和噪声滤波器

过滤器分位数(%) 平均改善(%) p值(%) 正改善百分比(%)
100 61.13 7.52 (*) 100.00
95 138.78 0.01 (***) 100.00
90 152.77 0.00 (***) 100.00
85 148.82 0.01 (***) 100.00
80 157.49 0.06 (***) 100.00
75 153.45 0.04 (***) 100.00
50 92.54 0.61 (***) 100.00
25 58.08 3.16 (**) 100.00
10 −0.86 33.49 () 58.33

从表 4.6 中可以提取的第一个发现是,交易策略的表现对于特定过滤级别的选择是鲁棒的,除了在极端区域。

其次,我们的方法是选择一个合理的过滤器值。确实,可以使用 99%分位数达到更高水平的历史表现,然而,这样的选择似乎对于 100%分位数的性能来说是危险的。在这个区域内的一些变量似乎在 RMSE 分布中引入了很多噪声,并且在一个相关和一个噪声变量之间的边界在这个区域是非常薄的。

作为第三点,我们想要提到的是,绝大多数因子集似乎对危机预测很重要。这强调了选择一个大的因子集来描述我们正在预测的股票指数的整个经济环境的必要性。

4.5.2 对未来收益窗口的敏感性

该指标设计为预测市场未来 3 个月的收益的符号。这个选择是根据一些从业者的启发式规则做出的,1 个月通常被认为对于危机预测来说太嘈杂,而接下来的几个月被认为不太可预测。我们对这个参数的敏感性分析证实了这个观点,同时显示了交易策略对这个参数的明确鲁棒性(表 4.7)。表 4.7

未来收益窗口的平均夏普比率改善的敏感性

未来收益窗口 平均改善 (%) p 值 (%) 正改善百分比 (%)
1 个月 117.11 0.12 (***) 83.33
2 个月 131.78 0.10 (***) 100.00
3 个月 157.49 0.06 (***) 100.00
6 个月 147.46 0.00 (***) 100.00
9 个月 139.71 0.00 (***) 100.00
12 个月 115.93 0.00 (***) 100.00

4.5.3 对半衰期的敏感性

预危机 RMSE 分布是根据过去观察的指数加权方案在滚动基础上定义的。当前预危机分布 '忘记' 过去事件的速度由这个指数窗口的半衰期控制。我们的选择是将其设置为 10 年,以便具有考虑非常老的事件的表现,同时更加关注当前。

下表显示这是一个不错的选择(即使不是最好的选择)。此外,策略绩效对该参数的鲁棒性仍然相当好(表 4.8)。表 4.8

平均夏普比率改善对指数窗口的半衰期的敏感性

指数窗口的半衰期 平均改善 (%) p 值 (%) 正改善百分比 (%)
20 年 149.82 0.11 (***) 100.00
15 年 152.46 0.10 (***) 100.00
10 年 157.49 0.06 (***) 100.00
5 年 161.12 0.00 (***) 100.00
3 年 154.84 0.00 (***) 100.00
1 年 96.74 0.41 (***) 100.00

4.5.4 对滚动窗口长度的敏感性

我们用于计算 RMSE 的 polymodel 本身是根据滚动基础上估计的。

我们可以看到下面的表明用于该估计的滚动窗口的长度是一个重要参数(表 4.9):表 4.9

平均夏普比率改善对 polymodel 估计窗口的敏感性

polymodel 估计窗口 平均改善 p 正改善百分比
6 年 27.09 9.01 (*) 91.67
5 年 157.49 0.06 (***) 100.00
4 年 56.84 8.32 (*) 75.00
3 年 78.38 1.24 (**) 91.67

尽管平均值和 p-value 在所有情况下的改进仍然显著,但在其他稳健性测试中,从经济和统计角度来看,程度要小得多。因此,估计的质量特别与此参数相关联:较短的窗口包含较少的数据点,并使拟合以及其拟合度指标变得不太可靠,而较长的窗口则估计一个演变速度过慢的模型,因此无法有效捕捉市场的相对快速动态。考虑到这种推理和上述结果,5 年期窗口似乎是相当合理的。

然而,特别是因为我们正在衡量交易策略的表现,确保能够基于我们的系统性风险指标构建稳健的交易策略至关重要。因此,为了限制随意选择窗口参数的风险,我们重新计算指标和策略的表现,使用一个 6 年、一个 5 年、一个 4 年和一个 3 年滚动窗口的 RMSE 的平均值。使用这个平均 RMSE 计算指标是一种简单的方法,可以使其对特定窗口的选择更加稳健。

结果是这个“窗口稳健策略”仍然表现得相当不错。平均改进率为 95%,与 p-value 的 0.16% 相关联。在这个策略的版本中,之前的数字仍然是可比较的,平均随机改进率为 −12.63%,样本内平均对冲率为 35.96%,有 11 个股票指数超过市场。最终,即使被更弱的版本所稀释,我们的交易策略也能够取得强劲的结果(表 4.10):Table 4.10

对于“窗口稳健策略”的夏普比率的改进

市场 市场定时组合 改进 (%)
DAX 指数 0.12 0.06 −49
HEX 指数 0.20 0.29 41
IBEX 指数 0.19 0.33 73
KAX 指数 0.38 0.76 99
MXIT 指数 0.02 0.13 502
NCAC 指数 0.09 0.32 235
OMX 指数 0.28 0.30 7
SMI 指数 0.14 0.34 153
SPX 指数 0.35 0.62 76
SXXP 指数 0.17 0.43 149
TPX 指数 0.00 0.24 8,311
UKX 指数 0.21 0.40 93
平均 0.18 0.35 95

4.5.5 资产类别特定表现

对于这个测试,我们将因子集限制为单个资产类别。进行此测试有两个动机:

  • 测试每个资产类别对整体危机预测的贡献。

  • 在较小的程度上,它还使我们能够测试我们提出的结果是否不受特定数据集的选择的限制。

在这里,我们的分析仅限于包含足够因子来估算分布的资产类别,因此房地产、对冲基金和波动性被排除在外。表 4.11 表明,没有任何资产类别在聚合因子集中单独占据主导地位。这证明了因子资产类别的多样性有助于预测的质量。表 4.11

对资产类别夏普比率平均改进的敏感性

资产类别 平均改进 (%) p-值 (%) 正改进的百分比 (%)
股票市场 104.89 0.33 (***) 91.67
股票因素 29.99 12.55 () 66.67
货币 67.51 1.47 (**) 83.33
商品 71.20 0.62 (***) 100.00
公司债券 33.79 9.87 (*) 83.33
主权债券 66.99 0.72 (***) 91.67
货币市场 −32.26 62.51 () 16.67

根据这些结果,很明显股票市场是最重要的资产类别,这是一种自然的发现。然而,大多数其他资产类别也在这种独立基础上表现良好,这表明交易策略可以独立于特定因子集的选择而执行。

4.5.6 对交易策略的敏感性

现在我们讨论我们观察到的表现程度是我们特定杠杆选择的结果。由于返回的全样本波动率被标准化,使得市场和交易策略可以比较,控制策略攻击性的是风险关闭杠杆和风险开杠杆之间的差异的大小,而不是杠杆本身的水平。因此,我们尝试改变风险关闭杠杆,同时将风险开杠杆保持恒定为 2。

此外,我们尝试了一个 In/Out 策略,在这种策略中,当风险关闭时杠杆被设置为 0。

最后,我们也允许做空操作,使得策略变得极具攻击性和危险性,因为众所周知市场平均上涨。

下面是针对这些不同设置的结果(表 4.12):表 4.12

对杠杆使用的平均夏普比率改进的敏感性

风险关杠杆 | 风险开杠杆 平均改进 (%) p-值 (%) 正改进的百分比 (%)
风险关 -1 | 风险开 2 201.88 0.14 (***) 91.67
风险关 -0.5 | 风险开 2 215.39 0.09 (***) 100.00
风险关 0 | 风险开 2 201.83 0.07 (***) 100.00
风险关 0.25 | 风险开 2 182.78 0.06 (***) 100.00
风险关 0.5 | 风险开 2 157.49 0.06 (***) 100.00
风险关 1 | 风险开 2 99.19 0.08 (***) 100.00

非常显著的是,p-值对性能水平相当不敏感,这是一个很好的指标,表明我们提出的用于计算这个 p-值的方法是可靠的。

请注意,当我们增加攻击性时,表现始终会增加,直到−1|2 的情况。这是一个极其强烈的预测力的迹象,表明该策略在空头销售中仍然生存,并且在这种框架下甚至变得更好。然而,如果要使用空头销售,应该小心进行。

实际上,在−0.5|2 的情况下,平均随机改善为−49%,这清楚地表明,空头销售市场是一种极端危险的策略,对于这种策略,我们应该对基础信号有极高的信心。

然而,如果该策略成功,这也是一个极端的点:在下面,我们展示了 Stoxx Europe 600 的示例,其中−0.5|2 策略达到了 1,242.44 点的最终水平(2001 年基数 100),而市场的最终水平为 165.92 点(请记住,两个投资组合的回报率具有相同的波动性)(图 4.11)。

图 4.11

Stoxx Europe 600:具有激进杠杆策略的定时市场投资组合,与市场投资组合(等波动性)相比

4.6 结论

在本章中,我们介绍了基于多模型的系统性风险指标及其相关交易策略。

该指标的预测能力已经在几个市场和时间段上被证明在统计学和经济学上是显著的。这些结果在进行的测试中被发现是稳健的。然而,通过选择/组合更好/不同的策略参数可以增加策略的稳健性以及其性能。

在改进指标设计方面,可以探索不同的路径。在计算资源的限制下,以每日频率估计指标可能会改变游戏规则,因为该指标有时只会在市场下跌开始几天后出现高峰。应该还要测试为指标开发的方法,以查看它是否能够预测市场的反弹。实际上,可能会发生一些特定的赶羊行为,例如在投机泡沫开始时。如果是这样,还可以通过区分狂热的模仿和集体恐慌来改进危机指标。

这最后一点强调了加强指标的经济基础的必要性。在危机之前更好地了解哪些因素在经济上最相关或最不相关以及它们为什么会相应行动尤其重要。

指标还应与现有替代方案进行比较,以衡量其如何为旨在从各种市场定时信号中获益的投资组合增加价值(例如,其表现可以与其他市场压力指标进行比较,例如芝加哥联邦储备银行的全国金融状况指数(NFCI))。

文献已经确定了几个系统风险指标。然而据我们所知,截至撰写本文时,所有这些指标都是基于相关性的增加。本章通过识别另一种、同时可能更强烈的因素去相关化现象,为文献增加了价值。考虑到代表性的危机前分布形状以及系统风险指标取得的结果,这一发现可能是理解金融危机的关键之一。

第五章:行业回报预测

Thomas Barrau^(1  ) 和 Raphael Douady²(1)AXA 投资管理者 Chorus Ltd,香港,中国香港特别行政区。(2)巴黎第一索邦大学经济中心,法国巴黎。

摘要

我们提出了一个新的因子,用于预测股票市场上行业回报的横截面。该因子基于反脆弱性的度量,指出市场参与者对市场和行业回报之间的非线性关系定价。它被证明与其他众所周知的行业因子不同,包括下行贝塔和共偏斜因子,这些因子完全被反脆弱性因子所包含。从该因子推导出的交易策略表现出 1.10 的夏普比率,并成功通过了各种稳健性测试。

关键词:反脆弱性、LNLM 建模、行业回报横截面、交易策略、交易信号、股票回报预测、共偏斜、下行贝塔

5.1 引言

在本章中,我们预测股票回报的行业组成部分的回报。更确切地说,我们研究了一个能够预测未来行业回报的市场反脆弱性因子的存在。

自从 Fama 和 French (1993) 以来,一直有一项长期传统,即确定解释股票回报横截面的因素。然而,只有少数论文涉及预测行业回报横截面的问题,其中最著名的例子之一是 Asness 等人 (2000)。在当前章节中,我们为这一特定主题的文献添砖加瓦。

我们将市场的反脆弱性定义为行业回报对市场冲击的非线性响应的凸性。支持反脆弱性因子表现的经济原理可以从行为学和经典金融的有效市场两个角度来看。

从有效市场假说的角度来看,反脆弱性因子可以解释为一种风险溢价。利用反脆弱性信号构建的投资组合在脆弱行业上建立多头头寸,并在抗脆弱行业上建立空头头寸。因此,对于极端市场事件,该投资组合因其在行业上的凹位而遭受损失,特别是由于其损失随市场变动幅度的加剧而加剧。由于这类事件的发生概率很低,投资组合的行为将会出现一些偶发性的崩溃。这些回撤在模拟的损益曲线中可以清楚地识别出来。因此,脆弱行业的持续异常回报可能被视为对它们所承担的极端风险的补偿,即作为一种风险溢价。

从行为金融的角度来看,反脆弱性因子也可能是合理的。事实上,我们可以认为脆弱的行业构成了一个投资机会,因为投资者过度购买了反脆弱的行业。这种行为与投资者的损失厌恶偏向非常一致,他们宁愿以非常高(太高)的价格购买反脆弱的行业,也不愿承受极端损失的风险。

市场风险作为解释股票回报横截面的因素已经被广泛探讨。

低贝塔异常,例如贝克等人(2011)提出的,在股票回报横截面中是一个众所周知的预测因子。低贝塔指的是在以股票回报为目标变量、市场回报为解释变量的线性模型中估计的参数。从长期来看,低贝塔(和低波动)股票表现优于高贝塔(高波动)股票。这种现象更符合市场异常而不是风险溢价解释,因为风险较高的股票表现最差。这与我们观察到的反脆弱风险度量完全相反,这并不使低贝塔异常成为一个非常有希望的解释候选。尽管如此,由于贝塔是线性模型的一阶导数,而反脆弱性是非线性模型的平均二阶导数,我们应该对其进行控制。

如 Ang 等人(2006)所示,下行贝塔是一种旨在捕捉下行风险的风险度量。它指的是作为一个市场贝塔被估计为:$$ {\beta}^{-}=\frac{\mathit{\operatorname{cov}}\ \left({r}_a,{r}_m|{r}_m<{\overline{r}}_m\right)}{\mathit{\operatorname{var}}\ \left({r}_m|{r}_m<{\overline{r}}_m\right)} $$(5.1)这里 r[a] 是给定股票 a 的回报,r[m] 是市场的回报,而 $$ {\overline{r}}_m $$ 是市场的平均回报。因此,它简单地是一个在只考虑市场下行回报时评估的贝塔。这样的指标与简单的市场贝塔性质高度相关,这促使 Ang 和同事引入了一个相对下行贝塔,这是我们在下文中关注的指标:$$ {\beta}{relative}={\beta}{-}-\beta . $$(5.2)在论文中,相对下行贝塔是一种风险溢价:具有较高下行贝塔的股票与高未来回报相关,以补偿持有该股票的风险。这种行为可以通过损失厌恶来解释,并且与抗脆性异常的方向相同。余偏度是给定股票市场风险的另一种度量,更侧重于极端事件,比如抗脆性。它可以定义为:$$ coskew=\frac{E\left[\left({r}_a-{\overline{r}}_a\right){\left({r}_m-{\overline{r}}_m\right)}²\right]}{\sqrt{\mathit{\operatorname{var}}\ \left({r}_a\right)}\mathit{\operatorname{var}}\ \left({r}_m\right)}. $$(5.3)Harvey 和 Siddique(2000)已经将余偏度提出作为一种风险溢价。因此,我们要确保我们没有提出这种风险因素的变化。

尽管所有这些异常都基本上已经被探索用于预测股票回报的横截面,但其基本原理似乎适用于解释行业回报的横截面。因此,我们使用这些其他预测因子作为基准并强调抗脆性异常,以控制我们对文献的贡献的现实性。事实上,抗脆性异常似乎比先前文献中已经识别的任何其他异常都更强大,至少与行业回报的特定问题相关。

本章组织如下:

  • 我们首先介绍用于进行我们的实证分析的数据。

  • 然后我们定义用于测量抗脆性和构建一个针对股票回报横截面的行业投注的方法论。

  • 提出了实证结果,包括受益于抗脆性因子的交易策略的表现。

  • 几项健壮性测试被执行以控制结果的可靠性,之后我们总结了本章内容。

5.2 数据

我们使用 Refinitiv(前 Reuters)的数据获取每日收益、市值和行业分类,其定义由 GICS 3 分类(全球行业分类标准,MSCI)确定,所有数据均使用美元的日终数据进行测量。我们的样本覆盖了 1999-01-01 至 2018-09-30 的期间。

我们的投资范围由美国股市中市值最大的 500 家公司组成,每月重新计算一次。

“行业”被定义为同一行业的股票的等权重桶。 “市场”是由行业组成的等权重投资组合。

5.2.1 摘要统计

使用 GICS 3 分类会产生一个包含 66 个行业的宇宙。每个桶内元素的简单计数揭示了随着时间的推移不同部门之间可能出现的巨大差异(见表 5.1):表 5.1

行业桶的摘要统计信息:子元素(股票)的计数,聚合统计

平均 标准差 最小 中位数 最大
8.10 7.07 1.00 6.00 52.00

量化表格(见表 5.2)显示,随着时间的推移,有一些行业包含了大量元素:表 5.2

行业桶的摘要统计信息:子元素(股票)的计数,聚合分位数

0.00 0.05 0.10 0.25 0.50 0.75 0.90 0.95 1.00
1.00 1.00 1.00 3.00 6.00 12.00 17.00 21.00 52.00

我们清楚地观察到元素数量的类似于帕累托分布的情况,这促使我们使用等权重方法来定义市场投资组合。事实上,我们希望捕捉行业对其经济环境的反应,该环境由代表性市场来近似,而不仅仅是由少数几个行业决定。这种思维进一步得到了对行业市值随时间变化的绘图(见图 5.1)和它们的量化表格(见表 5.3)的支持!

图 5.1

随时间变化的行业桶的市值

表 5.3

行业的市值

0.00 0.05 0.10 0.25 0.50 0.75 0.90 0.95 1.00
平均市值分位数 8.86E+09 1.21E+10 1.60E+10 3.74E+10 1.25E+11 3.16E+11 4.74E+11 6.32E+11 1.05E+12

附录:行业桶摘要统计详细描述了行业的统计信息。

5.3 方法论

5.3.1 衡量反脆弱性

反脆性由塔勒布(2012)提出,其数学方面由塔勒布和 Douady(2013)详细阐述。塔勒布(2013)提供了反脆性概念的以下定义:“简单地说,反脆性被定义为对于应力或伤害源(在某种变化范围内)的凸响应,导致对波动的增加具有积极的敏感性(或可变性,压力,结果分散或不确定性,被归类为‘混乱集团’的指定)的敏感性。同样,脆弱性被定义为对应力的凹敏感性,导致对波动增加的负敏感性。”

起初,人们可能认为这个概念与鲁棒性或弹性相近。塔勒布(2012)阐明了这一点:“反脆性超越了弹性或鲁棒性。鲁棒的抵抗冲击而保持不变;而反脆弱则变得更好。”。

这样的特性对于股票来说似乎是可取的,因为任何投资者都希望他们投资组合的组成部分在不利情况下表现优于市场。

通常,通过其对X的敏感性来衡量变量Y的反脆性可以分为两个简单的步骤:

  • 估计XY之间的反应φ(X)的非线性函数,例如使用线性非线性混合模型。

  • 计算反脆性指标,即在X的定义域上对反应函数的二阶导数的积分³。我们通过一个求和来近似该函数,在该求和中,X[i]在X的定义域上以固定间隔采样(这样的近似可能通过对p(X)进行非参数估计来改进):

$$ AFI={\int}_{X_{min}}{X_{max}}{\varphi}{\prime \prime }(X)\times p(X)\kern0.5em d(X)\cong {\sum}_{c={X}_{min}}{X_{max}}{\varphi}{\prime \prime}\left({X}_c\right). $$(5.4)

5.3.2 预测行业回报

下列预测背后的直觉是,反脆性可以成为专门用于因子投资的大量文献的一部分。实际上,这些文献揭示了股票回报的横截面具有高度的多维性。感兴趣的读者可以参考 Green 等人(2014)和 Hou 等人(2017)对现有因子的详尽回顾。此外,有几篇出版物指出,通过对一些行业做多头,对其他行业做空头来形成投资组合,行业间的因子投资也是可能的(例如,Asness(2000))。

根据之前的研究,我们评估了他们的反脆性水平对未来行业回报的预测能力。

我们使用在第 5.3.1 节中定义的 AntiFragility Indicator(AFI)来衡量反脆弱性。在描述特定背景下的反脆弱性时,一个关键问题是定义分析对象对什么敏感。市场是一个方便且自然的选择,因为它可能是与行业相互作用的第一个冲击向量。即使我们只能获取每日数据,我们也尝试识别行业的低频响应,使用每日重新计算的 21 天累积收益来进行 LNLM 估计。这使我们能够看到行业在熊市和牛市期间如何反应一个月。对于鲁棒性的问题,我们使用了一个非常大的滚动窗口,为每次拟合提供了 5 年的数据,允许每个拟合使用 1,260 个数据点(月收益每天重新计算)。出于计算原因,我们每 3 个月才重新计算一次 AFI。

为了以最忠实的方式代表市场,一旦股票进入投资范围,我们将其保留在用于计算 AFI 的行业桶中,即使它之后退出了投资范围。这使我们能够获得更具代表性的行业收益,即使我们随后只部分押注于它们,因为我们将我们的持仓限制在投资范围内。

一旦计算出 AFI,我们使用几种手段评估其预测能力。

在第一步中,我们实施了一种长/短交易策略。

长/短组合的输入是基于 AFI 信号的归一化版本。在每个日期,我们按照它们的 AFI 降序排列行业,并将得到的排名信号归一化为在 −1 到 1 之间均匀分布。实际上,我们只关心相对行业反脆弱性对未来收益的影响,而信号的平均值为 0 可以在一定程度上中和市场作为投资组合收益的来源。在因子投资策略中,这样的排名和归一化程序很简单(例如,参见 Chan 等人 1998,或 Coqueret 和 Guida 2018)。为了方便起见,在接下来的内容中,我们使用首字母缩略词“AFI”来指代归一化的反脆弱性指标。

然后,信号被映射到行业的子组件,属于同一个行业桶的所有股票共享相同的行业评分。出于现实性考虑,进行这个操作,因为没有真实的投资工具可以直接投资到我们的行业桶。

投资组合权重通过优化特征组合来计算,以反映映射到股票上的分数。选择特征组合与我们关注获得反脆弱性特征预测能力的投资组合一致。对于给定的资产特征(或特征)向量 κ = [κ[1], κ[2], …, κ[b]],以及资产的投资组合权重 w = [w[1], w[2], …, w[b]],投资组合对给定特征的敞口简单地为:

$$ \sum \limits_{a=1}^b{\kappa}_a{w}_a. $$(5.5)属性 κ 的特征组合被定义为具有最小风险(以方差表示)且对特征 κ 具有单位曝光的组合(即等式 (5.5) 等于 1)。例如,资产贝塔的特征组合是市场组合。尊重这些属性的组合的持仓可以通过一个简单的封闭公式⁴(Grinold & Kahn,2000)获得:$$ {w}_k=\frac{\sum{-1}k}{kT{\sum}^{-1}k}. $$(5.6)这里 Σ 是资产的方差 - 协方差矩阵。

因此,特征组合是执行均值方差优化的便捷选择,同时很好地反映了给定特征的预测能力。由此产生的持仓标准化为具有 10% 预期目标波动率。

在第二步中,我们进行更多的理论练习,将未来 3 个月的回报回归到 AFI 上。

5.4 结果

LNLM 拟合显示了使用非线性建模的兴趣。例如,在下图 5.2 中,我们展示了所有行业在 2008-03-10 的拟合结果:

图 5.2

行业回报通过市场回报的 LNLM 建模

无论行业如何,图 5.2 显示它们都没有完全采用线性行为。

5.4.1 长/短交易策略

我们每天使用 2 天前计算的优化权重计算策略的损益。这 2 天的滞后是基于以下假设的交易过程:在日期 t,美国市场收盘后,我们收集所有所需数据,计算 AFI 并优化特征组合。必须执行的结果交易将在 t + 1 的早上发送到市场,并在当天执行,以便在 t + 1 结束时达到优化的持仓。因此,在日期 t + 2,P&L 是在前一天结束时达到的仓位的收益,即日期 t 的优化权重。

我们以下图 5.3 形式的累积(复合)损益曲线呈对数刻度显示,因为这样可以轻松比较不同时期,从而评估策略随时间的稳定盈利能力(图 5.3)。我们从 2004 年的基数 100 开始。在整个周期内,L/S 策略的夏普比率⁵ 是 1.10。

图 5.3

防脆弱因子策略的损益表

上图清楚地表明,在足够长的时间段内,该策略是盈利的。以下是该策略的主要统计数据(表 5.4):⁶Table 5.4

防脆弱交易策略的绩效统计

年度超额回报 夏普比率 换手率 年度波动率 最差回撤 5 天 最差回撤 21 天 最差回撤 252 天 最差回撤全期
29.23% 1.10 5.73 26.58% −16.37% −23.31% −28.51% −42.01%

请注意,对持仓进行的波动控制明显不足以达到可接受的波动水平(最初的目标是 10%,远低于 26%的实现波动率)。尽管如此,这对夏普比率的影响较小,而夏普比率是我们评估策略预测能力的主要性能指标。

该策略在 2008 年和 2018 年经历了较大的回撤。对于这种现象可能有几种解释。其中,我们可以推测反脆弱因子受到次贷危机和 2018 年量化危机的影响。⁷ 实际上,这种回撤模式与 AFI 投资组合承受的极端市场波动的暴露是一致的。

5.4.2 未来回报的回归

我们将行业的未来 3 个月累积回报(不进行复利计算)回归到 AFI 的当前值上,以对其预测能力进行第二次评估。我们在下面显示这个线性回归的结果(表 5.5):表 5.5

AFI 对未来回报的回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 0.0005 0.0000 140.307 0.00E+00 0.001 0.001
AFI 0.0317 0.006 5.032 0.00E+00 0.019 0.044

当然,常数极具统计学意义,因为它捕捉了市场的回报(请记住,横截面 AFI 分数的平均值为 0)。尽管如此,信号显示出很高的统计学意义水平,t-统计量为 5.032,p-值为 4.84E−5%。

5.4.3 与经典因子的比较

在寻找新因子的过程中,一个非常重要的测试是检查反脆弱因子是否能够在经典因子之上增加价值。为了做到这一点,我们使用与 L/S 策略完全相同的方法计算常见因子的特征组合的盈亏,并尝试用它来解释反脆弱投资组合的回报。

当然,我们主要控制市场因子,定义为我们市场基准的回报。

在第二次回归中,我们整合了经典的价值和规模因子,以控制法玛和法国(1993)的标准因子。⁸ 价值被计算为净资产(资产减去负债)除以当前市值的比率。我们通过在每个行业内对其进行平均来聚合股票水平信号。规模信号为市值的对数的负值。我们通过对股票水平信号求和来进行聚合。

第三次回归中,我们包括市场投资组合回报,以及低贝塔投资组合、动量投资组合、负向贝塔投资组合和共偏投资组合。添加这些统计因素的动机是我们怀疑它们与反脆弱因素有关,因为它们是使用相同的数据计算的,即回报。这种推理尤其适用于低贝塔,因为我们的拟合曲线的形状非常曲折,可能可以近似为陡峭的直线。正如本章介绍中所解释的那样,负向贝塔和共偏也是解释反脆弱异常回报的特别相关的候选因素。动量信号的计算遵循经典方法,即计算 11 个月的回报滞后 1 个月(Carhart (1997),另请参见 Jegadeesh 和 Titman (1993))。我们直接在这里使用我们行业桶的回报。低贝塔是作为简单单变量回归的参数计算的,每天的行业回报对市场进行回归(包括一个常数),使用 1 年滚动窗口。负向贝塔是使用介绍中提出的公式计算的(为了更加精确,我们继续考虑相对下行贝塔),以及共偏。

以下是三次回归的结果。我们将利润和损失的波动率标准化为年度 10%,以便比较系数(表 5.6,5.7 和 5.8)。表 5.6

AFI 回报对 CAPM 回报的回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 0.0004 0.0001 3.939 0.00E+00 0.000 0.001
等权重市场投资组合 0.2158 0.015 13.936 0.00E+00 0.185 0.246

表 5.7

AFI 回报对 Fama–French 3 因子回报的回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 0.0004 9.45E−05 3.91 0.00E+00 0.000 0.001
等权重市场投资组合 0.0007 0.021 0.032 9.74E−01 −0.040 0.041
规模投资组合 −0.1862 0.016 −11.617 0.00E+00 −0.373
价值投资组合 0.2286 0.02 11.562 0.00E+00 0.190 0.267

表 5.8

AFI 回报对 5 个统计因素回报的回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 0.0003 8.36E−05 3.142 2.00E−03 9.88e−05 0.000
低贝塔投资组合 0.2015 0.015 13.575 0.00E+00 0.172 0.231
等权重市场投资组合 −0.0583 0.015 −3.803 0.00E+00 −0.116
动量投资组合 0.0984 0.015 6.568 0.00E+00 0.069 0.128
共偏投资组合 0.2396 0.016 15.22 0.00E+00 0.209 0.270
负向贝塔投资组合 0.3165 0.016 20.126 0.00E+00 0.286 0.347

无论用于回归的因素是什么,我们始终保留一个高度统计显著的常数低于 0.2%的p-值。这个常数在经济上也是显著的,并且对应于最后一个回归中的约 17%的异常年收益(在回归之前没有复利,没有波动率标准化)。这种水平的异常收益当然取决于杠杆和波动率。第三个回归的 R²为 30.3%,策略的夏普比率为 1.10,我们可以期望异常收益约为 11% *(1−0.303) = 7.67%,对于实现波动率为 10%,这仍然是经济上显著的。

下面我们展示了统计投资组合的损益,这似乎表明所有 5 个因素都在行业水平上表现良好:

从图 5.4 可以看出,反脆弱性似乎是一个相对强大的因素!

图 5.4

因素投资组合复合收益(年均波动率相等滚动 10%)

从统计因素的损益相关矩阵中可以看出,与预期相符,反脆弱性特别与下行贝塔和共偏异常相关,这些风险溢价与反脆弱性具有相同的基础(图 5.5):

图 5.5

因素收益的相关矩阵

这种相关水平可能表明,共偏性和下行贝塔捕获了与反脆弱性相同的α来源。为了更好地理解这两个异常和反脆弱性之间的联系,我们进行了单变量线性回归,在这些回归中,我们将反脆弱性建模为另一个异常的函数,反之亦然。在共偏性的情况下,两个估计模型的结果如下(表 5.9 和 5.10):Table 5.9

对共偏性收益进行回归

系数 标准误差 t统计量 P > |t| [95.0% 置信区间]
常数 0.0004 9.29E−05 4.105 0.00E+00 0.000 0.001
共偏性 0.3697 0.015 25.087 0.00E+00 0.341 0.399

Table 5.10

对反脆弱性收益进行回归

系数 标准误差 t统计量 P > |t| [95.0% 置信区间]
常数 0.0000287 9.31E−05 0.308 7.58E−01 −0.000 0.000
反脆弱性 0.3697 0.015 25.087 0.00E+00 0.341 0.399

因此,当试图用共偏性解释反脆弱性时,我们保留了显著的α(R²为 13.7%),而反之则不成立。这样的结果倾向于表明,反脆弱性在行业层面上包含了共偏异常。

对于下行贝塔异常,我们得到了类似的结果(R²为 21.4%)(表 5.11 和 5.12):Table 5.11

对下行贝塔收益进行回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 0.0004 8.86E−05 4.028 0.00E+00 0.000 0.001
下行贝塔 0.4623 0.014 32.866 0.00E+00 0.435 0.490

表 5.12

对下行贝塔收益进行的 AFI 收益回归

系数 标准误差 t-统计量 P > |t| [95.0% 置信区间]
常数 −2.551E−07 8.88E−05 −0.003 9.98E−01 −0.000 0.000
反脆弱性 0.4623 0.014 32.866 0.00E+00 0.435 0.490

这些结果表明,行业承担的极端市场风险通过反脆弱性异常更好地捕捉和定价,而不是通过文献中之前确定的信号。

5.4.4 分离凹性和凸性

分离凹性和凸性使我们能够控制收益不仅仅是由这两种影响函数特征之一驱动的。凸性反映了行业的反脆弱性,即当市场出现极端偏离时,它们表现极好的能力。另一方面,凹性真正捕捉到了它们的极端风险,因为非线性的凹反应会导致巨大的损失。因此,控制凹性和凸性效应相当于控制行业输掉的倾向和赢得的倾向的重要性。

我们区分两者的简单测试是仅在计算 AFI 时保留正或负的二阶导数。然后,我们再次使用 L/S 策略重新应用我们的测试。

下面是凸性指标的摘要表格(表 5.13)和投资组合损益曲线(图 5.6):表 5.13

反脆弱性交易策略的绩效统计(仅凸性)

年度超额收益 夏普比率 换手率 年度波动率 最大回撤 5 天 最大回撤 21 天 最大回撤 252 天 全期最大回撤
22.42% 1.00 5.98 22.52% −11.03% −24.42% −33.44% −38.31%

图 5.6

反脆弱性因子策略的损益表(仅凸性)

这里是凹性指标的结果(图 5.7; 表 5.14):

图 5.7

反脆弱性因子策略的损益表(仅凹性)

表 5.14

反脆弱性交易策略的绩效统计(仅凹性)

年度超额收益 夏普比率 换手率 年度波动率 最大回撤 5 天 最大回撤 21 天 最大回撤 252 天 全期最大回撤
18.91% 0.78 5.96 24.39% −11.51% −24.60% −31.52% −37.99%

尽管凸性的夏普比略高,但明显地正负导数都很重要,导致随着时间的推移更稳定(且更高)的盈利能力。

5.4.5 分离市场正负回报

当市场出现极端损失时,投资者更关心反脆弱性可能是有道理的。为了控制这种影响,我们仅在市场回报为正时计算反脆弱信号的二阶导数,仅在市场回报为负时计算。下面是此拆分的结果,仅适用于正回报(图 5.8; 表 5.15):

图 5.8

反脆弱因子策略的盈亏(仅适用于市场正回报)

表 5.15

反脆弱交易策略(仅适用于市场正回报)的绩效统计

年超额回报 夏普比 换手率 年波动率 最坏回撤 5 天 最坏回撤 21 天 最坏回撤 252 天 全期最坏回撤
26.47% 1.06 5.81 24.93% −14.87% −20.40% −17.13% −37.80%

下面是仅重新计算负市场回报的结果(图 5.9; 表 5.16):

图 5.9

反脆弱因子策略的盈亏(仅适用于市场负回报)

表 5.16

反脆弱交易策略(仅适用于市场负回报)的绩效统计

年超额回报 夏普比 换手率 年波动率 最坏回撤 5 天 最坏回撤 21 天 最坏回撤 252 天 全期最坏回撤
14.18% 0.54 5.73 26.25% −12.89% −22.40% −35.48% −51.53%

这表明,投资者在市场正回报的情况下更关心反脆弱性。尽管如此,信号的两个版本仍持续提供显著回报,并且没有一个胜过原始版本。因此,反脆弱性似乎是一个广泛的现象,市场在负面和正面市场波动以及凹凸性中定价。

5.5 鲁棒性测试

本节专门进行各种测试,以评估我们结果的鲁棒性,涉及几个方面的考虑。

5.5.1 信号的稳定性

我们首先检查绩效对交易速度的稳定性。换手率对于从业者来说看起来相对较低,但我们希望通过计算组合仓位的各种滞后期的绩效来确认这一点。通过展示如果我们在获得组合优化权重后的 3 天、5 天、10 天等时间达到最佳仓位时,策略的夏普比率将是多少,我们评估了低交易频率下策略的盈利能力。表 5.17 总结了我们的发现:表 5.17

优化权重不同滞后期的夏普比率

滞后 2 天 滞后 3 天 滞后 4 天 滞后 5 天 滞后 10 天 滞后 15 天 滞后 21 天 滞后 42 天 滞后 63 天
1.10 1.09 1.07 1.05 1.04 1.05 1.07 1.07 0.98

该策略明显表现出高水平的稳定性,因为即使是在优化后的一个季度进行交易的投资者也能盈利。这并不太令人惊讶,因为由于其计算采用了 5 年滚动窗口,反脆弱性指标非常稳定。它减轻了我们对每 63 天重新计算 AFI 的影响可能引起的担忧。当前得分的日自相关性很高,为 99.84%。因此,当前得分与其 21 天滞后的自相关性仍为 97.07%。

投资策略通常表现出基于的因素稳定性与绩效稳定性之间的联系。虽然这种稳定性可能表明该策略易于交易,但它也与交易期初行业“挑选”的风险相关联。事实上,我们可能会随机创建一个组合,只是在模拟期间的开始时选择好的行业,并将它们保持到完整模拟期间结束,而如果持仓的符号(多头/空头)随时间频繁变化,则这显然不太可能发生。下面我们给出持仓符号变化的摘要统计信息(表 5.18):表 5.18

摘要统计:持仓方向变化次数(L/S)

均值 标准差 最小值 最大值 中位数
6.62 4.09 1.00 24.00 6.00

在 14 年的模拟中,长期和短期持仓之间平均发生 6 次变化可以解释为对幸运选择的合理保护。请注意,每个行业在完整模拟期间至少会改变其持仓符号一次,没有例外。每个行业得分的时间序列在附录中提供:AFI 行业得分随时间变化。

5.5.2 对超参数的敏感性

我们还控制了使用不同超参数计算信号的抗脆弱性。在计算反脆弱性指标时,两个超参数似乎是真正重要的:滚动窗口的时间深度和对衍生品进行评估的领域(AFI 定义中的 X[Min]和 X[Max])。

我们首先重新计算了不同滚动窗口的性能(表 5.19):表 5.19

不同滚动窗口的性能统计

年度收益率(%) 年度波动率(%) 夏普比率
3 年 14.55 26.80 0.49
4 年 29.71 27.06 1.05
5 年 30.41 26.58 1.10
6 年 26.87 26.75 0.96
7 年 24.52 25.80 0.90

显然,窗口对性能有影响,但所有测试的值仍然继续提供显著的性能。观察到的差异是由于观测量太低,无法准确地模拟小窗口的反应函数,以及观测量太旧且不再相关于拟合,涉及大窗口。

然后我们评估了性能对衍生品领域的敏感性(表 5.20):表 5.20

不同衍生品领域的性能统计

年度收益率(%) 年度波动率(%) 夏普比率
[Xmin: Xmax] = [−1%: +1%] 22.51 24.93 0.86
[Xmin: Xmax] = [−5%: +5%] 26.04 25.56 0.97
[Xmin: Xmax] = [−10%: +10%] 30.41 26.58 1.10
[Xmin: Xmax] = [−15%: +15%] 24.95 25.92 0.92
[Xmin: Xmax] = [−20%: +20%] 19.42 25.53 0.71

在这里,虽然我们仍然可以观察到夏普比率对超参数的敏感性,但我们再次发现信号性能的强大稳健性。非常有趣的是,尽管我们正在处理 21 天的累积收益率,但在+1%和-1%之间的衍生品计算出的信号仍然具有显著的性能,尽管这个领域非常小。这一点突显了我们在 AFI 定义中所做选择的重要性。由于我们将概率加权积分近似为定期间隔的衍生品之和,我们间接地假设了与之相关的概率的均匀分布。衍生品领域的收窄表明,中央衍生品对性能非常重要,而极端衍生品可能不那么重要。假设市场收益的钟形分布,人们可以将这解释为衍生品的概率的反映:发生不太频繁的事情只会较少影响。进一步的研究可以尝试通过市场收益的概率分布来加权近似的 AFI。

为了考虑使用 LNLM 模型进行的拟合的随机性,我们对随机选择属于每个折叠的观察值的生成器进行了种子化,用于计算μ。这种做法使得可以复制结果。如果我们使用默认种子⁹,我们仍然需要控制选择某个特定随机抽样集是否导致了虚假的高性能水平。

因此,我们对 50 个不同的种子启动了 L/S 模拟¹⁰,并在下面呈现了相应的性能统计数据。总体而言,它清楚地显示出模拟对于特定种子的选择非常不敏感(表 5.21)。表 5.21

不同种子的性能统计

最小 平均 中位数 最大 标准差
年回报率 30.13% 30.60% 30.56% 31.63% 0.30%
年波动率 26.37% 26.51% 26.51% 26.64% 0.06%
夏普比率 1.09 1.11 1.11 1.15 0.01

这一发现进一步得到了考虑所实现的夏普比率分布的波动性的确认(图 5.10):

图 5.10

不同种子的夏普比率分布

最终,我们计算了股票水平和行业水平的得分与优化权重之间的相关性¹¹。这最后的测试被执行为一个健全性检查,以指示特征组合方法的输出是否真正反映了其输入。在股票水平,AFI 和优化权重之间的皮尔逊相关性为 81.17%,在行业水平为 87.13%。我们还计算了斯皮尔曼相关性,因为在我们的情况下,排名比精确水平更重要(由于优化过程最小化了方差,我们可能会预期对于相同得分水平,权重会稍有不同)。AFI 和优化权重之间的斯皮尔曼相关性在股票水平为 91.54%,在行业水平为 93.14%。

5.6 结论

本章提出了一种预测股票市场行业回报的原创方法。再次强调,股票回报截面的多维性仍然是文献中需要探索的广阔领域。替代数据的出现为这一旅程开辟了有希望的道路,但不应掩盖对建模方法的改进的需求。

特别是,使用非常普遍的数据(仅股票回报),本章证明了标准线性建模方法将无法捕捉到现实的微妙之处。非线性建模很重要,其效用不仅局限于尾部建模,因为反脆弱性也被定价于分布的中心。LNLM 模型的这种应用也为其效率和反映目标与解释变量之间真实关系的能力提供了见解。

本章提出了许多研究问题。考虑到所进行的测试,我们的结果似乎是稳健的,并显示了反脆弱性因素在解释行业回报横截面中的高重要性。应该使用其他数据集和/或替代反脆弱性指标来确认这种重要性在预测未来回报方面的水平。

对其他因素的损益进行回归分析也显示了反脆弱性因素与众所周知的因素之间存在显著的联系。应该从经济学或统计学的角度均衡地研究它们之间的相互作用。

最后,在我们的研究中,反脆弱性涵盖了下行贝塔和共偏度。这一发现应直接在股票回报横截面中进行研究,这可以显著改进现有的风险溢价知识。

第六章:特定回报的预测

Thomas Barrau^(1  ) 和 Raphael Douady²(1)AXA 投资管理公司 Chorus 有限公司,香港,香港特别行政区(2)巴黎第一索邦大学经济中心,法国巴黎

摘要

对于股票回报横截面中的每家公司,我们构建了其未来回报的预测。每个预测都是使用大量解释变量进行估计的专用多模型制作的,捕捉了每支股票的整个经济环境。根据预测构建了一个交易策略,以评估其质量,达到了 0.91 的夏普比率,与经典因子不同,并经受住了大量的稳健性测试。通过实施交易策略,我们提出了一种解决多模型预测汇总问题的方法,该方法基于每个基本模型添加的信息。

关键词

6.1 介绍

自 King (1966)以来,将股票回报分解为市场组成部分和行业组成部分的有用性就已经被认识到,我们自 Roll (1988)以来就知道,回报的特定组成部分,即价格的残余变动,不依赖于市场或行业,甚至比其他两个因素更为重要。在第四章关注提供市场回报预测和第五章关注提供行业回报预测之后,我们最终在本章中提出了一些股票回报特定组成部分的预测。

为了做到这一点,我们执行了 Polymodel 理论中最直接但也最具挑战性的应用之一:直接使用目标变量的预测。这样的方法至少有两个挑战:选择预测因子和汇总不同预测的困难(关于这些问题的深入高层讨论,请参见第二章)。我们在本章中解决并提出了这两个问题的解决方案。

我们成功预测单只股票收益的特定组成部分并不具有普适性。因此,我们提供了对 500 只不同股票在 15 年期间的特定收益的预测。这些预测是通过动态估计(使用滚动窗口)每只股票收益的多模型获得的:

多模型的估计不应该使用原始收益作为目标变量。由于我们假设股票收益可以分为市场、行业和特定组成部分,我们应该从原始收益中提取特定组成部分。这是通过使用行业作为分类变量进行的横截面回归的残差来实现的。这个框架消除了行业对收益的影响,但也隐含地消除了市场的影响,因为回归的常数是等权市场组合的收益。与其他可能性(面板、时间序列回归)相比,横截面回归具有瞬时性的优势。

我们使用一个 5 年滚动窗口和每月回报率来估计多模型,² 这样的设置在前面的章节中已经取得了结果。使用 21 天的累积回报是出于发现股票回报中缓慢变化趋势的野心,如果直接使用每日数据,这将更加困难。预测因子向后推移一个月,最终生成下个月的预测。数据的原始每日频率允许我们提供的预测每天重新计算一次,然而,基本模型的参数仅在每月初重新估算一次,以节省计算时间,同时记住我们用于估算的相对较长的 5 年时间窗口。

使用这些技术对特定股票回报进行预测可能看起来像对多模型的粗暴使用,然而,这需要对信号提取的每个步骤进行非常仔细和细致的设计。因此,我们在本章的第一节中介绍了构建我们框架的方法基础。然后,我们提出了一种预测选择方法,通过评估不同的度量标准进行过滤,并提供一个动态的、点对点的过滤器。在第三节中,我们提出了一种用于预测在多模型中的聚合的新方法,我们用一个更标准的方法进行基准测试,并加以介绍。然后是一个专门用于评估预测质量及其相关选择和聚合方法的评估部分。这样的评估是使用一个交易策略完成的,在最后一节中,这个策略通过一系列的稳健性测试得到了补充。

6.2 方法论基础

我们在下面描述了为信号构思所做的方法选择。

6.2.1 数据

所使用的数据与第四章和第五章中使用的数据相同。

请记住,我们的投资范围由美国股市中市值最大的 500 家公司组成,每月重新规定。

数据分为两部分:一些股票水平的、横截面数据和多样化的金融市场时间序列数据。

作为提醒,股票水平数据由日回报率、市值、账面市值比和由 GICS 分类(全球行业分类标准,MSCI)的第三级定义的行业分类组成,所有这些都使用每日结束时的 USD 数据进行测量。我们的样本覆盖了从 1999-01-01 到 2018-09-30 的时期。³ 关于所使用的数据的更多详细信息,读者可以参考第五章。

数据的另一部分由包括 1,134 个变量的日末收益多样化因子集组成。这个因子集覆盖了所有发达国家和大多数新兴经济体。变量在不同的地理尺度上定义,有些是全球性的,有些是地区性的,还有一些是与国家相关的。此外,所有最重要的资产类别都被涵盖,包括股票指数、股票因子指数(即经典风险溢价)、货币、商品、货币市场、主权债券、企业债券、房地产、对冲基金和波动性指数。数据集的定义为 1995-01-02 至 2018-10-16。⁴ 因子集的完整描述可在第四章中找到。

6.2.2 时间序列预测,横截面投资组合构建

时间序列维度中的基本模型进行了特定回报预测。因此,可以评估特定股票的预测质量。然而,显然,当直接在聚合级别上考虑时,分析更加健壮,即联合考虑我们的目标变量——500 只股票回报。此外,由于我们通过交易策略验证结果的经济意义,我们还应该使用基于聚合预测的投资组合构建,因为这将是评估性能的最简单方法。因此,我们在此考虑了一个长/短投资组合构建,在这个构建中,预测的质量是在股票横截面内以相对方式评估的。

符合交易策略使用的格式,我们始终在信号后使用规范化版本,这个版本被排名并设置在-1 到+1 之间。正如第五章中提到的,这种归一化在文献中非常普遍。排名的使用使我们主要考虑预测的序数,因为归一化的预测在其定义空间中均匀分布,而非排名信号则包含一个额外的基数成分,说明一个预测比另一个好多少。考虑到预测股票回报横截面的任务的难度,为了鲁棒性,因此我们在本章不考虑当前章节中的基数维度。

6.2.3 减去平均回报

由于多模型是在一个滚动窗口上估计的,所以估计模型的平均值等于滚动窗口内股票回报的平均值。

但是,过去一个月的平均股票回报率是未来回报的强有力预测因子。Jegadeesh(1990)观察到短期反转效应,即下个月的回报与上个月的回报呈负相关。与 Titman(1993)一起,他还记录了这种相关性随着过去一年的回报变为正相关,这种效应称为动量。最后,股票回报也显示出一种长期反转的形式(De Bondt & Thaler,1985)。因此,未来回报与不同时间范围内计算的过去平均回报之间存在强烈的正负相关。

因此,根据用于估计基本模型的窗口,窗口内的平均估计反映其中一种效应,从而正面或负面影响了多模型所做预测的预测能力。

因此,从预测中减去平均股票回报率是极其重要的。这保证了预测结果不仅仅是对文献中已经充分记录的信号的复杂再发现。在整个章节中,我们只考虑这个平均回报之上的预测,并且我们简单地将这些经过校正的预测称为“预测”。

6.3 预测选择

在这里,我们比较不同的指标来选择预测因子。这种选择的目的当然是为了消除噪音,因为声称用于预测的 1,134 个因素都与我们试图预测的 500 只股票的回报相关联是不可持续的立场。

选择可以通过几种方式进行,但它应始终与基本模型的拟合优度或统计显著性的评估相关联。由于没有特定的理由选择其中一个a priori,我们研究了几种可用于预测选择的测量方法。

对于给定的多模型,通过计算在特定测量的一个特定分位数中由所有选择的因素对当前股票的平均预测来调查这些测量。例如,我们可以计算以均方根误差(RMSE)的顶部 60%的因素为基础的 Microsoft 回报的平均预测。这个计算在被预测的所有股票中重复进行,这样我们就在每个时间点构建了股票回报的横截面的预测。然后,我们对下一天的股票回报的全样本面板回归与给定分位数(我们的例子中为 60%)的平均预测进行计算。预测的统计显著性仅通过估计参数的t统计量进行评估。最后,我们对几个分位数重复此过程。

上述在标准化信号和未来收益之间的回归不应该在原始收益上进行。就像在多模型的估计中,我们希望测量多模型预测原始收益的特定组成部分的能力。因此,我们仍然使用未来的特定收益,仍然定义为横截面回归的残差。

我们假设至少有一些预测因子只是给平均预测带来噪音。我们的期望是,如果用于选择的指标能够成功区分噪音和信号,那么在平均预测中引入更多因子(即增加选择的分位数)应该首先导致t统计量的增加,直到新添加的因子携带了太多的噪音,使得显著性降低。

这种评估预测选择指标的方法清晰简单,使人能够对问题有一个整体的初步理解。此外,它使得不同的度量可比较,因为使用分位数导致在计算平均预测时使用因子桶,以透明的方式⁶。这种简单性的代价是做出了多个假设。首先,由于我们保留了基于完整样本结果的选择指标来构建滚动交易策略,我们使用了未来信息。这样的做法只能假设不同选择指标的质量在时间上相对稳定,以便当前的分析可能在我们的样本开始时使用类似的过去数据样本得出类似的结果。这个假设还意味着我们选择的选择指标也会产生样本外的结果。其次,我们假设不同多模型之间存在一种弱形式的同质性。确实,由于用于计算t统计量的分位数阈值在多模型之间相同,我们结果的稳健性取决于多模型在不同分位数下表现近似相同。虽然这是对现实的简化,但这些假设似乎是可以接受的,因为它们也简化了我们面临的问题。

6.3.1 均方根误差滤波器评估

均方根误差(RMSE)可能是模型拟合优度的最基本度量。在给定的时间点和给定的预测变量下,它被定义为:$$ {RMSE}_{a,i,t}=\sqrt{\frac{1}{\tau }{\sum}_{s=t-\tau}^t{\left({y}_{a,s}-{LNLM}_{a,i}\left({x}_{i,s}\right)\right)}²}. $$(6.3)这里“τ”是在日期 t 的滚动窗口中可用的观测次数,“i”是预测变量的索引,“a”是股票的索引(如果未指定,以下所有方程式均为给定 polymodel 的)。RMSE 在每个 polymodel 的每个基本模型的特定滚动窗口内计算。以下是反映不同 RMSE 量化分位数的平均预测的预测能力的 t-统计量(最小分位数为拟合度的最高水平) (图 6.1)。

图 6.1

RMSE 过滤器:t-统计量作为噪声过滤器分位数的函数

该过滤器清楚地显示了适当过滤器的预期模式,因为我们可以看到当在预测中使用 RMSE 最差的因素时,聚合信号的预测能力会降低。

6.3.2 p-值过滤器评估

p-值可能是最常见的统计显著性度量。它可以从比较缺乏拟合平方和和纯误差平方和的 F 检验中计算得出。这两个数量的比值,加权后的自由度,是被替换为 Fisher–Snedecor 分布的累积分布函数中的 F 统计量,以得到 p-值:$$ F=\frac{lack- of- fit\  sum\  of squares/ degrees\ of\ freedom}{pure- error\  sum\  of\ squares/ degrees\ of\ freedom}. $$(6.4)因此,从 F 检验计算出的 p-值与 RMSE 有根本的不同,因为除了考虑到达到的拟合程度外,它还考虑了可以达到的拟合程度。以下是完整样本回归所获得的 t-统计量,用于不同过滤量化位数 (图 6.2):

图 6.2

p-值过滤器:t-统计量作为噪声过滤器分位数的函数

考虑到这张图,从 F 检验计算出的 p-值似乎不能作为可靠的噪声过滤器。事实上,即使在 p-值方面最差的预测仍然为聚合预测增加了价值。p-值在过滤的上下文中的不匹配可能是由于估计的基本模型的误差违反独立和正态分布的假设。人们还应考虑到 p-值可能是衡量不同预测的更合适的度量标准,而不是选择它们。

6.3.3 贝叶斯信息准则过滤器评估

贝叶斯信息准则(BIC)的定义为:$$ BIC=\mathit{\ln}(q)\rho -2\mathit{\ln}\left(\hat{L}\right). $$(6.5)这里“q”是观测数量,“ ρ”是模型估计的参数数量,“$$ \hat{L} $$”是似然函数的最大化值。

由于似然函数的估计是一项非常规的任务,并且考虑到多模型估计的计算密集度,我们假设模型的误差是独立、相同和正态分布的。这个高斯假设导致 BIC 公式的以下修改:

$$ BIC=\mathit{\ln}(q)\rho +q\times \mathit{\ln}\left(\frac{1}{q}{\sum}_{d=1}^q{\left({y}_{a,d}-{LNLM}_{a,i}\left({x}_{i,d}\right)\right)}²\right). $$(6.6)这里“d”是观测索引。

我们可以看到,在这种假设下,BIC 的定义接近于 RMSE 的定义。但是,Eq. (6.6)的第一项考虑并惩罚了用于拟合的观测数量。请注意,多模型估计是使用可能具有不同样本大小的基本模型完成的,具体取决于当前窗口中每个回归器的样本大小。考虑到这个多模型的特点是 BIC 相对于 RMSE 来区分不同基本模型的优势。

毫不奇怪,BIC 过滤器的结果与使用 RMSE 过滤的结果相当(图 6.3):

图 6.3

BIC 过滤器:t-统计量作为噪声过滤器分位数的函数

6.3.4 使用动态最优过滤进行选择

基于我们对各种指标进行过滤的完整样本结果,很明显基于 F 检验的p-值不应该用于进行预测的选择,而 RMSE 和 BIC 的性能是可接受的。由于这些性能与这些指标的数学定义是可比较的,我们选择通过将它们结合起来来避免任何任意选择。因为我们最终依赖于分位数,我们可以通过对 BIC 和 RMSE 的排名值求和并排名该和来创建一个平衡的组合度量:$$ {DFM}_t=\mathit{\operatorname{rank}}\left[\mathit{\operatorname{rank}}\left({BIC}_t\right)+\mathit{\operatorname{rank}}\left({RMSE}_t\right)\right]. $$(6.7)这里 DFM 是时间 t 时刻所有基本模型的“双重过滤度量”向量,rank 是排名操作符。

我们需要确定一个适当的分位数阈值来进行过滤。然而,尽管在这里考虑使用完整样本数据作为过滤指标选择的一种可容忍方式,⁷但保持全样本方法来设置阈值会导致过度拟合的风险很高,因为最终结果会反映某种形式的样本内优化。因此,过滤阈值的设置仅使用点时数据。此外,阈值适应于每个多模型,因此不再假设不同股票回报之间的同质性。

对于特定的多模型,在每个日期,我们计算由双重过滤度量的不同分位数过滤的平均预测。然后,每个季度,我们重新计算下一天的股票回报对当前过滤/聚合预测的单变量回归,用于不同的分位数。对于当前日期,我们因此再次获得一个t统计量曲线,反映了不同过滤分位数的预测能力,可能看起来像 6.4 图所示,作为问题的代表性示例!

图 6.4

DFM 过滤器示例:作为噪声过滤分位数的函数的t-统计量

对于当前多模型和当前日期,我们获得了可能的不同阈值的预测能力评估。因此,我们能够选择相对于该曲线在某种意义上最优的阈值。请注意,由于所选指标似乎不能更多地消除噪声,我们将分析限制在最高分位数,⁸这有助于避免陷入某些极端稀缺(和虚假)的极值。

一个简单而可能天真的方法是简单地选择对应于最高t统计量的分位数。我们采取了不同的方法。

当通过增加分位数来包含新的预测因子时,我们可以期望以下输出:

  • 如果添加的信息不包含在先前的分位数中(因此添加的预测因子是不相关的)并且是相关的,则平均预测应显示更高的t统计量。

  • 如果添加的信息不包含在先前的分位数中,并且只是微弱相关的,则总体上,未加权的聚合预测能力可能不太好,导致t统计量较小。

  • 如果这些信息是相关的,但在先前的分位数中已经部分包含,则在总体预测中可能会被过度加权,导致t统计量较小。

  • 最后,如果这些信息纯粹是来自虚假预测因子的噪声,我们可以预期t统计量会急剧下降。

从描述增加分位数对 t 统计量的影响的命题中,我们可以认为 t 统计量的减小并不一定意味着增加的预测仅包含噪音。 由于信息宝贵,我们采取保守的方法,仅删除我们最怀疑纯粹是噪音的预测。 最终,似乎最可能的是,在增加分位数后 t 统计量最大的噪声增加会发生在 t 统计量最大的下降后。 因此,我们将最优阈值定义为使 t 统计量曲线的一阶导数最小化的阈值。

最优阈值然后每个季度使用一个 36 个月滚动窗口执行回归动态重新计算。该过程分别应用于多项式模型。

6.4 预测的聚合

使用动态最优过滤器选定的预测,我们在本节中提出了几种候选技术来聚合这些预测。

6.4.1 使用贝叶斯模型平均进行预测聚合

贝叶斯模型平均(BMA)是一种常用的方法,用于组合预测(关于介绍,请参见 Hoeting 等人,1999 和 Raftery 等人,1997)。它已经在多模型的上下文中被用于通过 Guan(2019)组合基本模型。通过为每个基本模型分配一个概率,BMA 提出了一个综合预测,该预测考虑了模型不确定性。对于给定的多项式:$$ E\left[{y}_{t+1}|{X}_t\right]=\sum \limits_{i=1}^n\hat{\varphi_{i,t}}\left({X}_{i,t}\right)\times p\left({\varphi}_{i,t}\left({X}_{i,t}\right)|{X}_t\right) $$(6.8)这里 y[t + 1] 是我们试图预测的变量,X[t] 是在时间 t 的因子集,而 φ**i 是在时间 t 的因子 i 的基本模型。

这种方法相当直观,因为不同的预测是可信度加权的,但是它并未考虑到不同模型可能存在相关性。 (后验)概率由贝叶斯定理定义为:

$$ p\left({\varphi}_{i,t}\left({X}_{i,t}\right)|{X}_t\right)=\frac{p\left({X}_t|{\varphi}_{i,t}\left({X}_{i,t}\right)\right)\ast p\left({\varphi}_{i,t}\left({X}_{i,t}\right)\right)}{\sum_{j=1}^Ip\left({X}_t|{\varphi}_{j,t}\left({X}_{j,t}\right)\right)\ast p\left({\varphi}_{j,t}\left({X}_{j,t}\right)\right)}. $$(6.9)由于后验概率是以似然度来表达的,它与 BIC 相关,可以用 BIC 来近似它(Raftery,1995):$$ p\left({\varphi}_{i,t}\left({X}_{i,t}\right)|{X}_t\right)\approx \frac{e{-{BIC}_i/2}}{\sum_{j=1}n{e}^{-{BIC}_j/2}}. $$(6.10)在我们的情况下,由于多模型估计的计算强度,需要进行这种近似(请回想一下 BIC 可以很容易地被计算为均方误差的函数,在某些假设下)。由于 BIC 可能非常大,因此在实践中,我们可以从中减去任何方便的值,通常是不同模型的 BIC 值的最小值,这不会影响比率。在我们的情况下,BIC 值的结果分散仍然非常大,导致(数值)无法计算可靠的指数。因此,我们进一步使用以下方式来近似上述比率:$$ p\left({\varphi}_{i,t}\left({X}_{i,t}\right)|{X}_t\right)\approx \frac{-{BIC}_i}{\sum_{j=1}^n-{BIC}_j}. $$(6.11)这个最终的近似导致概率的集中,可能削弱 BMA 的结果。

6.4.2 使用增值平均进行预测聚合

我们在这里介绍一种权重方法,旨在根据其增值平均化预测。为了解释我们所说的这个术语,让我们重新使用第二章中的讲堂隐喻。我们在一所大学的讲堂里,在经过筛选的学生(筛选出的预测者)面前,试图预测资产未来回报的几轮。我们观察他们反复的猜测,我们需要将它们聚合起来以获得一个综合的预测。我们建议个体预测的权重应考虑所述预测的以下两个属性:

  • 可信度:随着时间推移,提供更好预测的学生应该具有较大的权重。

  • 原创性:提供不同预测的学生也应该具有较大的权重,因为只是重复已知内容的人并没有添加任何信息。

请注意,这两个特性不是相加的,而是相乘的。一个可信但不原创的人应该有一个小的权重,因为他们的观点是重复的(如果你得到完全相同的预测 10 次,你希望将每次的权重设为大约 1/10 再加总)。一个原创但不可信的人不是你想要考虑的人,因此应该有一个非常小的权重。当这两个特性同时出现在一个预测者身上时,我们认为这个预测者为整体预测增加了价值,因此它们应该与较大的权重相关联。当考虑到可信度时,我们想要用我们通常使用的传统拟合优度度量来选择基本模型。但从戏剧性的隐喻角度来看,我们希望考虑每个学生预测的准确性。用贝叶斯术语来说,问题的第一个视角是先验,第二个是后验。第一个视角考虑样本内拟合优度,第二个视角考虑样本外结果。在我们通常的抗过度拟合的关注中,我们倾向于采用第二种方法,并建议使用样本外版本的 RMSE:$$ {RMSE}_{OOS,i,t}=\sqrt{\frac{1}{\tau }{\sum}_{s=t-\tau}^t{\left({y}_s-{\varphi}_{i,s-21}\left({x}_{i,s-21}\right)\right)}²}. $$(6.12)这里的“i”是考虑的基本模型的索引,“t”是给定日期,“ τ”是用于计算的窗口长度,“y[t]”是实现的股票回报,“ LNLM**i, t − 21”是一个月前对这个股票回报的预测。

另外,为了考虑我们因素的有效预测能力,这个度量具有一个优势,即它可以在比多模型的窗口更短的时间范围内计算。实际上,提供基本模型的稳健估计通常需要深度滚动窗口进行多模型估计,通常设置为 5 年(即大约 1260 个数据点)。如果我们考虑到我们始终在 LNLM 模型的估计中使用 10 折交叉验证,那么这样做就是在 126 个点上进行的伪样本选择μ⁹。这个 3 位数可能是最小值,以确保估计的可靠性。然而,如果我们需要这样的窗口深度来提供目标变量和预测变量之间的良好模型,那么没有理由认为这个窗口是评估这种联系显著性的最合适的窗口。预测变量之间的联系动态可能会更快地变化,在当前应用中,我们因此考虑了一个 2 年的窗口来计算样本外 RMSE。

RMSE 越小,预测器的可信度越大。因此,我们的可信度度量被定义为:$$ {B}_{i,t}\stackrel{\scriptscriptstyle\mathrm{def}}{=}\mathit{\log}{\left({RMSE}_{OOS,i,t}\right)}². $$(6.13)香农(1948)引入了一条消息 m 的信息度量,称为“自信息”或“惊奇”,其定义为其发生概率 p() 的函数,如下:$$ Info(m)=-\mathit{\log}\left(p(m)\right). $$(6.14)这个定义可能不容易理解。回到讲堂的隐喻,让我们考虑在某一时刻 t 我们得到的预测分布!$$ {\hat{y}}_i $$(图 6.5):

图 6.5

预测分布的程式化表示

考虑到所有预测都是相关的(它们已被过滤),一个等于分布平均值的预测!$$ \frac{1}{n}\sum \limits_{i=1}^n{\hat{y}}_i $$ 不包含太多信息,因为在考虑所有其他预测的同时,我们已经知道 m 值是可能的,甚至是可信的。另一方面,“$$ {\hat{y}}^{\ast } $$” 这一点包含了很多信息,因为如果没有这一点,我们就不知道事件 “$$ {\hat{y}}^{\ast } $$” 是可能的。因此,关于已经确切知道的事件的相关信息(p = 1)不包含任何信息,而关于完全意外事件的相关信息包含很多信息。因此,在讲堂上,一个学生,即使是优秀的,只是重复别人已经说过的话,并不会带来太多信息,而一个能够预测到完全意想不到事情的好学生应该被认真听取。

在我们的背景下,香农的信息度量反映了预测与基本模型之间的预测分布的独创性。因此,我们提出以下的预测独创性度量:$$ o\left({\hat{\varphi}}_{i,t}\left({x}_{i,t}\right)\right)\stackrel{\scriptscriptstyle\mathrm{def}}{=}\mathit{\log}{\left(\ p\left({\hat{\varphi}}_{i,t}\left({x}_{i,t}\right)\ |\ \left{{\hat{\varphi}}_{j,t}\left({x}_{j,t}\right)\forall j\in \left[1:n\right]\right}\ \right)\right)}². $$(6.15)我们用平方代替否定的使用来获得对数的正值,因为它允许更极端的独创性度量,从而导致更具区分性的度量。要将学生视为具有独创性,单个时间点的预测观察是不足够的,预测应该是重复独创的。因此,我们预测者的最终独创性度量是:$$ {O}_{i,t}\stackrel{\scriptscriptstyle\mathrm{def}}{=}\frac{1}{\tau }{\sum}_{s=t-\tau}^to\left({\hat{\varphi}}_{i,s}\left({x}_{i,s}\right)\right). $$(6.16)我们假设独创性属性的动态与基本模型的估计动态相关联,因此我们使用 5 年滚动窗口来计算预测者的独创性度量。如前所述,如果一个预测者同时具有可信度和独创性,则它会为整体预测增加价值,因此我们的增加值度量被定义为:$$ {AV}_{i,t}\stackrel{\scriptscriptstyle\mathrm{def}}{=}{B}_{i,t}\times {O}_{i,t}. $$(6.17)使用增值平均(AVA)进行的聚合预测是:$$ E\left[{y}_{t+1}|{X}_t\right]=\sum \limits_{i=1}^n\hat{\varphi_{i,t}}\left({X}_{i,t}\right)\times {AV}_{i,t}. $$(6.18)

6.4.3 聚合预测的不确定性

本节不直接涉及我们如何聚合预测,而是涉及我们如何对聚合预测的横截面进行加权。我们提出以下建议:当给定股票回报的多模型预测存在高度分散时,这反映了对聚合预测的不确定性,应予以惩罚。

因此,我们建议在每个日期将每个聚合预测除以该日期的多模型预测的标准差。

注意,这并不是对预测本身的改进,因为它涉及我们对每个聚合预测的信心,它更多地是与我们用来价值化我们的预测的横截面交易策略相关的人为现象。

6.5 交易策略

6.5.1 方法论

至于预测的估计,用于交易策略的投资范围大致等同于标准普尔 500,因为我们选择了在美国股票市场交易的 500 家最大市值的股票,每月重新报告。

与上一章相同,我们考虑了多头/空头交易策略。回顾一下,我们构建了一个基于每只股票多模型的预测的横截面的评分。评分按升序排序、排名并归一化,以在-1 和+1 之间均匀分布。如前所述,这使我们只考虑了策略相对基准的股票回报预测能力。

我们仍然使用评分的特征投资组合来获得投资组合的位置^(10)。提醒一下,特征投资组合是对评分具有单位暴露度的最小方差投资组合 (Grinold & Kahn, 2000)。然后,策略绩效就是我们投资范围内每个单独头寸的每日回报的总和。

不控制投资组合仓位的杠杆,但为了展示全样本年波动率为 10%,对该策略收益的各种不同变化进行了归一化处理,以便进行比较(选择全样本波动率归一化可能不如滚动归一化实际,但它确保了波动率平滑处理中不会隐藏波动率的局部峰值,例如策略回撤期间的波动)。

下面,我们首先提出了一个结合了预测计算步骤的所有步骤(过滤、聚合、控制股票不确定性)的策略版本。我们还通过计算此指标的p值来评估夏普比率的统计显著性。

然后我们分解了用于计算总体预测的不同技术,并评估它们对策略绩效的累积增益。

6.5.2 绩效

我们选择的最终版本经过了上面介绍的动态最优滤波器的筛选、使用了增值平均技术进行加权,并考虑了每个聚合预测的不确定性。

下图以对数刻度显示了策略的累积绩效(复合)(图 6.6):

图 6.6

多模型的预测策略绩效(年波动率 10%)

该策略实现了 0.91 的夏普比率,这在经济上是显著的。

通过计算其p值来评估这一指标的统计显著性。为此,我们遵循下面描述的过程:

  • 我们首先计算策略实现的夏普比率。

  • 其次,我们对个别股票收益进行洗牌,并重新计算投资组合的表现,从中推导出夏普比率。由于收益被洗牌,这个新值只反映了随机性,尽管保留了信号的自相关结构。

  • 将上一步重复 300 次,以获得随机夏普比率的分布。

  • 使用核密度估计(Parzen,1962;Rosenblatt,1956)平滑此分布,这使我们能够减少阈值效应,提高准确性,并略微延长分布定义的区间。

  • 然后,将初始投资组合的夏普比率替换为分布,夏普比率的p-值等于随机夏普比率超出该点的概率的积分。

下面是使用此方法得到的分布(图 6.7):

图 6.7

随机夏普比率的分布

最终策略的夏普比率的p-值等于 0.02%,这在统计学上非常显著。

方法的显著性为 6.5.3

在本节中,我们探讨了聚合预测的每个组成部分对最终性能的贡献,并评估了其统计显著性。

我们首先将所有多模型预测中的简单平均与使用动态最优过滤器进行简单平均过滤进行比较(图 6.8):

图 6.8

简单平均和简单平均过滤之间的表现比较

过滤使夏普比率从 0.5 增加到 0.63。当回归过滤组合的收益率时,我们注意到模型的常数是正的,尽管在统计上显著性较弱(表 6.1):Table 6.1

对简单平均过滤后的收益进行简单平均回归

Coef Std err t P > |t| [95.0% Conf. Int.]
常数 6.78E−05 0.0000 1.883 6.00% (*) −2.81e−06 0.000
简单平均 0.9376 0.006 164.224 0.00% (***) 0.926 0.949

我们可能期望使用的过滤器能够显著提高性能。然而,如果我们检查上述表现,似乎会导致策略大幅下跌的减少。原始策略的最大回撤确实从-35%减少到-28%,从水下回撤的图表中清楚地看出,过滤器提供了某种下行保护(图 6.9):

图 6.9

简单平均和简单平均过滤的水下回撤

基于这些发现,使用过滤器仍然似乎是合理的。

其次,我们使用所有情况下的过滤预测,将 BMA 和 AVA 方法与简单均值作为基准进行比较(图 6.10):

图 6.10

AVA、BMA 和简单均值过滤的性能比较

分别获得的夏普比率为 0.75、0.63 和 0.61 的 AVA、简单均值和 BMA 方法。此外,通过比较回归表(表 6.2)可明显看出,AVA 在简单平均值之上提供了统计上显著的额外回报,而 BMA 则不然:表 6.2

AVA 和 BMA 回报对简单均值过滤回报的回归

变量 系数 标准误差 t P > |t| [95.0% 置信区间]
AVA 常数 5.30E−05 0.0000 2.548 1.10% (**) 1.22e−05 9.37e−05
简单均值过滤 9.80E−01 0.0030 297.134 0.00% (***) 0.973 0.986
BMA 常数 −5.99E−06 0.0000 −0.569 57.00% ( ) −2.66e−05 1.47e−05
简单均值过滤 9.95E−01 0.0020 595.39 0.00% (***) 0.992 0.998

在我们的背景下,BMA 失败的可能解释有几种。首先,它被开发用于合并包含不同数量参数的模型,而这不适用于我们的基本模型,对于这些模型,BIC 仅对观察数量进行惩罚,这在大多数模型中是可比的。因此,BMA 在区分基本模型方面不如 AVA 好,因为它只关注拟合度,而 AVA 还考虑了不同预测之间的相关性。在我们的情况下,对后验的 BIC 近似虽然是不可避免的,但可能会导致对可能性的弱估计,因为它需要假设。此外,BIC 是基于对误差分布的假设得到的。最后,我们通过使用 BIC 的非指数化比率进一步近似了 Raftery 的 BIC 近似。因此,似乎 BMA 在大量多模型计算的背景下失败更多是由于实际不可行性,而不是方法本身的问题,绝对不可能声称相反。

最后,在横截面策略中考虑集合预测的不确定性也增加了价值,夏普比率从 0.75 增加到 0.91(图 6.11):

图 6.11

AVA 和 AVA 不确定性加权的性能比较

除了在经济上具有重要意义外,这种最后的技术在统计上也是显著的(表 6.3):表 6.3

AVA 不确定性加权回报对 AVA 回报的回归

系数 标准误差 t P > |t| [95.0% 置信区间]
常数 8.35E−05 0.0000 2.454 1.40% (**) 1.68e−05 0.000
AVA 9.45E−01 0.0050 175.133 0.00% (***) 0.934 0.955

这些结果表明我们策略的表现是显著的,并且这是由多种技术的组合造成的,这些技术已经具有一定的预测能力。因此,我们通过进行一系列鲁棒性测试来进一步控制这些结果的可靠性。

6.6 鲁棒性测试

6.6.1 与标准因子的相关性

由于我们采用了横截面投资组合构建,我们必须控制我们只是提出了一个精巧重新发现风险溢价或已经在文献中充分记录的因子的可能性。为此,我们控制了 Fama–French 三因子(1993), 即市场、价值和规模¹¹,标准动量,如 Carhart (1997) 所定义的,Jegadeesh (1990) 观察到的(短期)反转,De Bondt 和 Thaler (1985) 的长期反转以及低波动性异常(Baker et al.,2011)。

这些不同异常的投资组合仓位是使用与多模型特定预测相同的多空投资组合构建计算的,除了市场之外,对于给定的股票“a”,其投资组合仓位简单地等于:$$ {w}_a=\frac{MarketCapitalization_a}{\sum MarketCapitalization} $$(6.19)首先,我们展示了上述异常的投资组合收益的相关矩阵(见图 6.12):

图 6.12

几个异常的投资组合收益的相关矩阵

多模型预测的收益与其他因素的收益之间的相关性极低,我们不太可能解释我们的多空策略的表现是由其他异常的表现引起的。尽管如此,我们仍然通过使用全样本回归进行控制(见表 6.4):表 6.4

多模型预测的收益回归到其他因子的收益

系数 标准误差 t P > |t| [95.0% 置信区间]
常数 0.0004 0 3.402 0.10% (***) 0.000 0.001
长期反转 −0.0168 0.019 −0.894 37.10% ( ) −0.054 0.020
市场 0.0483 0.018 2.728 0.60% (***) 0.014 0.083
动量 0.0166 0.018 0.9 36.80% ( ) −0.020 0.053
反转 −0.0207 0.017 −1.205 22.80% ( ) −0.054 0.013
规模 −0.0281 0.018 −1.596 11.10% ( ) −0.063 0.006
价值 −0.0078 0.019 −0.421 67.40% ( ) −0.044 0.029
低波动性 0.0719 0.019 3.729 0.00% (***) 0.034 0.110

回归分析显示,有一个在经典因素无法解释的统计上显著的α值。常数的值大致相当于每年 10%的异常收益(与以前一样,所有收益已经标准化为年波动率的 10%)。虽然显著,但市场和低波动率异常的系数值很小。总的来说,回归的 R²为 1.2%:标准因素并不能解释多模型预测收益的主要部分。

6.6.2 对滤波回归窗口的敏感性

我们提出的动态最优滤波器使用t统计曲线来评估其目标函数。这些t统计是通过对股票收益与过滤后的聚合预测(使用不同的过滤分位数)进行一些单变量回归获得的。这些回归是动态执行的,使用了 36 个月的滚动窗口。下面我们控制策略绩效¹²对这个特定窗口选择的敏感性(表 6.5):表 6.5

绩效对滤波回归窗口的敏感性

动态最优滤波器窗口 平均毛收益率(%) 夏普比率 成交额 波动率(%) 最大回撤率(%)
24 个月 10.23 0.90 250.86 10.00 −21.01
30 个月 10.31 0.91 250.86 10.00 −21.89
36 个月 10.19 0.90 250.86 10.00 −21.46
42 个月 10.27 0.91 250.86 10.00 −21.96
48 个月 10.56 0.94 250.86 10.00 −21.80

选择 36 个月的窗口并不会真正影响绩效。实际上,通过更大范围的参数空间的探索,策略的绩效甚至可能会提高,正如 48 个月窗口的绩效所示。

6.6.3 绩效的稳定性

我们通过不同的延迟分析绩效的稳定性,以达到期望的持仓。本章中使用的延迟是在信号计算后的一天,这是保守的,因为它假设需要整个交易日来达到持仓。在许多情况下,这种假设可能是现实的,即如果使用的执行系统只在一天的特定时间发送订单(例如在收盘竞价期间),或者如果订单在整个交易日内执行以最小化市场影响。用于评估绩效稳定性的延迟为 1、2、3、5、10 和 21 天,我们通过几个指标来逼近它(表 6.6):表 6.6

不同交易延迟的绩效统计数据

延迟 平均毛收益率(%) 夏普比率 成交额 波动率(%) 最大回撤率(%)
1 天 10.19 0.91 250.83 10.00 −21.46
2 天 9.36 0.82 250.80 10.00 −22.32
3 天 7.73 0.65 250.75 10.00 −26.49
5 天 9.22 0.80 250.69 10.00 −19.48
10 天 3.13 0.19 250.54 10.00 −27.40
21 天 3.43 0.22 250.23 10.00 −26.04

因此,在达到位置后仅几天的延迟后,夏普比率就会下降。这通常表明有一个快速信号,这一点通过高换手率[¹³]以及信号的自相关图(图 6.13)得到了证实:

图 6.13

信号的自相关图

这种模式意味着该策略将与大量交易成本相关联,这应该鼓励我们在实施的情况下将其与其他策略结合起来。

6.6.4 对信誉度度量窗口的敏感性

在计算附加值平均方法使用的权重时,我们计算样本外 RMSE 来得出信誉度度量。样本外 RMSE 是通过将每个预测与最终实现的股票回报值进行比较获得的。RMSE 是从相关错误的总和中获得的,并且该总和是在一个短期滚动窗口内的。下面,我们测试了该参数不同值对性能的影响(表 6.7):表 6.7

对于信誉度度量窗口的性能敏感性

AVA—信誉度窗口 平均总收益率(%) 夏普比率 换手率 波动率(%) 最差回撤(%)
12 个月 10.08 0.89 250.86 10.00 −24.38
18 个月 10.14 0.89 250.86 10.00 −22.47
24 个月 10.19 0.90 250.86 10.00 −21.46
30 个月 10.16 0.90 250.86 10.00 −21.94
36 个月 10.02 0.88 250.86 10.00 −22.02

在这里,如果窗口选择相对合理,那么很明显参数选择只对策略的性能有微弱影响。

6.6.5 对原创度度量窗口的敏感性

附加值平均预测权重的另一个组成部分是原创度量,我们使用滚动 5 年窗口计算平均信息。这个滚动窗口的长度对性能影响微乎其微(表 6.8):表 6.8

对原创度度量窗口的性能敏感性

AVA—原创度窗口 平均总收益率(%) 夏普比率 换手率 波动率(%) 最差回撤(%)
3 年 10.20 0.90 250.86 10.00 −21.49
4 年 10.20 0.90 250.86 10.00 −21.30
5 年 10.19 0.90 250.86 10.00 −21.46
6 年 10.16 0.90 250.86 10.00 −21.64
7 年 10.10 0.89 250.86 10.00 −21.85

6.6.6 未考虑参数的敏感性

两个参数可能会被测试它们的敏感性,但在当前系列的稳健性测试中没有考虑,因为由于它们需要大量计算,重新执行 polymodel 估计是不可能的。

polymodel 估计使用的窗口已经设置为默认的 5 年。这样的选择可能会产生影响,正如我们在第四章中看到的那样。然而,第四章和第五章似乎都表明,用于估计 polymodel 的 5 年窗口是最佳选择。正如之前解释的,这个特定窗口使用 1,260 个点,因此每个 LNLM 的 μ 的分层 10 折交叉验证的伪样本估计中使用了 126 个点。5 年窗口可能会在一个稳健参数选择和足够自适应地建模资产回报动态之间达到最佳平衡。

在 LNLM 的分层 10 折交叉验证中,要记得观察是从每个观察分布层随机抽取的。对于这种随机抽样的影响,应该通过敏感性分析来控制使用的种子。如果由于计算资源的限制无法测试种子的敏感性,那么第五章的结果表明,LNLM 拟合似乎不太受种子的影响。

6.7 结论

在本章中,我们提出了特定组成部分的股票回报的可靠预测。这些预测通过一种成功的交易策略进行了验证,其夏普比率达到了 0.91(p 值为 0.02%)。我们还证明了该信号与用于解释股票回报横截面的标准因子是不同的。

这些结果得益于新技术的发展,这些技术解决了关于 polymodel 预测使用的常见关注点:预测的选择和聚合。

为了进行选择,我们提出了一个动态的、即时的筛选器,成功地移除了最嘈杂的预测因子,并减少了交易策略的回撤。

我们提出了一种新颖的聚合方法,同时考虑了预测因子的伪样本拟合度和预测之间的相关性。增值平均法已经被证明能显著提高交易策略的表现。

除了第四章的市场回报预测和第五章的行业回报预测外,本章的预测构成了用于股票市场的多维预测系统的第三个基石。这些结果进一步支持 polymodels 作为分析复杂系统节点、做出预测,并最终设计盈利交易策略的工具的可靠性。

面向金融市场的人工智能:多模型方法(二)

原文:zh.annas-archive.org/md5/0aabc8078dabbde7af4df5aa9d55c374

译者:飞龙

协议:CC BY-NC-SA 4.0

第七章:遗传算法组合预测

Thomas Barrau¹ 和 Raphael Douady² (1)AXA 投资经理合唱团有限公司,香港,中国香港特别行政区;(2)巴黎第一索邦大学经济中心,法国巴黎

摘要

我们提出了一个函数,可以将市场、行业和个别股票收益的预测结合到一个单一的投资组合中。该组合通过双重嵌套优化进行,使用数字优化和遗传优化来考虑交易成本。结果得到的聚合交易策略在扣除交易成本后达到了 0.94 的夏普比率,而市场投资组合仅为 0.43。我们提出的遗传优化也胜过了简单的风险平价基准。

关键词:遗传算法、Polymodel 理论、人工智能、机器学习、α 组合、交易成本、股票收益的横截面、市场定时、交易策略、交易信号、股票收益预测、风险平价

7.1 引言

本章的目的是提出一种将第 4、5 和 6 章中获得的预测进行组合的方法。这些预测是通过市场、行业和股票收益的特定部分的不同方式进行的。正如在介绍中所述,将这些不同预测组合起来的投资组合的收益可以表示为以下函数的形式: $$ {r}_P={\varOmega}_p\left({r}_M,{\mathcal{F}}_I,{\mathcal{F}}_S\right). $$(7.1) 这里的 Ω[p] 是子投资组合收益的聚合函数,r[M] 是市场因子投资组合的收益, $$ {\mathcal{F}}_I $$ 是由行业因子集合构成的投资组合的收益,而 $$ {\mathcal{F}}_S $$ 则是由特定因子集合构成的投资组合的收益。在我们的情况下,由于我们各自的集合中只有一个行业和一个特定因子,因此方程 (7.1) 可以简化为以下形式: $$ {r}_P={\varOmega}_p\left({r}_M,{r}_{AFI,I},{r}_{PP,S}\right). $$(7.2) 这里的 r[AFI, I] 是反脆弱性指标行业投资组合的收益,而 r[PP, S]* 则是 Polymodel 预测特定投资组合的收益。*

因此,本章的目的是提出首个可扩展的ω(omega)的定义。

首先,我们注意到ω在第四章中专门讨论市场定时的信号部分已经被部分定义。事实上,由于它是原始因子回报的函数,ω包括了聚合投资组合表现的市场和因子定时元素。但这一点不太重要,只是一种定义上的问题。更有趣的是,我们应该观察到,将特定和行业回报的横截面预测与市场回报的时间序列预测混合在一起并不会导致直观的投资组合构建。因此,由于最终是由对同一投资领域所采取的头寸定义的,我们决定直接聚合不同预测的投资组合头寸(而不是信号),以简化处理。

机器学习方法,尤其是神经网络,最近在预测器的组合方面与经典的线性回归等传统方法相比取得了巨大的改进(正如 Gu 等人 2018 年 所示)。然而,由于我们只有三个预测要组合,用非线性方式定义ω似乎有些过火。因此,我们选择通过对子投资组合进行线性加权来定义ω。

然而,我们不应该过于简单化。事实上,正如本章后面所强调的,即使在我们的简单情况下,交易成本对策略最终实施的表现也非常重要。因此,我们将交易成本管理纳入到ω中,以产生更优异的回报。

交易成本的管理通过交易的部分执行和适当的子投资组合加权来实现。与每个子投资组合相关联的权重是由专门设计用于此目的的遗传算法确定的。当前章节的主要提议是通过优化不同股票回报组成部分的预测的最佳组合来利用遗传算法来最大化投资组合的净夏普比率。

遗传算法已经被用来组合不同的预测器。Zhang 和 Maringer(2016)提出了一种遗传算法来组合横截面预测器,可以理解为因子。虽然他们在算法设计中没有考虑交易成本,但他们的遗传算法的应用仍然类似于我们的。Allen 和 Karjalainen(1999)主要使用遗传算法来发现技术交易规则(基于预测器的市场内外信号),但也用来组合它们。同样,他们的算法没有引入交易成本。在他们的 2012 年的论文中,Sefiane 和 Benbouziane 展示了用遗传算法构建一个 5 资产投资组合的效率,在均值方差意义上是最优的。这样的问题也与我们当前的问题相似,因为我们正在寻求最佳地组合三个子投资组合的投资组合,这三个子投资组合可以被视为三个资产。Sinha 等人(2015)也提出了一种用于投资组合优化的遗传算法,没有考虑交易成本。

遗传算法也已被用来限制交易成本。确实,Lin 和 Wang(2002)提出了一种考虑交易成本的均值方差优化的遗传算法,但他们的设置略有不同(他们使用固定的交易成本和整数股数,而我们使用比例交易成本,我们认为这更加现实)。

当然,减少交易成本的同时组合不同的预测器(或 alpha)的问题已经在 Gârleanu 和 Pedersen 的开创性论文中讨论过(2013),他们建议使用动态规划来减少交易费用。我们在当前章节中重新使用了他们框架的一部分,这可以理解为在他们第五部分(“理论应用”)的案例 2(“基于安全特征的相对价值交易”)中提到的理论案例的经验实现。除了他们的研究外,还有一些其他方法被开发用来减少交易成本。例如,Ruf 和 Xie(2019)提出了一种方法来限制交易成本对系统生成的投资组合的影响,尽管他们没有为此目的使用遗传算法。

因此,据我们所知,一种基于遗传算法的方法,允许我们组合 alpha 以及净交易成本的表现的方法似乎在文献中不存在,这就是我们的提议。

本章的其余部分组织如下:

  • 在第一部分中,我们介绍了我们即将聚合的不同预测器,以及它们的定义、投资组合构建方法和经济原理。

  • 在第二部分中,我们提出了一个非常简单的组合方法,在文献中是标准的,是遗传算法超越的基准。我们在这里介绍了交易成本的问题,以及一种“a la Gârleanu–Pedersen”的方法来减少它们。

  • 在第三节中,我们介绍了用于加权相应预测的子组合的遗传算法。

  • 最后,我们进行了一系列鲁棒性测试,并总结了本章。

7.2 策略分析

7.2.1 市场回报的预测

市场回报的预测是在第四章中开发的。用于预测的信号是通过估算 S&P 500 的 polymodel 构建的。然后测量每个基本模型的 RMSE,以形成 RMSE 的分布。这个分布捕捉了市场与其整个经济环境之间的联系的强度。根据滚动方法,信号然后学习了发生在熊市之前的 RMSE 的分布。然后将该分布与当前分布进行比较,以形成对下个月市场回报方向的预测。

因此,信号是一个开关型投资信号,通过在风险关闭时以 0.5(空头头寸)的动态杠杆投资于市场组合,当风险开启时为 +2(多头头寸)。结果的组合相对缓慢,半衰期¹为 47 天。平均而言,该组合的杠杆为 1.37。下面是基于此市场定时组合的累积表现²,从 2005-01-01 到 2018-28-09(图 7.1)。该时期的夏普比率为 0.92。

图 7.1

基于市场回报预测的组合表现

7.2.2 行业回报的预测

行业回报的预测是在第五章中开发的。用于预测的信号是使用 LNLM 模型构建的,其中每个行业回报作为目标变量,市场回报作为解释变量。然后根据每个行业对市场的凹凸性计算脆弱性的度量(即塔勒布的反脆弱性概念(见塔勒布,2012))。然后根据每个行业对市场的凹凸性计算脆弱性的度量,然后计算脆弱性的度量,一个大的正信号对应一个高度脆弱的行业。事实上,脆弱的行业似乎受益于风险溢价,因为它们对极端市场偏差的敞口通过更高的回报得到补偿。

信号然后以长短方式实施,平均预期对市场暴露较小。投资组合的头寸是使用特征投资组合(Grinold & Kahn,2000)获得的,这基本上是对信号进行均值方差优化,实现目标波动率为 10%。结果投资组合也是一个(非常)慢的投资组合,半衰期约为 400 天,但是,平均杠杆达到 8.31,比市场投资组合更具杠杆。请注意,对于长短组合来说,这种杠杆水平比仅多头组合更少问题,因为多头头寸的成本可以部分由空头头寸融资。下面是行业投资组合的累积表现,从 2005-01-01 到 2018-28-09(图 7.2)。达到的夏普比率为 0.96。

图 7.2

基于行业收益预测的投资组合表现

7.2.3 特定收益的预测

特定收益的预测是在第六章中进行的。信号是通过对多模型进行直接应用而获得的:进行预测。对于股票收益的横截面的每家公司,我们使用大量市场变量(股票指数,货币,商品等)估计一个多模型,目标变量是公司的特定收益。然后使用该多模型进行预测。在对预测进行选择和聚合方法后,为每家公司获得一个组合预测,从而形成整个股票收益的预测。

与行业预测类似,信号然后通过目标波动率为 10%的长短特征投资组合实施。由于我们选择的投资组合构建方式,结果投资组合变化迅速,半衰期为 9 天,并且平均杠杆与行业投资组合相似(平均为 8.27)。下面是特定投资组合的累积表现,从 2005-01-01 到 2018-28-09(图 7.3)。达到的夏普比率为 1.07。

图 7.3

基于特定收益预测的投资组合表现

7.2.4 相关性分析

对不同投资组合之间以及与市场投资组合的收益相关性进行分析,可以帮助我们理解将它们组合的潜在分散效益。下面是每日收益的相关性矩阵(图 7.4):

图 7.4

交易策略每日收益的相关性矩阵

市场投资组合(基准)和市场定时投资组合 unsurprisingly 相关联,但相关性仅为 30%,考虑到信号实施方法,这似乎相对较低。特定投资组合似乎是一个很好的分散风险者,而行业预测显示与市场投资组合存在一些相关性。如果我们使用每周收益率考虑相关性,如下所示(图 7.5):

图 7.5

交易策略的每周收益相关性矩阵

使用月度收益率,市场定时投资组合似乎与基准更相关,而行业预测明显更不相关(图 7.6):

图 7.6

交易策略的每月收益相关性矩阵

我们在每日表格(图 7.4)中观察到的行业预测的相对高(23%)相关性主要是由其与市场投资组合的尾部相关性所解释的。事实上,仅保留两端的 1% 最极端的市场收益来计算相关性,会导致市场和行业投资组合之间的尾部相关性达到 41%。因此,在极端波动期间,行业投资组合与市场更相关。由于行业投资组合的收益来自于对极端市场风险的暴露,预计即使是长/短期投资组合构建也无法完全消除市场风险。

在我们即将构建的总投资组合中,这种负特性得到了负的尾部相关性的补偿,特定投资组合(-12%)和市场定时投资组合(-31%)与基准之间存在着负的尾部相关性。

风险平价组合

引入风险平价

可以使用 1/3 权重来组合三种不同的投资组合。遵循这种 1/N 方法已被证明是一种强大的聚合预测方法,在许多情况下很难击败(见 Rapach 等,2010;Timmermann,2006)。然而,我们使用的预测,即使考虑相同的资产,也受到不同投资组合构建方法的扭曲,因此更适合聚合子投资组合而不是预测。此外,子投资组合的相关性足够低,可以被视为不同的资产。在组合多个资产的投资组合时,也发现 1/N 方法是强大的(DeMiguel 等,2009)。

然而,在我们的设定中,1/N 应该是什么并不清楚。给予具有非常不同杠杆的投资组合相同的资金似乎是不公平的,这些杠杆范围从 1 到 8 不等。一个解决方案可能是调整投资于不同投资组合的资本,以便所有投资组合实际上都投资了相同数量的资金(这等于资本×杠杆)。但是,我们直接遇到的问题是市场定时策略的表现得益于动态杠杆。因此,资本的调整似乎不适合创建 1/N 策略。

另一种方法是给予每个策略相同的波动率预算,导致 1/波动率的权重。这种方法称为“风险平价”,已经以各种格式实施,无论是在学术作品中还是在经验投资组合中,都表现出良好的结果(Clarke 等人,2013)。我们将其用作定义聚合方法基准的起点。使用滚动 5 年窗口³来计算波动性得到的权重如下(图 7.7):

图 7.7

风险平价组合:随时间变化的策略权重

我们观察到权重非常稳定,这是一个有趣的特性,因为不稳定的权重会导致投资组合更多的换手,因此会有更多的交易成本。我们还注意到特定预测投资组合的波动性相对较小,这导致了风险平价加权投资组合的权重更高。

以下是使用此方法获得的聚合投资组合的随时间变化的表现(图 7.8):

图 7.8

风险平价投资组合的总体表现

除了在很长时间内非常稳定外,所获得的表现还显示出非常令人羡慕的指标:夏普比率达到了 1.58,年均收益率为 18%,实现波动率为 10%,最差回撤为 9%。

7.3.2 交易成本很重要

我们提出了一个第一个,直观的聚合投资组合的实现,我们看到了一个很高的总体表现。然而,更多的不仅仅是作为交易策略预测能力的有用指标,模拟投资组合的表现间接地暗示着该策略可能是有利可图的。这种盈利性,要有效,必须通过在现实世界中实施的最终测试。尽管这超出了我们在此进行的学术工作的范围,但我们仍然可以通过在我们的建模中引入交易成本来减少实际世界的损益和我们的模拟之间的距离。

股票市场的交易成本由几个因素组成:经纪人费用,不同的税费,当然还有交易的市场影响。历史上已发现,包括这些不同类型成本的比例聚合交易成本每单位周转量约为 10 个基点至 25 个基点⁴(Sweeney,1988);Allen & Karjalainen,1999)。更近期的 Guo(2006)发现了 25 个基点的值,这似乎与最新研究保持一致(例如 Brière 等人(2019)进行了一项使用大型资产管理公司数据的研究,使他们的结果在我们的交易策略实施背景下尤其相关)。

我们选择保守地考虑比例交易成本的 25 个基点数量,将其加到风险平价投资组合的总收益中,以形成投资组合的净收益。让我们称投资组合在我们的 500 支股票投资领域内采取的仓位向量为“w”。在日期 t:$$ {w}_t=\left({w}_{1,t},{w}_{2,t},\dots, {w}_{500,t}\right). $$(7.3)交易“Δ”由两个日期之间的仓位差异给出:$$ {\varDelta}_t={w}_t-{w}_{t-1} $$(7.4)因此,除去交易成本后的投资组合绩效为:$$ {r}_{P,t}=\sum \limits_{a=1}^{500}{w}_{a,t}\times {r}_{a,t}-\left|{\varDelta}_{a,t}\right|\times 0.0025. $$(7.5)由于交易成本的增加,绩效大幅下降,夏普比率变为-4.88,这强调了理论与实际策略实施之间差距的重要性。

7.3.3 交易成本的 ex-ante 最优降低

将交易成本纳入考虑后观察到的绩效显著下降可以通过更少天真的投资组合构建大大减少。实际上,交易明显导致了过高的成本。

Gârleanu 和 Pedersen (2013) 在金融领域推广了动态规划的应用。 他们降低投资组合交易成本的提议基于两个核心原则:目标前瞻,部分交易朝向目标。 我们这里着重讨论第二个原则,该原则在他们的论文中由方程 (7.6) 反映出来:$$ {w}_t=\left(1-\theta \right){w}_{t-1}+\theta\ {aim}_t. $$(7.6)这里 w 是投资组合所持头寸的横截面,aim 是在没有交易成本的世界中我们想要实现的投资组合,θ 是最佳交易速率,即将总交易量与目标投资组合之间的百分比,最大化净收益。我们通过数值计算前期最佳交易速率来实现这一原则,使用 5 年滚动窗口(在模拟开始时窗口再次扩展)。 因此,θ 成为一个时间相关参数:$$ {w}_t=\left(1-{\theta}_t\right){w}_{t-1}+{\theta}_t\ {aim}_t. $$(7.7)下面是 θ 随时间变化的取值(图 7.9):

图 7.9

前期最佳交易速率随时间变化

尽管这些值可能看起来很小,考虑到相对较高的交易成本水平(回想一下基本投资组合的净夏普为−4.88),这并不完全令人惊讶。 而且,较高的值很快导致较低的回报,正如表 7.1 所示:⁵表 7.1

不同交易速率的年度净收益

交易速率(%) 平均年净收益率(%)
1.0 9.42
1.5 9.07
2.0 8.37
2.5 7.54
3.0 6.67
4.0 4.98
5.0 3.42

从这张表中可以清楚地看出,探索更高的交易速率值是不值得的。

使用我们的前期滚动最佳策略,净收益达到 9.10%,这使得滚动方法的结果与最佳后期交易速率表现可比。 这些诚实的结果应该与我们现在考虑的夏普比一起考虑,考虑净收益:0.81。 下面是信号的净累积表现(图 7.10):

图 7.10

风险平价投资组合净表现,带动态规划平滑处理

显然实现的表现表明,适当的投资组合构建对于宣称该策略可能是有利可图的至关重要。 正如以前的文献中所显示的那样(Ciliberti & Gualdi,2020),投资组合构建问题因此是交易策略的经济表现的重要决定因素。

7.4 基于遗传算法的组合

7.4.1 方法论

我们看到,风险平价允许我们在组合投资组合时实现显著的总体表现,当引入交易成本时,可以部分保留,通过大幅减少交易量。然而,交易成本的存在使得人们对风险平价作为组合方法的选择是否恰当产生了不确定性。特别是,对策略的分析表明,特定回报的预测对应于变化最大的子组合(远远超过),使其成为聚合组合的交易成本的潜在主要贡献者。与此同时,特定投资组合是波动性最低的投资组合,使得风险平价分配给该投资组合的比例为 50%。因此,扣除交易成本后,使用风险平价可能是一个次优的加权选择。

一个合适的加权算法应该平衡总体性能、交易成本和风险,风险以组合的波动性来衡量。因此,它将导致一个更优越的净夏普比率,可以作为一个优化的指标。然而,如果我们保持之前提出的滚动最优交易率机制,那么子组合加权优化问题将嵌套在交易率优化问题中。因此,使用数值优化算法可能是保持我们最终设置相对简单的合适选择。

遗传算法将是这项任务的一个合适的候选者。由 Holland 在 1975 年引入(有关原始论文的更近期版本,请参阅 Holland (1992)),遗传算法已被广泛应用于金融领域的各种优化问题(有关遗传算法在金融中的介绍和应用的评论,请参见 Pereira (2000))。作为一种优化算法,它确实适用于子组合加权问题。

遗传算法将优化问题以个体(或染色体)的人口形式表示,这些个体在模仿自然选择的机制下逐步演变。我们以下描述染色体人口如何演变,直到它达到最终状态,解决了日期 t 的优化问题,使用经典算法来适应我们当前的优化问题。

使用遗传算法意味着优化以一组竞争个体的形式表示。其中每个个体都是优化问题解的表示。个体的特征由其基因型确定,通常由 0 和 1 的向量表示。在我们的情况下,第v个体的基因型是一个包含每个子组合权重的向量(为了保持合理的多样化水平,权重为正且不低于 15%):$$ {g}_v=\left({\beta}_{v,M},{\beta}_{v,I},{\beta}_{v,S}\right)\kern1.5em s.t.\kern1.25em {\beta}_{v,M}+{\beta}_{v,I}+{\beta}_{v,S}=1\kern1.75em s.t.\kern1.25em {\beta}_{v, sub}\ge 0.15\  for\  sub\  in\ \left{M,I,S\right}. $$(7.8)这里的 β[v, M] 是市场子组合的权重,β[v, I] 是(反脆弱性指标)行业子组合的权重,而 β[v, S] 是(Polymodels 预测)具体子组合的权重。这个基因型随着时间而演变,一个简单的动态表示如下:$$ {g}_{v,t}=\left({\beta}_{v,t,M},{\beta}_{v,t,I},{\beta}_{v,t,S}\right). $$(7.9)算法从生成随机初始种群“IP”开始,即一组具有基因型的 50 个个体,这些基因型是在均匀分布中随机选择的:$$ {IP}_t=\left{{g}_{1,t},{g}_{2,t},\dots, {g}_{50,t}\right}. $$(7.10)然后根据适应性评分对这些个体进行评估。在我们的情况下,个体的适应性评分是通过投资组合的净夏普比率(在交易费率优化后)加权计算的。在时刻 t,聚合投资组合w,定义为与个体v对应的位置向量,因此为:$$ {w}_{v,t}=\left(1-{\theta}_{v,t}\right){w}_{v,t-1}+{\theta}_{v,t}\ \left({\beta}_{v,t,M}\times {w}_{t,M}+{\beta}_{v,t,I}\times {w}_{t,I}+{\beta}_{v,t,S}\times {w}_{t,S}\right). $$(7.11)在这里,最优交易速率每天都会计算,使用先前描述的过程。请注意,这样的聚合投资组合构建意味着聚合函数 omega 是线性的,取决于交易速率:$$ {\varOmega}_{v,t}\left({r}_M,{r}_{AFI,I},{r}_{PP,S}\right)\Rightarrow {\varOmega}_{v,t}\left({\theta}_{v,t},{\beta}_{v,t,M},{\beta}_{v,t,I},{\beta}_{v,t,S}\right). $$(7.12)因此,与个体v相关的投资组合的实现净收益是:$$ {r}_{v,t}=\sum \limits_{a=1}^{500}{r}_{a,t}\times {w}_{a,v,t}-\left|{\varDelta}_{a,v,t}\right|\times 0.0025 $$(7.13)因此,个体的适应性评分简单地是其夏普比率,我们使用过去 10 年的净投资组合收益来计算:$$ {S}_{v,t}=\left(\sum \limits_{s=t-252\ast 10}^t{r}_{v,s}-{risk}_{-}{free}_{-}{rate}_s\right)/{\sigma}_{v,s\to t}\times \sqrt{252}. $$(7.14)这里 σ[v, s → t] 是截至日期 t 的过去 10 年中投资组合超额日收益的标准差。适应性评分被归一化,以便它们都是正值,通过从所有适应性评分中减去最小的评分来实现:$$ S{\prime}_{v,t}={S}_{v,t}-\mathit{\min}\left({S}_t\right). $$(7.15)个体的适应性评分决定了其在下一时期的繁殖概率,定义为:$$ {rp}_{v,t}=S{\prime}_{v,t}/\sum \limits_{v=1}^{50}S{\prime}_{v,t}. $$(7.16)然后繁殖阶段开始,结构如下:

  • 两个个体,被称为“父母”,是从初始种群中随机选择的,其选择概率来自于上述方程(Eq. (7.16)。

  • 这两个父母产生两个孩子,这是通过一种称为“交叉”的操作获得的:父母交换他们的基因型的一部分,在我们的案例中是 1 个元素(基因型的 1/3),即 1 个子投资组合权重。

  • 每个孩子有 30%的变异概率。如果其中一个孩子突变了,就给它一个随机的基因型。这个特性允许种群保持遗传多样性,即它防止优化算法过快收敛。

重复生殖阶段 25 次,生成由 50 个个体组成的新种群“NP”。这个新种群将成为下一个“时期”的初始种群,它代表了种群的新进化时期:$$ {NP}_{t, epoch=1}={IP}_{t, epoch=2}. $$(7.17)这个完整的过程,它规定了一个初始种群如何进化成为一个新种群,然后重复 20 次,使用 t 时刻可用的最近 10 年的相同数据:$$ {IP}_{t, epoch=1}\to {NP}_{t, epoch=1}={IP}_{t, epoch=2}\to {NP}_{t, epoch=2}=\dots ={IP}_{t, epoch=20}\to {NP}_{t, epoch=20}. $$(7.18)例如,从 2015 年 12 月 31 日开始,我们使用 2006 年 1 月 1 日至 2015 年 12 月 31 日的数据。我们创建一个初始的随机基因型,并按照上述的繁殖/选择过程更新每个时期的初始种群,使其成为上一个时期的新种群。最后,我们计算最后一代个体的基因型的平均值。在这个阶段,种群的多样性已经减少,因为选择过程随着时间的推移倾向于消除不适应的个体。

因此,平均基因型由我们在日期 t 获得的最终子投资组合权重给出。然后,这些权重用于产生我们在接下来的一年中考虑的最终汇总投资组合的回报。回到之前的例子,我们使用了截止到 2015 年 12 月 31 日可用的数据来产生子投资组合权重。通过这种方式获得的汇总投资组合绩效仅在 2016 年及以后感兴趣(否则所呈现的绩效将因内样本优化而受到影响)。我们仅考虑 2016 年的这种绩效,之后完整的过程会重复进行,以生成 2017 年及以后的汇总投资组合的外样本绩效,并且以这种滚动方法持续下去。⁶

7.4.2 结果

下面是遗传算法产生的子投资组合权重(图 7.11):

图 7.11

遗传算法组合:策略的权重随时间变化

预料之中,由于个体的适应度分数基于它们的收益,相比于风险平价,该算法倾向于低估特定投资组合的权重,因为该投资组合在交易成本方面可能非常不利。除此之外,我们可以看到即使权重随时间变化,子投资组合的加权方案也不会出现极端的重组,即使市场投资组合似乎随着时间的推移更多地投资。

该策略的净夏普比率为 0.94,而风险平价投资组合为 0.81,而年净回报分别为 10.40%和 9.10%。以下是两个累积损益曲线(图 7.12):

图 7.12

风险平价和遗传算法组合绩效的比较

从 2006-01 的价值为 100 开始,到 2018-10,遗传算法组合投资组合和风险平价组合的最终价值分别为 353 和 295。遗传算法投资组合似乎在大多数时间内提供更高的回报,正如我们可以从两种策略的累积损益差异(图 7.13)中评估的那样:

图 7.13

组合方法之间随时间的累积损益差异

除了经济上显著的绩效增长,改进在统计上也是显著的。这可以通过使用线性模型对遗传组合回报建模来评估。该模型包括一个常数和风险平价回报。经 OLS 估计,该模型的常数参数显示了一个 t 值为 2.30,对应于 2.2%的p-值。

通过遗传算法聚合的投资组合也超越了市场投资组合。以下是两个投资组合的损益曲线(标准化为 10%年波动率以进行比较)(图 7.14):

图 7.14

遗传算法组合和市场投资组合绩效的比较

最终的综合投资组合与市场投资组合呈 40%的相关性。然而,遗传组合的夏普比率在该时期达到了 0.94,而市场投资组合仅为 0.43。如果我们考虑到市场投资组合达到的最大回撤,市场投资组合为-55%,而遗传投资组合仅为-22%。

7.5 鲁棒性测试

我们对遗传算法使用的不同参数对策略绩效的敏感性进行了分析。

7.5.1 变异概率

上述算法版本中使用的变异概率为 30%。下面,我们展示了策略对于 10%、20%、30%、40%和 50%变异概率的净夏普比率:

性能似乎对该参数的变化相对稳健。它似乎在 30%达到了一个最优水平,这个高水平是合理的,因为突变概率是算法防止过拟合的主要防线。对于我们给定的周期数量,较低的概率会导致潜在的早期收敛到“极端”解决方案,而逐渐增加概率则可以防止算法的收敛。需要注意的是,对这种推理的支持更多地来自于其内在的有效性,而不是检查表 7.2 的数字,因为我们对夏普比率差异为 0.02 的统计显著性表示怀疑。表 7.2

对夏普比率对突变概率的敏感性

突变概率 10% 20% 30% 40% 50%
净夏普比率 0.91 0.92 0.94 0.91 0.92

7.5.2 染色体数量

在上述算法的版本中,我们使用了 50 个染色体。下面,我们展示了策略在 20、35、50、75 和 100 个染色体内的净夏普比率(表 7.3):表 7.3

对夏普比率对染色体数量的敏感性

染色体数量 20 35 50 75 100
净夏普比率 0.92 0.92 0.94 0.89 0.92

更多的染色体数量可能会提供更稳健的结果,但也会以更高的计算时间为代价,这似乎并不符合性能的要求。以 75 个染色体实现的性能似乎有点令人担忧。策略的实证实现应该考虑到这一点,例如通过对不同数量的染色体获得的子组合权重进行平均。

7.5.3 周期数量

在上述算法的版本中,我们使用了 20 个周期。下面,我们展示了策略在 5、10、20、30 和 50 个周期内的净夏普比率(表 7.4):表 7.4

对夏普比率对周期数量的敏感性

周期数量 5 10 20 30 50
净夏普比率 0.88 0.92 0.94 0.93 0.91

在这里,我们再次看到所选择的参数对过度和不足拟合的问题相对应于一个最优值。其他参数配置,如果联合调整,可能会导致类似或更高的性能(例如,具有更大的突变概率和更多的周期)。

7.5.4 种子

用于在上述算法版本中获得可复制的随机性的种子标记为#1。随机性用于选择突变的染色体,生成初始种群权重和选择适合的个体进行繁殖。下面,我们展示了种子#1、#2、#3、#4 和#5 的策略的净夏普比率(表 7.5):表 7.5

对夏普比率对随机种子的敏感性

种子 #1 #2 #3 #4 #5
净夏普比率 0.94 0.92 0.93 0.94 0.89

除了选定的种子之外,其他种子提供了可比较的表现,除了种子#5。这证明了需要对从不同种子获得的子组合权重进行平均以避免性能对种子的敏感性。

7.5.5 最优交易速率窗口

遗传算法投资组合考虑到交易成本,这要归功于使用前期最优交易速率,该速率在给定滚动窗口上测得最大的净夏普比率。上述算法版本中使用的滚动窗口长度为 5 年。下面,我们显示了策略在 3、4、5、6 和 7 年期间的净夏普比率(表 7.6):表 7.6

净夏普比率对最优交易速率窗口的敏感性

最优交易速率窗口 3 年 4 年 5 年 6 年 7 年
净夏普比率 0.92 0.92 0.94 0.92 0.93

再次表现出对该参数变化的敏感性似乎相当小。

总的来说,使用基于遗传算法组合得到的聚合策略的表现并不特别受到采用算法参数的其他配置的影响。这种行为表明上述结果具有很高的鲁棒性。

7.6 结论

本章表明,投资组合构建对于实施交易策略至关重要。它提出了一种解决股票回报率不同预测的子投资组合加权问题的解决方案,同时显著降低了交易成本。这样的解决方案并不是琐碎的,因为它涉及一个双层嵌套的优化问题。

还可以探索其他优化方法,例如(随机)梯度下降,鉴于它在其他机器学习应用(如神经网络)中的成功。

然而,所呈现的结果表明,遗传算法适用于α组合问题,使我们能够在有效地考虑交易成本的同时执行α组合。这种投资组合构建方法似乎在经典基准之上增加了价值,并且据我们所知,它尚未在文献中提出过。此外,聚合投资组合在考虑期间内呈现出市场的两倍夏普比率,与市场的相关性降低以及回撤显著减少相关联。

从聚合预测的角度来看,这表明所得到的交易策略可能是有利可图的。事实上,由于包含了交易成本,当前的设置相当现实。然而,所呈现的模拟的真实性仍然不完善,因为评估交易策略的盈利性的唯一方法是实施它(这是唯一一个消除了所有可能的偏见,如前瞻性偏见、选择性偏见、技术偏见(...)的解决方案)。然而,我们预计通过包含交易成本已经在一定程度上填补了这种真实水平的差距。请注意,我们间接考虑了头寸的融资,因为在所呈现的夏普比率的计算中从收益中扣除了无风险利率。然而,杠杆成本尚未包含在内,可能会在进一步的研究中予以考虑。

第八章:结论

Thomas Barrau^(1  ) 和 Raphael Douady²(1)AXA Investment Managers Chorus Ltd, 香港, 香港特别行政区。(2)经济中心, 巴黎索邦大学, 巴黎, 法国

摘要

我们通过总结书中提出的不同问题的答案来结束这本书。我们回顾了 Polymodel 理论的局限性如何得到解决。回顾本书中讨论的不同应用,我们概述了 polymodels 如何成功地为金融市场预测文献做出贡献,从而在应用于金融市场时提供有效的人工智能技术。

关键词:Polymodel 理论、人工智能、机器学习、遗传优化、市场定时、股票回报截面、行业回报截面、交易策略、交易信号、股票回报预测在本书的介绍中,我们提出了一个简单的投资组合回报模型,表示为市场、行业和股票回报的特定组成部分的函数:$$ {r}_P={\varOmega}_p\left({r}_M,{\mathcal{F}}_I,{\mathcal{F}}_S\right). $$(8.1)在介绍中,我们强调了优秀投资组合表现的事实,即在市场投资组合等简单投资组合之上增加价值的来源可能有三个方面:

  • 辨别未知因素,即“α”,解释行业或特定回报。

  • 定时子投资组合的表现,通过因子或市场定时。

  • 适当组装不同的子投资组合,即在欧米茄中定义权重。

在第四章中,我们提出了一个市场时间信号,似乎是未来市场回报的有效预测器。 这是对卓越投资组合绩效第二来源的贡献。 该章节对通过分析股票市场的相关结构检测系统性风险的广泛文献做出了贡献。 我们没有测量相关性,而是估计了一个多模型,并测量了每个基本模型的均方根误差。 RMSE 的分布被发现能够以非平凡的方式预测未来市场回调,因为我们观察到了链接的极端化,一些经济变量在危机前与市场更相关,而另一些(其中大部分)则不太相关。 这种对 Polymodel 理论的应用显示了它作为分析复杂系统特定节点的工具的有效性。 我们从我们的系统性风险指标中得出了市场时间策略,其 S&P 500 的毛夏普比率为 0.68,而仅投资于市场的比率为 0.35(这些数字是使用相等的投资组合回报波动率计算的)。 这种市场组合绩效的提高被证明在统计上非常显着,并且尽管进行了大量的稳健性测试,但仍然存在。

在第五章中,我们通过提出一个新的行业风险溢价,即反脆弱性因子,从 Taleb 开发的反脆弱性概念中派生出来,为超额绩效的第一来源做出了贡献。 已经证明它是行业回报的重要预测因子,尤其是有利可图的(达到的毛夏普比率为 1.10)。 该信号经受住了大量的稳健性测试,对于著名因子的回归表明,α与经典的 Fama&French 因子不同。 值得注意的是,它包含了试图捕捉极端市场风险溢价的其他因子(向下β和协偏度)所不包含的其他因素。 因此,这一章节是对金融领域非线性建模重要性的又一贡献。

另一个对优秀投资组合表现的第一个来源做出贡献的是第六章,该章节使用 polymodels 作为一种机器学习方法,以预测股票回报的交叉部分的特定组成部分。 对于交叉部分的 500 只股票中的每一只,我们定义了一个包含 1,134 个预测因子的 polymodel,该模型会动态重新估计。 我们开发了复杂的选择和聚合方法来应对这个数据挖掘练习。 选择是使用滚动双重过滤器进行的,聚合考虑了拟合优度和预测因子的相关性,这得益于信息论的使用。 考虑到预测因子的相关性的预测聚合方法的使用是 polymodel 理论的一个重要问题(如第二章所述),该问题在本章中找到了第一个答案。 基于这些特定预测实施的交易策略显示出 0.91 的总夏普比率。

第三个投资组合超额收益的来源在于为市场、行业和具体预测定义适当的组合函数“omega”。这个问题在第七章中进行了讨论,我们在其中将前三章得到的因子投资组合进行了合并。使用风险平价组合,综合交易策略达到了 1.58 的总夏普比率,显示了预测的高度和一致的预测能力。当引入现实(可能保守)的交易成本数值时,性能会下降,这就证明了基于遗传算法的组合方法的开发的必要性,该方法部分受到 Gârleanu 和 Pedersen 的动态规划模型的启发。遗传算法旨在解决一个嵌套优化问题,使我们能够同时获得三个子投资组合的最优权重以及策略的最优交易速率。从统计显著性的角度来看,它被证明优于风险平价组合。最终的综合投资组合在扣除交易成本后的夏普比率为 0.94。这个投资组合的一个自然基准将是引言中定义的简单投资组合:$$ {r}_{simple_ portfolio}={\beta}_M{r}_M+{\beta}_{mom}{r}_{mom}+{\beta}_{size}{r}_{size}+{\beta}_{value}{r}_{value}. $$(8.2)由于我们的目标是产生新的 alpha 信号和方法,我们避免了对动量、规模和价值因子的任何投资。因此,最终策略的基准投资组合是市场投资组合,在同一时期达到了 0.43 的夏普比率。因此,扣除交易成本后,综合交易策略的性能超过了市场投资组合的两倍以上,这是本书中开发的预测能力最具说服力的指标之一。

因此,本书对引言中提到的优越投资组合性能的三个来源做出了贡献。这些新颖的预测方法和 alpha 信号的开发没有 Polymodel 理论的支持是不可能的,该理论在第二章中有详细介绍。在以下章节中进行的多模型的实证应用,这第二章突出了使用多模型进行建模的理论好处。特别是,它表明,多模型特别适用于解决需要以数据驱动、稳健、准确和非过度拟合方式处理大量数据的人工智能问题。

关于估计组成多模型的基本模型的特定问题,本书介绍了一种新颖的技术,即线性-非线性-混合模型(LNLM 模型)。LNLM 模型提出通过将非线性部分与线性模型混合来正则化多项式模型的非线性部分。通过定制化 Stratified Cross-Validation 的使用来获得的非线性收缩。模拟结果显示 LNLM 模型既有效地减少了过拟合,又在计算时间方面表现良好。这一点尤为重要,因为书中展示的一些应用需要进行数十亿次模型估计。因此,LNLM 被证明是在大数据框架中工作的合适解决方案,并成功用于生成第 4、5 和 6 章的预测。

本书中由 LNLM 模型估算的多模型被证明对金融应用有用,然而,这些工具相当通用,并且可以用于任何应用数学感兴趣的领域。由于最终捕获了阻碍市场效率的行为偏差,预测方法也有潜力应用于任何金融市场,并不局限于股票市场。

我们提出的用于描述投资于股票市场的投资组合回报的简单模型应当得到丰富。如果根据文献中存在的大量预测因子适当加以补充,它可以成为一个极其强大的预测构建框架。书中提出的形式中的聚合函数 omega 在形式上是可扩展的,但它应该朝着更一般的方向发展,例如通过使用深度神经网络来估计,以便从后者作为通用函数逼近器的特性中受益。

书中的结果再次证实了市场效率的缺失。我们已经证明了能够持续战胜市场的可能性,但要牢记我们建立的框架所提供的视角,这本书显然只是关于预测金融市场可实现性的初稿。

这些结果强烈支持了多模型理论在建模的一般目的中与其他人工智能方法的有用性。

标签:01,预测,组合,人工智能,模型,面向,金融市场,我们,变量
From: https://www.cnblogs.com/apachecn/p/18191072

相关文章

  • 面向可复用性和可维护性的设计模式
    面向可复用性和可维护性的设计模式HITSoftwareConsturction哈工软件构造课程内容回顾——DesignPatternsforReuseandMaintainbality面向可复用性和可维护性的设计模式Outline(课件)CreationalpatternsFactorymethodpatterncreatesobjectswithoutspecifying......
  • OpenAI 或将推出多模态人工智能数字助理;研究发现部分 AI 系统已学会「说谎」丨 RTE 开
      这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(RealTimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观点,欢迎大家留言......
  • spring之AOP(面向切面编程)
    什么是AOP?AOP(AspectOrientedProgramming)意为:面向切面编程,体现了横切的思想,意思是在添加某项功能的时候,是以切面插入的方式实现的,对原有的代码不会产生改变。通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP在spring中的作用:在不改变原有代码的情况......
  • VMware vSphere Bitfusion 4.5.4 - 面向 AI 和 ML 应用提供弹性基础架构
    VMwarevSphereBitfusion4.5.4-面向AI和ML应用提供弹性基础架构请访问原文链接:VMwarevSphereBitfusion4.5.4-面向AI和ML应用提供弹性基础架构,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgVMwarevSphereBitfusion4.5|23NOV2021|Build4......
  • python教程12-面向对象进阶
    1、classmethod类方法类方法只能访问类变量,不能访问实例变量2、staticmethod静态方法不能访问类变量,也不能访问实例变量。除非在实例调用时给方法传实例。3、反射1-判断对象是否有属性的情况用法: 实例: __name__,模块被其他模块导入的时候调用,是你叫的名字。模块自己主......
  • py面向算法
    近期想系统性的学习学习python,我想着了解一门语言是不是最开始就要会用他的一些基本语法来写题呢,抱着这个想法我就开始用c++写完一道题后用py再写一遍.但是py主要的一些语法还好,只是表现形式不同而已,但是py的输入输出和数组方面相对来说特殊不少,或者根本就没有数组这个概念,......
  • cmd-parser - 一个非常简单好用的命令解析器+EmbedXrpc - 面向单片机的嵌入式小型RPC
    1、EmbedXrpc-面向单片机的嵌入式小型RPCEmbedXrpc类似于Google的gRPC,但是应用场景是单片机。RPC远程调用极大的方便了开发,使得不必关注于协议解析,数据的序列化和反序列化等繁琐的工作。项目主页: https://gitee.com/snikeguo/EmbedXrpcEmbedXrpc应用场景:单片机近距离Clie......
  • python教程11-面向对象
    python的面向对象和java有一些不一样:(java中,只有在类中定义的变量实例才能用,但是python更加灵活)类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实......
  • ELL-8051-LIB - 面向8051的高效低封装函数库+KLite - 简洁易用的嵌入式操作系统内核
    1、Arm-2D-基于Cortex-M的2D图形加速库ARM官方出品的2D图形加速库,在Cortex-M55系统频率8MHz下就可以实现30fps的渲染(6图层。320x240,rgb565)。项目主页: https://github.com/ARM-software/EndpointAI/tree/master/Kernels/Research/Arm-2DArm-2D库特性包括但不限于:*......
  • PikaScript - 面向嵌入式的超轻量级python引擎+Ring-Buffer - 仅80行代码的超简洁环形
    1、PikaScript-面向嵌入式的超轻量级python引擎PikaScript(前称mimiscript)是一个完全重写的超轻量级python引擎,零依赖,零配置,可以在少于4KB的RAM下运行(如stm32g030c8和stm32f103c8),极易部署和扩展。项目地址:https://github.com/pikasTech/pikascriptPikaScript是使用c语言写......