倍漾量化创始人冯霁:用AI构建投资未来,打造全流程AI量化私募
2023-03-23 09:23:28 | 来源:私募排排网 |
2023-03-23 09:23:28 | 来源:私募排排网 |
“复苏正当时,万事蕴新机”,由私募排排网、易方达基金主办,永安期货联合主办,万和证券、英大证券、东证期货、高临咨询、亚马逊云科技、希施玛、宏锡基金、津博基金、东英资管、牛资管协办,和讯为特邀媒体的“第十七届中国(深圳)私募基金高峰论坛”,于2023年3月16-17日在深圳星河丽思卡尔顿酒店举行。
在3月16日的会议上,倍漾量化创始人冯霁出席并进行了主题为《用AI构建投资未来》的明星私募投资报告会。
(资料图)
倍漾量化创始人冯霁博士是人工智能领域专家,创新工场南京国际人工智能研究院执行院长,倍漾量化是一家以人工智能技术为核心驱动力的量化对冲基金,团队汇集了ACM/ICPC金牌得主,人工智能领域顶级学者专家,以及知名投行,顶级互联网科技公司和前明星公募基金经理等精英人才。
以下为演讲全文
非常感谢排排网给我这个机会今天能跟大家学习交流。倍漾是一个用AI来构建量化交易的初创量化对冲基金。今天主要汇报两件事:
第一,跟大家汇报一下倍漾量化的基本情况和我们的价值观。我们成立的目的就是想看看只用机器学习技术,是否能支撑量化投资这件事,目前来看这个尝试是可能是有意义的。
第二,关于全流程AI投研框架,这个是我们提出的一个投研方法论,从数据,预测,决策和执行,如何用机器学习这个底座来全流程覆盖和支撑。
我们公司成立比较新,2018年,我那会儿在南京大学读博士,还没毕业的情况下,加入了创新工场担南京AI研究院的执行院长。当时我跟开复有一个当时来看比较激进的想法,我们在想如果纯用机器学习的技术是否能够重新搭建一套这样的量化投资的框架。在当时,机器学习技术可能只是金融工程某个投研环节中的一个小工具,我们认为人工智能应该是一个能够支撑整个投研的平台式应用,类似于一个底座。
也就是说,如果基于这个简单的逻辑,至少有可能做出来一个只用AI来把全流程进行赋能的公司,这是我们当时的想法。然后我们就开始在创新工场内部做了团队的组建,在2021年登记备案,2021年8月份发了第一个产品,现在公司还很年轻,资管规模还很小,10亿出头。但是初步来看成绩还不错,目前的尝试来看至少有一定意义。
开复是我们的战略顾问,在团队组建和重要的策略制定过程中给持续给我们以指导和帮助。周志华教授是我们的首席科学顾问,也在这件事情中给了我们很多帮助。作为一个量化的对冲基金,核心是人才。也就是说,其实我们想要像打造硅谷的一家科技公司那样去做一个私募。
比如很多人都想用机器学习来做量化投资,但是做出来的结果千差万别。例如ChatGPT这样伟大的一个模型,具体的算法原理相对来说较为公开透明的,为什么只有OpenAI能做出来,核心还是团队的能力,算力,数据别的大公司也有。
最近很多机构跟我交流,说我们也想用机器学习,但是为什么不work,我认为原因可能是有很多工程上的细节没有注意到,工程能力将会让结果完全不同,这是核心的问题。
所以我们团队主要由计算机科学、机器学习、计算机体系结构和高性能计算的人来把它当作一个纯机器学习的事情对交易数据做建模,因此团队文化上要有科技公司的基因。做量化看上去是做交易,但本质是数据科学。我们认为,量化私募的产品本质其实是一行行代码,我们想做的是去写那些能够生成最终程序的程序,也就是用AI生成交易策略。
其实作为高频量化阿尔法策略,需要有两个客观条件,一是活跃的交易市场,另外是市场的弱有效,就是我们可以利用除了此时此刻价格之外的信息对未来进行预测和决策。这些数据包括市场微观尺度、量价关系、基本面数据和另类数据。比如说现在的GPT技术的发展,另类数据会得到进一步的丰富。
下面跟大家介绍一下我们投研的方法论。
我们内部把它叫做全流程的AI。对于做量化来说最关键的是四个环节,数据、预测、决策、执行。
首先看数据,传统的做法是一帮有专家领域知识经验的人,人工定义出来怎么样在原始的数据上对交易标的进行刻画,俗称挖因子。我们这个环节由机器学习自动挖掘,不进行人工干预,术语叫表示学习。
第二步做预测,这是一个典型的非线性建模预测的任务,需要在任意时刻,对任意股票,在未来多个时间尺度的收益进行预测。
第三步,决策。需要基于上一步的预测,构建持仓组合,并且满足一定的风险偏好。这其实是一个在高维空间中有多个边界条件的非凸优化问题。
最后,执行。怎么样让代码的效率更高。
我们的全流程AI是什么意思?我们从数据到预测到决策甚至到执行,整个是一个无人化工厂一样完全交给AI去做,我们的责任是维护这个全流程的系统,并且进行快速高效的迭代升级。所以我们本身是在写这些生成最终程序的程序。
我们想做一个AI平台,旗下所有的产品和策略应该是有一个生成程序的母程序生成的。作为策略的开发者只需要输入对每个策略不同的风险偏好,会自动生成出来不同的量化交易策略,由客户选择。这是2018年起坚持的一个开发方式。如果举一个例子,就像每天的工作是去制造一个非常多功能的机械臂,而这个机械臂能够造出来不同风险偏好的策略。所以说我们的所有精力其实是不断完善自动化的机械臂。
数据,预测,决策,这三件事用AI来做比较自然。最后一步执行,就是把代码进行优化加速,这个怎么用AI?今天和大家介绍我们的倍漾AI编译器。什么是AI编译器?现在大家都用机器学习模型,机器学习模型最终变成执行代码时要经过一套程序编译、变成机器可执行文件。传统的AI编译器有一些问题,他们编译要具备普适性,对于低延时要求,对流式数据的支持程度不是很好,传统的AI编译器更注重的是任何应用环境下用这个编译器编译成为较为高效的代码。
我们内部做的AI编译器首先是针对流式数据,其次是模型精度可控的前提下达到最低的延时,这是我们做的事。我们怎么做到的呢?主要用了两个技术:
第一,自动混合精度加速。针对不同的计算设备,我们会在生成中间代码的阶段进行混合精度加速,注意到不同的计算设备上不同的数据格式的速度是不一样的,有些设备还有一些专有格式,如Intel的cpu上有bfloat16, Hopper GPU上有fp8, FPGA上有定长浮点数等。
同时我们发现传统的模型量化指标例如正确率,MSE等在我们的任务中意义往往比较有限,在实际情况下,我们需要的是一个交易行为完全一致的低延时模型,而这是传统AI模型量化方法难以考虑的场景。因此我们会使用了一些AI技术,在策略性能一致的前提下充分利用不同设备的混合精度的优势,实现对模型的加速。
第二,端到端的低延时优化。通用AI编译器往往只关注单一模型在特定运行时下的性能。例如图中介绍了传统编译器在部署阶段的工作流。经过编译的模型会生成一个模型cpp文件,一个头文件,一个通用库函数文件和一个运行时的so库,在部署阶段需要连接对应的运行时库来运行模型,在使用时,由于一些通用预处理操作的存在,会增加大量的overhead,这对于极端的延时敏感程序是不友好的。
由于我们的使用场景比较一致,通过合理的接口设计,我们可以最小化模型的运行时环境,做到模型运行时内存零拷贝,同时我们设计了高度仿真的模拟环境,可以通过评估在仿真环境中的模型延时进一步优化模型代码。
相比于传统AI编译器,我们至少存在如下两点显著优势:
1.没有额外的调用运行时环境的内存拷贝等其他开销。
2.我们可以端到端的优化延时,有利于进一步优化模型在实际运行过程中的其他问题,这使得我们的优化更加贴近实际情况,而传统的AI编译器仅在有限的运行时下测试,经常会出现实际情况与测试阶段速度相差巨大的问题。
给大家介绍最后的一个小的点,作为全流程AI投研框架,我们坚持所有策略,一套系统。这不是说所有策略收益是一样的,而是说所有策略是由一个相同的底座产出的。
首先介绍量化的不可能三角,规模、收益、波动一般来说只能占两个,根据投资人不同的风险偏好,你可以生成非常多种风格的策略。但这样怎么变成一个统一的AI的平台呢?
我们的做法是,从因子平台、预测平台这一块大家都一样的,也就是说,在倍漾内部我们所有策略在任何一个时间点都会去调用同一个API进行预测。不同的是基于不同风险偏好的策略,决策是完全不一样的。比如说当模型的预测信心比较低的时候,较为保守的策略是什么都不干,一个比较激进的策略就可以下场交易了。在这样平台的架构下,根据适配不同的风险参数,可以产生一系列的决策模块。
最后倍漾AI编译器把最终的代码进行编译并上线,这是我们所坚持的一种无人化工厂式的AI全流程的量化交易的基本思路。我们目前做的还很初步,有非常多可以升级的地方,倍漾量化的职责,是基于目前的技术路线,不断进行迭代,用AI构建投资未来。
关键词: