金融机器学习作为一门独立学科#

1.1 动机#

机器学习(Machine Learning, ML)正在改变我们生活的方方面面。如今 ML 算法完成的任务,直到不久前还只有专家才能胜任。就金融而言,这是采用颠覆性技术最激动人心的时刻——它将改变几代人投资的方式。本书讲解经过科学验证、我在二十年间实践有效的 ML 工具,这些工具帮助我为一些最苛刻的机构投资者管理了大量资金。

关于投资的书籍大多分为两类。一类是作者并未实践其所教的著作——它们包含极其优美的数学,描述的却是一个并不存在的世界。一个定理在逻辑上为真,并不意味着它在物理上也为真。另一类是作者缺乏严谨学术理论的著作——他们滥用数学工具来描述实际的观察结果,模型过拟合,一经实施便告失败。学术研究与金融市场的实际应用脱节,而交易/投资领域的许多应用又缺乏坚实的科学基础。

写这本书的第一个动机,是跨越横亘在学术界与工业界之间的鸿沟。我曾身处鸿沟两侧,深知跨越它的困难,也理解固守一方的容易。美德在于平衡。本书不会仅因数学之美而推崇某种理论,也不会仅因看似有效而提出某种方案。我的目标是传递那种只来自经验、并以严谨方式形式化的知识。

第二个动机源于让金融回归服务本源的愿望。多年来,我在学术期刊和报纸上发表的文章表达了对金融当前社会角色的不满。投资者被诱导在江湖骗子的煽动和大众媒体的鼓噪下,凭直觉豪赌自己的财富。在不久的将来,ML 将主导金融,科学将遏制猜测,投资将不再意味着赌博。我希望读者在那场革命中发挥作用。

第三个动机是许多投资者未能把握 ML 应用于投资的复杂性。这对于向「量化基本面」(quantamental)空间转型的自由裁量型公司似乎尤其如此。我担心他们的高期望无法实现——不是因为 ML 失败了,而是因为他们错误地使用了 ML。未来几年,许多公司将直接从学术界或硅谷引进现成的 ML 算法进行投资,我的预测是它们会亏损(输给更好的 ML 方案)。战胜群体的智慧,比识别人脸或驾驶汽车更难。通过本书,我希望你能学会解决那些使金融成为 ML 特别困难战场的一些挑战,比如回测过拟合(backtest overfitting)。金融 ML 是一门独立的学科,与标准 ML 相关但又有所区别,本书将为你揭开它的面纱。

1.2 金融机器学习项目失败的主要原因#

量化金融的失败率很高,金融 ML 尤其如此。少数成功者积累了大量资产,并为投资者持续带来卓越业绩。然而,这是一个罕见的结果,原因本书将会解释。在过去二十年里,我目睹了许多人来来去去,许多公司起起落落。根据我的经验,所有失败背后都有一个共同的关键错误。

1.2.1 西西弗斯范式#

自由裁量型投资组合经理(discretionary portfolio managers, PM)做出投资决策时,不遵循特定的理论或逻辑(如果有,他们就是系统型 PM 了)。他们消费原始的新闻和分析,但主要依靠自己的判断或直觉。他们可能基于某个故事为决策辩护,但每个决策都有一个故事。因为没有人完全理解他们下注背后的逻辑,投资公司让他们在各自独立的「孤岛」(silos)中工作,以确保分散化。如果你参加过自由裁量型 PM 的会议,你可能注意到它们是多么冗长而无的放矢。每个与会者似乎都执迷于某条轶事信息,并在缺乏基于事实的经验证据的情况下做出巨大的论证跳跃。这并不意味着自由裁量型 PM 不能成功——相反,其中一些人确实成功了。关键在于,他们天然无法作为一个团队工作。把 50 个自由裁量型 PM 放在一起,他们会相互影响,直到最终你为一个人的工作支付 50 份薪水。因此,让他们在孤岛中工作,尽可能少地互动,是有道理的。

但凡我看到这个模式被应用到量化或 ML 项目上,结果都是灾难。董事会的想法是:让我们对量化人员做对自由裁量型 PM 有效的事情——雇 50 个博士,要求每个人在六个月内产出一个投资策略。这种方法总是适得其反,因为每个博士都会疯狂地寻找投资机会,最终满足于:(1) 在过拟合回测中看起来很棒的假阳性,或 (2) 标准因子投资——一个人满为患、夏普比率低的策略,但至少有学术支持。两种结果都会让投资委员会失望,项目因此被取消。即使这 50 人中有 5 人发现了真正的成果,其利润也不足以覆盖 50 人的开支,于是这 5 人会另谋高就,寻求合理的回报。

1.2.2 元策略范式#

如果你被要求独自开发 ML 策略,胜算对你极为不利。产出一个真正的投资策略所需的努力,几乎和生产一百个一样多,而且复杂性令人望而生畏:数据整理与处理、HPC 基础设施、软件开发、特征分析、执行模拟器、回测等等。即使公司在这些领域为你提供共享服务,你就像一个宝马工厂的工人,被要求利用周围所有车间独自造出一整辆车。这周你需要是焊接大师,下周是电工,再下周是机械工程师,再下周是喷漆工……你会尝试、失败,然后回到焊接。这有什么道理?

我所知的每一个成功的量化公司,都采用了元策略范式(meta-strategy paradigm,López de Prado [2014])。因此,本书是为团队而非个人编写的研究手册。通过各章的学习,你将了解如何建立研究工厂以及流水线上的各个工位。每个量化人员的角色是专精于某一特定任务,成为该领域的顶尖专家,同时对整个过程有全局视野。本书勾勒了工厂蓝图——团队协作以可预期的速率产出发现,不依赖运气。这就是 Berkeley Lab 和其他美国国家实验室做出科学发现的方式——比如为元素周期表添加 16 种元素,或为 MRI 和 PET 扫描奠定基础。^1^ 没有哪个个人对这些发现负责,因为它们是每个人都做出贡献的团队努力的结果。当然,建立这些金融实验室需要时间,需要懂行且有经验的人。但你认为哪种方式成功几率更高——这种经过验证的有组织协作范式,还是让每个量化人员各自把巨石推上山峰的西西弗斯式替代方案?

1.3 本书结构#

本书理清了一张相互关联的主题之网,并以有序的方式呈现。每一章都假定你已阅读前面的章节。第 1 部分将帮助你以适合 ML 算法的方式结构化金融数据。第 2 部分讨论如何用 ML 算法对这些数据进行研究——重点在于通过科学过程进行研究并做出真正的发现,而不是漫无目的地搜索直到某个偶然的(很可能是错误的)结果冒出来。第 3 部分解释如何回测你的发现,并评估其为假的概率。

这三个部分概述了从数据分析到模型研究再到发现评估的整个过程。有了这些知识,第 4 部分回到数据层面,讲解提取信息特征的创新方法。最后,这些工作需要大量计算能力,因此第 5 部分以一些有用的 HPC 实践指南收尾。

1.3.1 按生产链结构#

在 16、17 世纪,开采金银相对简单。不到一百年间,西班牙珍宝船队让欧洲流通的贵金属翻了四倍。那个时代早已过去,如今勘探者必须部署复杂的工业方法,从成吨的泥土中提取微小的金粒。这并不意味着黄金产量处于历史低位——相反,如今矿工每年开采 2500 公吨微小黄金,而整个 16 世纪西班牙征服者平均每年仅获取 1.54 公吨!^2^ 可见的黄金只占地球黄金总量的极小部分。黄金国(El Dorado)一直都在……只要 Pizarro 能用显微镜换下利剑。

投资策略的发现经历了类似的演变。如果十年前个人发现宏观 alpha(即使用计量经济学等简单数学工具)还相对常见,那么如今这种可能性正迅速趋近于零。当今寻找宏观 Alpha 的个人,无论经验或知识如何,都在与压倒性的赔率搏斗。唯一真正的 Alpha 是微观的,找到它需要资本密集型的工业方法。就像黄金一样,微观 Alpha 并不意味着更小的总利润。今天的微观 Alpha 比历史上任何时期的宏观 Alpha 都要丰富得多。有大量的钱可赚,但你需要使用强大的 ML 工具。

让我们回顾现代资产管理公司生产链中涉及的一些工位。

1.3.1.1 数据管理者

这个工位负责收集、清洗、索引、存储、调整和向生产线交付所有数据。数值可以是表格化的或层次化的、对齐的或未对齐的、历史的或实时流的等等。团队成员是市场微观结构和数据协议(如 FIX)方面的专家。他们必须开发数据处理器来理解数据产生的上下文。例如,一个报价是被取消并在不同价位替换,还是被取消而不替换?每种资产类别都有自己的细节。例如,债券经常被交换或赎回;股票会经历拆分、反向拆分、投票权变化等;期货和期权必须展期;货币不在集中的订单簿中交易。这个工位的专业化程度超出了本书范围,第 2 章将仅讨论数据整理的几个方面。

1.3.1.2 特征分析师

这个工位负责将原始数据转化为信息信号。这些信息信号对金融变量有一定的预测力。团队成员是信息论、信号提取与处理、可视化、标签、加权、分类器和特征重要性技术方面的专家。例如,特征分析师可能发现,当 (1) 挂卖单被取消并替换为市价卖单,且 (2) 挂买单被取消并替换为更深处的限价买单时,抛售的概率特别高。这样的发现本身不是投资策略,可以有多种用途:执行、流动性风险监控、做市、持仓等。一个常见错误是认为特征分析师开发策略。相反,特征分析师收集和编目对多个工位有用的发现库。第 2-9 章和第 17-19 章专注于这个至关重要的工位。

1.3.1.3 策略师

在这个工位,信息特征被转化为实际的投资算法。策略师会梳理特征库,寻找开发投资策略的思路。这些特征是由不同的分析师在研究各种工具和资产类别时发现的。策略师的目标是理解所有这些观察结果,并形成一个解释它们的通用理论。因此,策略仅仅是旨在检验该理论有效性的实验。团队成员是具有深厚金融市场和经济学知识的数据科学家。记住,理论需要解释大量重要特征。特别地,理论必须识别导致某个代理人向我们输钱的经济机制——是行为偏差?非对称信息?还是监管约束?特征可以由黑盒发现,但策略是在白盒中开发的。把一堆编目的特征粘在一起并不构成理论。一旦策略定型,策略师会准备使用完整算法的代码,并将该原型提交给下面描述的回测团队。第 10 章和第 16 章专注于这个工位——当然,期望一本书揭示具体的投资策略是不现实的。

1.3.1.4 回测师

这个工位评估投资策略在各种情景下的盈利能力。其中一种情景是:如果历史重演,策略会如何表现。然而,历史路径只是随机过程众多可能结果之一,未必是未来最可能的情况。必须评估与所提策略的弱点和优势的知识相一致的替代情景。团队成员是深刻理解经验和实验技术的数据科学家。一个优秀的回测师会在分析中纳入关于策略如何产生的元信息。特别地,他的分析必须通过考虑提炼策略所需的试验次数来评估回测过拟合的概率。出于第 11 章将阐明的原因,该评估结果不会被其他工位复用。相反,回测结果只传达给管理层,不与其他人分享。第 11-16 章讨论该工位进行的分析。

1.3.1.5 部署团队

部署团队的任务是将策略代码整合到生产线中。某些组件可以被多个策略复用,尤其是当它们共享共同特征时。团队成员是算法专家和硬核数学程序员。他们的部分工作是确保部署的方案与他们收到的原型在逻辑上完全一致。部署团队还有责任充分优化实现,使生产延迟最小化。由于生产计算通常是时间敏感的,该团队将严重依赖进程调度器、自动化服务器(Jenkins)、向量化、多线程、多进程、图形处理器(GPU-NVIDIA)、分布式计算(Hadoop)、高性能计算(Slurm)以及并行计算技术。第 20-22 章涉及与该工位相关的各个方面,因为它们与金融 ML 相关。

1.3.1.6 投资组合监督

一旦策略部署,它就会经历一段 cursus honorum(晋升之路),包括以下阶段或生命周期:

  1. 禁运期(Embargo): 最初,策略在回测结束日期之后观测到的数据上运行。这段时期可能是回测师预留的,也可能是实施延迟的结果。如果禁运期表现与回测结果一致,策略晋升到下一阶段。
  2. 纸面交易(Paper trading): 此时,策略在实时数据流上运行。这样,表现将考虑数据解析延迟、计算延迟、执行延迟以及观测与建仓之间的其他时间差。纸面交易将持续进行,直到收集到足够证据表明策略按预期运行。
  3. 毕业(Graduation): 此阶段,策略管理真实头寸,无论是独立运行还是作为集成的一部分。表现会被精确评估,包括归因风险、收益和成本。
  4. 重新配置(Re-allocation): 根据生产表现,已毕业策略的配置会在多元化投资组合的背景下被频繁且自动地重新评估。一般而言,策略的配置遵循凹函数。初始配置(毕业时)很小。随着时间推移和策略如预期表现,配置会增加。随时间推移,表现衰减,配置逐渐变小。
  5. 退役(Decommission): 最终,所有策略都会被终止。这发生在它们表现低于预期的时间足够长,以至于可以得出支撑理论不再有经验证据支持的结论时。

一般而言,最好释放策略的新变体,并与旧版本并行运行。每个版本都将经历上述生命周期,而旧策略会因分散化获得较小的配置,同时考虑其较长业绩记录带来的信心程度。

1.3.2 按策略组件结构#

许多投资经理认为致富的秘诀是实现一个极其复杂的 ML 算法。他们注定会失望。如果只是编写一个最先进的分类器那么简单,硅谷的大多数人都会成为亿万富翁。一个成功的投资策略是多种因素的结果。表 1.1 总结了哪些章节将帮助你解决开发成功投资策略所涉及的每个挑战。

表 1.1 各章所涉挑战概览

PartChapterFin. dataSoftwareHardwareMathMeta-StratOverfitting
12XXX
13XXX
14XXX
15XXXX
26XXXXXX
27XXX
28XXX
29XXX
310XXXXXX
311XXX
312XXX
313XXX
314XXX
315XXX
316XXXXXX
417XXXXXX
418XXXX
419XXXXXX
520XXXX
521XXXXXX
522XXXXXX

在本书中,你会发现许多引用我多年来发表的期刊文章。与其重复,我经常指向其中一篇,你可以在那里找到对当前主题的详细分析。我引用的所有论文都可以从我的网站 <www.QuantResearch.org> 免费下载预印版。

1.3.2.1 数据

  • 问题:垃圾进,垃圾出。
  • 解决方案:使用独特的、难以操纵的数据。如果你是这些数据的唯一用户,无论其价值如何,都归你所有。
  • 如何做:

1.3.2.2 软件

  • 问题:专业化的任务需要定制化的工具。
  • 解决方案:开发你自己的类。使用流行库意味着更多竞争对手在抽取同一口井。
  • 如何做:
    • 第 2 章-第 22 章:贯穿全书,每一章我们都开发自己的函数。对于你的具体问题,你必须遵循书中的示例做同样的事。

1.3.2.3 硬件

  • 问题:ML 涉及所有数学中计算量最大的一些任务。
  • 解决方案:成为 HPC 专家。如果可能,与国家实验室合作建造超级计算机。
  • 如何做:
    • 第 20 章和第 22 章:学习如何以多进程架构思维。每当你编写库时,都要以函数可被并行调用的方式来组织。书中有很多示例。
    • 第 21 章:开发量子计算机算法。

1.3.2.4 数学

  • 问题:数学证明可能需要数年、数十年甚至数百年。没有投资者会等那么久。
  • 解决方案:使用实验数学。通过实验而非证明来解决棘手的难题。例如,Bailey、Borwein 和 Plouffe [1997] 在没有证明的情况下找到了 π 的龙头算法(spigot algorithm),打破了此前认为这类数学发现不可能的看法。
  • 如何做:
    • 第 5 章:熟悉保留记忆的数据变换。
    • 第 11 章-第 15 章:有实验方法可以比历史模拟更可靠地评估你的策略价值。
    • 第 16 章:样本内最优的算法可能在样本外表现很差。投资成功没有数学证明。依靠实验方法来引导你的研究。
    • 第 17 章和第 18 章:应用检测结构性突变和量化金融序列所携带信息量的方法。
    • 第 20 章:学习分布式计算的排队方法,以便拆分复杂任务并加速计算。
    • 第 21 章:熟悉量子计算机等使用的离散方法来解决棘手问题。

1.3.2.5 元策略

  • 问题:业余者开发单个策略,相信存在某种致富的神奇公式。相反,专业人士开发大规模生产策略的方法。钱不在于造一辆车,而在于造一个汽车工厂。
  • 解决方案:像经营企业一样思考。你的目标是像经营工厂一样经营研究实验室,真正的发现不源于灵感,而源于有条不紊的辛勤工作。这正是物理学家 Ernest Lawrence——美国第一个国家实验室的创始人——的哲学。
  • 如何做:
    • 第 7 章-第 9 章:建立能识别跨资产类别相关特征的研究流程,同时处理金融特征的多重共线性。
    • 第 10 章:将多个预测合并为一个下注。
    • 第 16 章:使用样本外表现良好的稳健方法为策略配置资金。

1.3.2.6 过拟合

  • 问题:标准交叉验证方法在金融中失效。金融中的大多数发现都是错误的,原因是多重检验和选择偏差。
  • 解决方案:
    • 无论做什么,都要问自己可能以什么方式过拟合。对自己的工作持怀疑态度,不断挑战自己证明你在增加价值。
    • 过拟合是不道德的。它导致无法兑现的有前途结果。明知故犯的过拟合就是彻头彻尾的科学欺诈。许多学术人员这样做并不意味着它是对的——他们不冒任何人的财富风险,甚至不冒自己的。
    • 这也是浪费你的时间、资源和机会。此外,行业只为样本外回报付费。你只有在为投资者创造了可观财富之后才能成功。
  • 如何做:
    • 第 11 章-第 15 章:有三种回测范式,历史模拟只是其中之一。每个回测都在某种程度上过拟合,学会量化过拟合程度至关重要。
    • 第 16 章:学习不以牺牲样本外表现为代价而过拟合样本内信号的稳健资产配置技术。

1.3.3 按常见陷阱结构#

尽管 ML 有诸多优势,但它绝非万灵药。ML 技术的灵活性和强大有其阴暗面。当被误用时,ML 算法会将统计偶然误认为模式。这一事实加上金融特有的低信噪比,几乎确保了粗心的用户会以越来越快的速度产出错误发现。本书揭示了 ML 专家在金融数据集上应用技术时犯的一些最普遍的错误。表 1.2 列出了一些这样的陷阱,以及相应章节中解释的解决方案。

表 1.2 金融 ML 中的常见陷阱

#类别陷阱解决方案章节
1认识论西西弗斯范式元策略范式1
2认识论通过回测做研究特征重要性分析8
3数据处理时序采样成交量时钟2
4数据处理整数差分分数阶差分5
5分类固定时间窗口标签三重障碍法3
6分类同时学习方向和规模元标签3
7分类非 IID 样本加权唯一性加权;序贯 bootstrap4
8评估交叉验证泄露净化和禁运7, 9
9评估走步法(历史)回测组合净化交叉验证11, 12
10评估回测过拟合合成数据回测;deflated Sharpe ratio10-16

1.4 目标读者#

