
机器学习在量化投资中的应用:那些年我犯过的错
机器学习的论文里面通常会有一张这样关于准确率的图:所有被比较的方法的准确率图线,都在文章提出的论文的方法的准确率图线之下。看到这张图,我们大概会觉得这个方法蛮不错的,可以一读。
如果还是抱着类似的想法去读机器学习在量化投资领域里的某些论文,那么你得当心了。让我们以文献[1]作为一个例子。在文献[1]里面,画出了’Total wealth achieved’的图线,我们截取其中的一幅,如下:
所谓的total wealth achieved,其实就是累计的收益。假设有一个人,第一天投资了1块钱,他在第t天的收益为r_t,那么到了第T天,他的累计收益就是(1+r_t)的连乘(直到T)。在这篇文章里,非常漂亮,所有既有的方法在累计收益的图线,被该文提出的方法(CWMR)完美压制,而且随着时间的变大,差距越来越大了。我一开始读这篇文章的时候,感觉该文提出的方法效果实在是太牛逼了。
下面我们将说明,累计收益图线是一条比较“然并卵”的图线。我们假设,有两个基金经理A和B,他们都从一块钱(这只是一个例子。。)开始起步。第一天,A表现出色,全线涨停,怒取10%的收益。B呢,押错了宝,本指望靠跟着国家队混口饭吃,结果被摆了一道,买的股票全跌停,损失10%。作为B的好基友,A看不下去了,他知道B不怎么会投资,于是跟B说,以后你每天就跟我混吧,我干嘛你干嘛。于是,从第二天开始,两人的每天的收益一模一样。假设从第二天起,他俩的收益在0.5% 到1%之间随机波动。那么投资了一千天之后,他俩的累计收益曲线是什么样子的呢?请看下图:
很明显,这两条曲线之间的差距也变的越来越大了,而我们知道,他俩其实只在第一天收益有所不同而已,而在其他的999天完全一样!
所以你看,累计收益的曲线,并不是一条很好表示算法表现的曲线。评价一个算法,我们还得综合很多其他的评价指标,如夏普比率,最大回撤等等。那累计收益曲线是不是一点用也没有呢?不是的,虽然它的绝对数值本身的意义有限,但是我们可以通过它清晰地看到策略的涨跌。
对使用范围的误解
使用机器学习做量化投资的论文,大体上有两类思路。第一类如我在上一篇文章中所讲,是设计个股的投资策略。另外一类就是类似文献[1],考察的如何设计合理的投资组合。其实这两种方法的目的是一致的,也就是大家常说的“寻找alpha”。
但是,投资的世界是如此复杂,并非所有的任务都是跟“寻找alpha”直接相关的。比如,如果你是一个交易员,你的老大告诉你,现在我有XX公司的一千万股必须要卖掉,你看着办吧。考虑到这是一个比较大的交易量,如果你按照平常的交易方式,在限价订单簿上挂这么大的卖单,那么那些买家立马就知道:这小子肯定有很大的卖出压力,那咱们果断要压价啊,压得再低这货都会卖的!为了防止在大单交易的时候出现这样的情况,有一种新的交易场所叫“暗池”。在暗池这个交易场所里,你不再关心能卖多少钱了(我的理解里,价格是由暗池的提供者以一种比较合理的、大家都可以接受的方式给出),你现在只想尽量多的把股票给卖出去(我们只讨论卖的情况,当然也有人买)。而且,在暗池里,你所能看到的,也就是你自己卖了多少股,其他信息都看不到了。由于暗池交易的参与者交易量都非常大,大家又没法看到其他人的单,所以,往往成交量有限。你挂了一个卖单,最后可能只有15%的股票给卖出去了。当然,市场上有不止一个暗池可供你操作。那么问题来了,你将如何把你的订单分配到这些暗池中呢?
好了,现在让我们来把这个问题具体化。这里我们只考虑卖股票的情况。假设,你在每个时间点t,都有V的t次方这么多的XXX公司的股票要卖出,而有K个暗池可以供你交易。你的目的就是,在每个时间点t,把V的t次方拆分成K份,分别放入不同的暗池,使得最多的股票可以被卖出。这就是Michael Kearns在[2]中所讲述的故事。这篇文章做了一个非常强的假设,如下图
这篇文章给我最大的启示在于,它告诉我,机器学习算法不止可以被用来“寻找alpha”,它也可以在一些其他的投资环节中起作用。它可以优化某些投资过程,把一些手动、半自动的投资方式变成自动化。即使这样的改变不能直接带来alpha,也一样大有用途。
对实证研究的漠视
我刚开始接触机器学习在算法交易中的应用的时候,以为这件事是很简单的:我只需要根据历史数据,用一个机器学习算法预测下一个时间点股价不就得了么。显然,这样的想法又too young too simple了,被我的导师无情批判过。
那么,究竟应该从什么样的一个出发点来设计一个算法呢?我的导师认为,应该是从股票数据上观察得到的某个性质出发。比如,我在上一篇文章里提到的方法,其实就是基于“某些股票数据呈现出趋势”这样一个性质入手,来开发一个交易策略的。而我们提到的文献[1],则是从“股票收益存在均值回归”这样一个性质入手的。
我应该从哪里得到这样的性质的?我相信业界的人应该有观察到一些数据的性质,但是他们不会去说出来,所以,对于一个普通人来说,可能就得依靠阅读实证性的文章了。有一些实证性的文章会去研究股票数据具有哪些固有的性质。比如说均值回归、动量,其实都是有实证研究的支持的。
对于一个想用机器学习来进行量化投资的研究者来说,阅读实证文章更是大有裨益。试想,如果一个研究者只知道股票有可能有趋势这一个性质,那么他设计的算法很可能就跟我在上一篇文章里设计出来的差不多。而这样的研究者是无论如何也设计不出基于“均值回归”这个数据性质的算法的。因此,我总结了一点,想发论文,最好从那些被别人忽略的数据性质入手。
对模型假设的忽视
关于这一点,这里只做一个简单的阐述。我希望在自己了解更深之后,针对这个问题写一篇专门的文章。
刚开始来中大的时候,我的导师问我:你如何判断一个模型能否work?我一时语塞,说不知道。然后老板就对我说,你得看,这个模型的假设与真实的数据是否是一致的。一个非常典型的例子,略懂投资组合的人都会知道Mean-Variance model [3]这个拿到诺贝尔奖、被称为现代投资组合研究开山之作的工作。但是,虽然这篇文章有着巨大的影响力,其实实际上并没有被太多人使用(至少是它的原始版本没有太多人用),究其原因,就是这个model中的诸多假设,与真实的股票数据根本就不相符,因此,当我们进行真实投资的时候,必然不会使用它。有朋友提醒我,说Mean-variance model并不属于机器学习的范畴。确实如此,但是也有些机器学习的研究者研究这个模型,提出了改进的模型,比如ICML11上的文章[4]。
总结
在这篇文章里,我总结了这两年中我曾经犯过的一些错误。我个人认为这些错误是可以帮助一些后来人少走一些弯路的,因为在与一些人的交谈中,我发现他们都或多或少的有跟我类似的错误认识。就写这么多,能抛砖引玉则足矣。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在大模型从实验室走向生产环境的过程中,“稳定性” 是决定其能否实用的关键 —— 一个在单轮测试中表现优异的模型,若在高并发 ...
2025-10-15在机器学习入门领域,“鸢尾花数据集(Iris Dataset)” 是理解 “特征值” 与 “目标值” 的最佳案例 —— 它结构清晰、维度适 ...
2025-10-15在数据驱动的业务场景中,零散的指标(如 “GMV”“复购率”)就像 “散落的零件”,无法支撑系统性决策;而科学的指标体系,则 ...
2025-10-15在神经网络模型设计中,“隐藏层层数” 是决定模型能力与效率的核心参数之一 —— 层数过少,模型可能 “欠拟合”(无法捕捉数据 ...
2025-10-14在数字化浪潮中,数据分析师已成为企业 “从数据中挖掘价值” 的核心角色 —— 他们既要能从海量数据中提取有效信息,又要能将分 ...
2025-10-14在企业数据驱动的实践中,“指标混乱” 是最常见的痛点:运营部门说 “复购率 15%”,产品部门说 “复购率 8%”,实则是两者对 ...
2025-10-14在手游行业,“次日留存率” 是衡量一款游戏生死的 “第一道关卡”—— 它不仅反映了玩家对游戏的初始接受度,更直接决定了后续 ...
2025-10-13分库分表,为何而生? 在信息技术发展的早期阶段,数据量相对较小,业务逻辑也较为简单,单库单表的数据库架构就能够满足大多数 ...
2025-10-13在企业数字化转型过程中,“数据孤岛” 是普遍面临的痛点:用户数据散落在 APP 日志、注册系统、客服记录中,订单数据分散在交易 ...
2025-10-13在数字化时代,用户的每一次行为 —— 从电商平台的 “浏览→加购→购买”,到视频 APP 的 “打开→搜索→观看→收藏”,再到银 ...
2025-10-11在机器学习建模流程中,“特征重要性分析” 是连接 “数据” 与 “业务” 的关键桥梁 —— 它不仅能帮我们筛选冗余特征、提升模 ...
2025-10-11在企业的数据体系中,未经分类的数据如同 “杂乱无章的仓库”—— 用户行为日志、订单记录、商品信息混杂存储,CDA(Certified D ...
2025-10-11在 SQL Server 数据库操作中,“数据类型转换” 是高频需求 —— 无论是将字符串格式的日期转为datetime用于筛选,还是将数值转 ...
2025-10-10在科研攻关、工业优化、产品开发中,正交试验(Orthogonal Experiment)因 “用少量试验覆盖多因素多水平组合” 的高效性,成为 ...
2025-10-10在企业数据量从 “GB 级” 迈向 “PB 级” 的过程中,“数据混乱” 的痛点逐渐从 “隐性问题” 变为 “显性瓶颈”:各部门数据口 ...
2025-10-10在深度学习中,“模型如何从错误中学习” 是最关键的问题 —— 而损失函数与反向传播正是回答这一问题的核心技术:损失函数负责 ...
2025-10-09本文将从 “检验本质” 切入,拆解两种方法的核心适用条件、场景边界与实战选择逻辑,结合医学、工业、教育领域的案例,让你明确 ...
2025-10-09在 CDA 数据分析师的日常工作中,常会遇到这样的困惑:某电商平台 11 月 GMV 同比增长 20%,但究竟是 “长期趋势自然增长”,还 ...
2025-10-09Pandas 选取特定值所在行:6 类核心方法与实战指南 在使用 pandas 处理结构化数据时,“选取特定值所在的行” 是最高频的操作之 ...
2025-09-30球面卷积神经网络(SCNN) 为解决这一痛点,球面卷积神经网络(Spherical Convolutional Neural Network, SCNN) 应运而生。它通 ...
2025-09-30