本书呈现了专门为应对金融数据集挑战而设计的高级 ML 方法。所谓「高级」,我并非指极其难以理解,也非解释深度学习、循环或卷积神经网络的最新化身。相反,本书回答的是那些有将 ML 算法应用于金融问题经验的高级研究者会认为至关重要的问题。如果你是 ML 新手,没有使用复杂算法的经验,本书可能(暂时)不适合你。除非你在实践中遇到过这些章节讨论的问题,否则你可能难以理解解决它们的效用。在阅读本书之前,你可能想先学习近年来出版的几本优秀的 ML 入门书籍,我在参考文献部分列出了其中一些。

本书的核心读者是具有强大 ML 背景的投资专业人士。我的目标是让你将从本书中学到的知识变现,帮助我们实现金融现代化,并为投资者创造实际价值。

本书也面向在金融以外的各个领域成功实施过 ML 算法的数据科学家。如果你曾在 Google 工作并将深度神经网络应用于人脸识别,但当你在金融数据上运行算法时效果不佳,本书将帮助你。有时你可能不理解某些结构背后的金融逻辑(如元标签、三重障碍法、分数阶差分),但请耐心:一旦你管理投资组合的时间足够长,游戏规则以及这些章节的意义就会对你变得更清晰。

1.5 先决条件#

投资管理是最具多学科性质的研究领域之一,本书反映了这一事实。理解各个章节需要 ML、市场微观结构、投资组合管理、数学金融、统计学、计量经济学、线性代数、凸优化、离散数学、信号处理、信息论、面向对象编程、并行处理和超级计算等方面的实践知识。

Python 已成为 ML 的事实标准语言,我必须假定你是一位经验丰富的开发者。你需要熟悉 scikit-learn(sklearn)、pandas、numpy、scipy、multiprocessing、matplotlib 等库。代码片段使用这些库的常规前缀调用函数——pd 代表 pandas,np 代表 numpy,mpl 代表 matplotlib 等。关于每个库都有大量书籍,你对每个库的具体细节了解得永远不够。全书我们将讨论它们实现中的一些问题,包括需要注意的未解决 bug。

1.6 常见问题#

ML 算法如何在金融中有用?

许多金融操作需要基于预定义规则做决策,如期权定价、算法执行或风险监控。这是迄今为止大部分自动化发生的地方,将金融市场变成了交换信息的超高速、超连接网络。在执行这些任务时,机器被要求尽可能快地遵循规则。高频交易是一个典型例子。详见 Easley、López de Prado 和 O'Hara [2013]。

金融的算法化势不可挡。1968 年 6 月 12 日至 12 月 31 日间,纽约证券交易所每周三休市,以便后台赶上文书工作。你能想象吗?今天我们生活在一个不同的世界,10 年后情况会更好。因为下一波自动化不涉及遵循规则,而是做判断。作为受恐惧、希望和议程影响的情感生物,人类并不特别擅长做基于事实的决策,尤其当这些决策涉及利益冲突时。在这些情况下,由机器基于从硬数据中学到的事实来做判断,对投资者更有利。这不仅适用于投资策略开发,还适用于几乎所有金融建议领域:发放贷款、债券评级、公司分类、人才招聘、预测盈利、预测通胀等。此外,机器在编程设定下将始终遵守法律。如果做出了可疑决策,投资者可以回溯日志,准确了解发生了什么。改进算法投资流程比改进完全依赖人类的流程要容易得多。

ML 算法如何在投资上战胜人类?

你还记得人们曾确信计算机永远无法在国际象棋上战胜人类吗?或者 Jeopardy!?扑克?围棋?数百万年的进化(一种遗传算法)调谐了我们猿类的大脑,以在自然法则静止的敌对三维世界中生存。如今,当谈到在游戏规则每天都在变的高维世界中识别微妙模式时,所有那些调谐反而成了不利因素。ML 算法能像在我们熟悉的三维世界中一样轻松地在 100 维世界中发现模式。当我们看到算法犯愚蠢错误时都会发笑,但请记住,算法只存在了我们数百万年的一小部分时间。它们每天都在进步,而我们没有。人类是缓慢的学习者,这在像金融这样快速变化的世界中使我们处于劣势。

这是否意味着人类投资者没有空间了?

绝非如此。没有人类比计算机更擅长国际象棋。也没有计算机比人机协作更擅长国际象棋。自由裁量型 PM 在与 ML 算法对赌时处于劣势,但最好的结果可能来自将自由裁量型 PM 与 ML 算法结合。这就是所谓的「量化基本面」方式。全书你会找到可供量化基本面团队使用的技术,即允许你将人类猜测(受基本面变量启发)与数学预测相结合的方法。特别地,第 3 章引入了一种称为元标签(meta-labeling)的新技术,它允许你在自由裁量层之上添加 ML 层。

金融 ML 与计量经济学有何不同?

计量经济学是经典统计方法在经济和金融序列上的应用。计量经济学的基本工具是多元线性回归——一种 18 世纪的技术,Gauss 在 1794 年前就已掌握(Stigler [1981])。标准计量经济模型不学习。很难相信 21 世纪金融的复杂性可以被求逆协方差矩阵这样简单的东西所把握。

每门经验科学都必须基于观察建立理论。如果用于建模这些观察的统计工具箱是线性回归,研究者将无法识别数据的复杂性,理论将极其简单化、无用。我毫不怀疑,计量经济学是经济学和金融学在过去 70 年没有取得有意义进展的主要原因(Calkin 和 López de Prado [2014a, 2014b])。

几个世纪以来,中世纪天文学家观察天体并发展天体力学理论。这些理论从不考虑非圆轨道,因为它们被视为不神圣的、有悖上帝计划的。预测误差如此之大,以至于不得不设计越来越复杂的理论来解释它们。直到 Kepler 有勇气考虑非圆(椭圆)轨道,突然之间一个简单得多的通用模型就能以惊人的精度预测行星位置。如果天文学家从未考虑非圆轨道呢?那么……如果经济学家终于开始考虑非线性函数呢?我们的 Kepler 在哪里?金融没有 Principia,因为没有 Kepler 就没有 Newton。

金融 ML 方法不取代理论,它们引导理论。ML 算法在未被特别引导的情况下学习高维空间中的模式。一旦我们理解了哪些特征对某个现象有预测力,就可以构建理论解释,并在独立数据集上检验。经济学和金融学的学生选修 ML 课程而非计量经济学是明智的。计量经济学可能足以在金融学术界(目前)成功,但在商业上成功需要 ML。

你对那些将 ML 算法斥为黑盒的人怎么说?

如果你在阅读本书,ML 算法对你很可能是白盒。它们是透明的、定义良好的、清晰的模式识别函数。大多数人没有你的知识,对他们来说 ML 就像魔术师的盒子:「那只兔子从哪里来的?你怎么变戏法骗我们的,巫师?」人们不信任他们不理解的东西。他们的偏见根植于无知,苏格拉底式的疗法很简单:教育。此外,我们中有些人喜欢使用大脑,即使神经科学家还没有完全弄清楚大脑是如何工作的(它本身就是一个黑盒)。

你偶尔会遇到无可救药的卢德分子(Luddites)。Ned Ludd 是英国 Leicester 的织工,1779 年在愤怒中砸毁了两台织袜机。随着工业革命的到来,被机械化激怒的暴民破坏并摧毁了他们能找到的所有机器。纺织工人毁坏了如此多的工业设备,以至于议会不得不立法将「破坏机器」定为死罪。1811 年至 1816 年间,英格兰大片地区公开叛乱,以至于对抗卢德分子的英军比在伊比利亚半岛对抗拿破仑的还多。卢德分子叛乱以军事力量的残酷镇压告终。让我们希望黑盒运动不会走到那一步。

你为什么不讨论具体的 ML 算法?

本书对你选择的具体 ML 算法持不可知态度。无论你使用卷积神经网络、AdaBoost、RF、SVM 等,你都会面临许多共同的通用问题:数据结构化、标签、加权、平稳变换、交叉验证、特征选择、特征重要性、过拟合、回测等。在金融建模的背景下,回答这些问题并不简单,需要开发框架特定的方法。这才是本书的重点。

你还推荐哪些关于这个主题的书?

据我所知,这是第一本提供金融特定 ML 方法完整系统化论述的书:从专门讨论金融数据结构的一章,到金融序列标签、样本加权、时间序列差分……一直到专门讨论投资策略正确回测的完整部分。当然,之前有少量出版物(主要是期刊文章)将标准 ML 应用于金融序列,但这不是本书所提供的。我的目标是解决使金融 ML 建模特别具有挑战性的独特难点。像任何新学科一样,它在快速演进,本书将随着重大进展而更新。如果你想在未来版本中看到某个主题,请联系 mldp@quantresearch.org。我很乐意添加这些章节,同时致谢提出建议的读者。

我不理解某些章节和部分,该怎么办?

我的建议是先阅读章节末尾列出的参考文献。写书时,我必须假定读者熟悉现有文献,否则本书会失去焦点。如果阅读那些参考文献后章节仍无意义,可能的原因是它们与投资专业人士充分理解的问题相关(即使文献中没有提及)。例如,第 2 章将讨论调整期货价格以反映展期的有效方法——这是大多数从业者都知道的问题,尽管教科书很少涉及。我鼓励你参加我的定期研讨会,在演讲结束后向我提问。

为什么本书如此执着于回测过拟合?

有两个原因。首先,回测过拟合可以说是整个数学金融中最重要的开放问题。它是我们在计算机科学中的「P vs NP」。如果有精确的方法防止回测过拟合,我们就能把回测当现金用——回测几乎等同于现金,而非推销话术。对冲基金将有信心向投资组合经理配置资金。投资者会承担更少风险,愿意支付更高费用。监管机构将基于技能和知识的可靠证据向对冲基金经理授予牌照,不给江湖骗子留空间。在我看来,不涉及这个问题的投资书不值得你花时间。当支持 CAPM、APT、资产配置技术、风险管理等论证的经验结果是在未确定其错误发现概率的情况下被选出来的,你为什么要读这样的书?

第二个原因是 ML 是你研究武器库中的利器,也确实是一把危险的武器。如果回测过拟合在计量经济分析中是个问题,ML 的灵活性使其成为你工作中持续的威胁。在金融中尤其如此,因为我们的数据集更短、信噪比更低,而且我们没有可以控制所有环境变量进行实验的实验室(López de Prado [2015])。不解决这些问题的 ML 书对你的职业生涯可能弊大于利。

本书的数学命名法是什么?

开始写本书时,我考虑过在所有章节中为每个数学变量或函数分配一个符号。如果本书只涉及单一主题(如随机最优控制),这会很好。但本书涉及广泛的数学主题,每个都有自己的约定。除非我也遵循文献标准,否则读者会发现更难查阅参考文献,这意味着有时我们必须复用符号。为防止混淆,每章都在使用时解释命名法。大部分数学都配有代码片段,因此如有疑问,请始终遵循代码。

谁写了第 22 章?

一种流行的看法是 ML 是由 IBM、Google、Facebook、Amazon、Netflix、Tesla 等发明或完善的一项迷人新技术。确实,科技公司已成为 ML 的重度用户,尤其近年来。这些公司赞助了一些最受关注的近期 ML 成就(如 Jeopardy! 或围棋),这可能强化了这种看法。

然而,读者可能会惊讶地发现,事实上,美国国家实验室是在 ML 使用方面拥有最长记录和最丰富经验的研究中心之一。这些中心在 ML 流行之前就使用了它,并成功应用了几十年,产出了惊人的科学发现。如果预测 Netflix 应该推荐你观看什么电影是一项值得的努力,那么理解宇宙膨胀速率、预测哪些海岸线受全球变暖影响最大,或防止国家电网的灾难性故障也是如此。这些只是 Berkeley Lab 等机构在 ML 帮助下每天安静而不懈地研究的一些惊人问题。

在第 22 章中,Horst Simon 博士和吴柯成(Kesheng Wu)博士提供了一个主要从事涉及大数据、高性能计算和 ML 的大规模科学研究的美国国家实验室副主任和项目负责人的视角。与传统的大学环境不同,国家实验室通过组建遵循精心设计的程序、具有强大分工和责任划分的跨学科团队来实现科学突破。这种按生产链进行研究的研究模式诞生于近 90 年前的 Berkeley Lab,并启发了第 1.2.2 节和第 1.3.1 节中解释的元策略范式。

1.7 致谢#

Horst Simon 博士——Lawrence Berkeley National Laboratory 副主任——同意与 Berkeley Lab 和国家能源研究科学计算中心(NERSC)多个项目的负责人吴柯成博士合著第 22 章。^3^ ML 需要极大的计算能力,没有他们的慷慨支持和指导,我的研究将不可能进行。在该章中,Horst 和 Kesheng 解释了 Berkeley Lab 如何满足全球研究人员的超级计算需求,以及 ML 和大数据在当今科学突破中发挥的关键作用。

Riccardo Rebonato 教授是第一位阅读本书手稿并鼓励我出版的人。我与 Frank Fabozzi 教授关于这些主题的多次对话,对塑造本书目前的形式起到了关键作用。学术界很少有人有 Frank 和 Riccardo 的工业界经验,工业界也很少有人有 Riccardo 和 Frank 的学术血统。

在过去二十年里,我就本书主题发表了近百篇作品,包括期刊文章、书籍、章节、讲座、源代码等。据我最近统计,这些作品与该领域 30 多位顶尖专家合著,包括 David H. Bailey 教授(15 篇)、David Easley 教授(8 篇)、Maureen O'Hara 教授(8 篇)和 Jonathan M. Borwein 教授(6 篇)。在很大程度上,这本书也是他们的,因为没有他们的支持、见解和多年来持续的思想交流,本书不可能完成。逐一致谢耗时太长,因此我发布了以下链接,你可以在那里找到我们的集体成果:http://www.quantresearch.org/Co-authors.htm。

最后但同样重要的是,我要感谢我的一些团队成员校对本书并帮助制作部分插图:Diego Aparicio、Lee Cohn 博士、Michael Lewis 博士、Michael Lock 博士、曾亚雄(Yaxiong Zeng)博士和张志白(Zhibai Zhang)博士。

练习题#

  1. 你是否知道有公司尝试从自由裁量投资转向 ML 主导投资,或将两者融合为所谓的「量化基本面」基金?

    1. 它们成功了吗?
    2. 这一转型涉及哪些文化困难?
  2. 什么是数学金融中最重要的开放问题?如果这个问题被解决,以下各方如何使用它:

    1. 监管机构用它授予投资管理牌照?
    2. 投资者用它配置资金?
    3. 公司用它奖励研究者?
  3. 根据 Institutional Investor,只有 17% 的对冲基金资产由量化公司管理。截至 2017 年 6 月,所有量化基金共配置约 5000 亿美元,而一年前为 3860 亿美元。你认为是什么在驱动这种大规模的资产重新配置?

  4. 根据 Institutional Investor 的富豪榜,有多少量化投资公司跻身最赚钱的前 10 名?这与量化基金管理的资产比例相比如何?

  5. 计量经济学方法和 ML 之间的关键区别是什么?经济学和金融学如何从更新其统计工具箱中受益?

  6. 科学对人类大脑(或任何大脑)如何运作的理解极为有限。在这个意义上,大脑是一个绝对的黑盒。你认为金融 ML 的批评者为什么将其斥为黑盒,同时却拥抱自由裁量投资?

  7. 你读到一篇期刊文章描述了一个投资策略。在回测中,它实现了超过 2 的年化夏普比率,置信水平为 95%。使用他们的数据集,你能够在独立回测中复现他们的结果。为什么这个发现很可能是错误的?

  8. 投资顾问在代表投资者做决策时深受利益冲突之苦。

    1. ML 算法可以在没有利益冲突的情况下管理投资。为什么?
    2. 假设 ML 算法做出了导致亏损的决策。算法做了它被编程做的事,投资者同意了程序条款(经计算机日志的法医检查验证)。与自由裁量型 PM 判断失误导致的亏损相比,这种情况下对投资者来说好在哪?在每种情况下投资者的追索权是什么?
    3. 让金融顾问将他们的决策与这些中立代理人的决策进行基准比较是否有意义?

参考文献#

  1. Bailey, D., P. Borwein, and S. Plouffe (1997): "On the rapid computation of various polylogarithmic constants." Mathematics of Computation, Vol. 66, No. 218, pp. 903--913.
  2. Calkin, N. and M. López de Prado (2014a): "Stochastic flow diagrams." Algorithmic Finance, Vol. 3, No. 1, pp. 21--42.
  3. Calkin, N. and M. López de Prado (2014b): "The topology of macro financial flows: An application of stochastic flow diagrams." Algorithmic Finance, Vol. 3, No. 1, pp. 43--85.
  4. Easley, D., M. López de Prado, and M. O'Hara (2013): High-Frequency Trading, 1st ed. Risk Books.
  5. López de Prado, M. (2014): "Quantitative meta-strategies." Practical Applications, Institutional Investor Journals, Vol. 2, No. 3, pp. 1--3.
  6. López de Prado, M. (2015): "The Future of Empirical Finance." Journal of Portfolio Management, Vol. 41, No. 4, pp. 140--144.
  7. Stigler, Stephen M. (1981): "Gauss and the invention of least squares." Annals of Statistics, Vol. 9, No. 3, pp. 465--474.

参考书目#

  1. Abu-Mostafa, Y., M. Magdon-Ismail, and H. Lin (2012): Learning from Data, 1st ed. AMLBook.
  2. Akansu, A., S. Kulkarni, and D. Malioutov (2016): Financial Signal Processing and Machine Learning, 1st ed. John Wiley & Sons-IEEE Press.
  3. Aronson, D. and T. Masters (2013): Statistically Sound Machine Learning for Algorithmic Trading of Financial Instruments, 1st ed. CreateSpace.
  4. Boyarshinov, V. (2012): Machine Learning in Computational Finance, 1st ed. LAP LAMBERT Academic Publishing.
  5. Cerniglia, J., F. Fabozzi, and P. Kolm (2016): "Best practices in research for quantitative equity strategies." Journal of Portfolio Management, Vol. 42, No. 5, pp. 135--143.
  6. Chan, E. (2017): Machine Trading: Deploying Computer Algorithms to Conquer the Markets, 1st ed. John Wiley & Sons.
  7. Gareth, J., D. Witten, T. Hastie, and R. Tibshirani (2013): An Introduction to Statistical Learning: with Applications in R, 1st ed. Springer.
  8. Geron, A. (2017): Hands-On Machine Learning with Scikit-Learn and TensorFlow, 1st ed. O'Reilly Media.
  9. Gyorfi, L., G. Ottucsak, and H. Walk (2012): Machine Learning for Financial Engineering, 1st ed. Imperial College Press.
  10. Hackeling, G. (2014): Mastering Machine Learning with Scikit-Learn, 1st ed. Packt Publishing.
  11. Hastie, T., R. Tibshirani, and J. Friedman (2016): The Elements of Statistical Learning, 2nd ed. Springer-Verlag.
  12. Hauck, T. (2014): Scikit-Learn Cookbook, 1st ed. Packt Publishing.
  13. McNelis, P. (2005): Neural Networks in Finance, 1st ed. Academic Press.
  14. Raschka, S. (2015): Python Machine Learning, 1st ed. Packt Publishing.

注释#

^1^ Berkeley Lab, http://www.lbl.gov/about.

^2^ http://www.numbersleuth.org/worlds-gold/.

^3^ http://www.nersc.gov/about.