前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么深度学习无法预测股票?本能、理性与《星际争霸2》

为什么深度学习无法预测股票?本能、理性与《星际争霸2》

作者头像
用户7652506
发布2020-08-12 10:47:29
1.3K0
发布2020-08-12 10:47:29
举报

“ 如果你问我围棋的AlphaGo和《星际争霸2》的AlphaStar哪个更伟大,我肯定毫不犹豫地会说AlphaStar,因为它解决的是不完全信息动态博弈啊!——大猫”

在前面

大猫去年在国内金融学博士毕业之后来到了美国开启了自己的第二段博士生涯:Information Systems,研究的主要方向为深度学习和自然语言处理。由于几乎都在CS系上课上,每当对别人说到自己以前是学金融的,对方都往往很兴奋的说:那你尝试过用现在学的深度学习模型去构建交易策略嘛?这时大猫往往只能尴尬而不失礼貌地微笑,表示“也许以后会考虑”。

如果你来自金融或者经济学的背景,你一定能体会到这种尴尬背后的原因:有效市场假说提出已经半个世纪了,谁都没有能完全证伪它。而且你受到的金融学训练越是深刻,你就越不会去干预测股价这种“傻”事,因为你知道那是徒劳的。这也导致很多金融系师生对于CS或者机器学习抱着一种“看不起”的态度:认为它们只不过是“奇技淫巧”,永远回答不了“so what?”,永远无法对学科做出“一阶贡献”(first order contirbution)。

然而一个我们无法回避的事实是:以深度学习作为推动力的“AI风潮”正在席卷着生活的每一方面。我们以前认为机器“不可能”做到的事,现在深度学习真的做到了:CNN(卷积神经网络)通过filter的卷积操作成功模仿了神经元对于不同模式的识别行为;RNN(循环神经网络)以及Transformer已经能够写出让人信服的文章,从而使得OpenAI不再开源自己的GPT/GPT2模型(虽然后来开源了几个弱一点的版本),因为它们“写出的文章太过逼真,容易被坏人所利用 ”;更不用说现在大行其道的以Deep Fake为代表的GAN,它们能够学习你说话和摆手的概率分布,从而生成一段伪造的奥巴马视频,视频中你说什么,奥巴马就说什么,肉眼无法分辨真假。

在看到深度学习所取得的这些成就时,我们不禁默默会想:那么股价呢?预测股价曾经也是那个不可能完成的任务,现在是时候让深度学习来摘取这个皇冠上的明珠了吧?

很可惜,大猫认为现在还不是时候。为什么?大猫当然不会用“如果机器学习能预测股价了,那谁还去炒股呢”这种“反证法”作为理由。事实上,股票无法预测的原因和谷歌的Deep Mind能打败柯洁但无法在《星际争霸2》中打败人类的原因一样:解决不完全信息动态博弈,要难很多很多。

有什么本质不同?大猫先给出自己总结的三个主要原因,然后逐一解释。当然啦,如果你觉得大猫总结的太low,直接右上角叉叉,就不用费力气喷啦。

大猫总结的理由有三

本能 vs. 理性:“股价”与“图片/语言”具有本质上不同的驱动因素

信息不够:只使用“历史价格”注定失败

目标选错:不要预测“价格”,要预测“收益率”!

价的形成

咱们先撇开所有专业词汇,先来做一个小小的思想实验:告诉我当你“从一张照片中识别出一只猫”或者“从某人的朋友圈理解一段吐槽”的时候大脑的活动是怎样的——给你三秒钟——一,二,三——时间到。怎么样,你是不是觉得“无可奉告”?因为从图片中识别一个物体或者理解一句话根本就不需要你“有意识”地去进行,识图与阅读(我们这里只考虑简单的句子)就像我们的本能(记住这个词!下文会考!)一样,它自己就完成了!

好,那么接下来再让我们想象一下股价是如何形成的:股价是由买卖行为推动的,因此我们就来考察股票市场的参与者。股票市场中有无数个参与者,简单起见,让我们假设只有高盛和大摩这两家巨鳄,它们都参与了蒂姆·库克对于上一季度苹果业绩的电话会议,并且“各自”分析出会议中党支书库克透露出的应该是利好消息。那么现在问题来了:咱们究竟应不应该买股票呢?按理说利多消息当然应该买,但关键问题是“你怎么确保人家不知道你知道这个消息呢”?高盛会想:虽然根据我自己的分析,苹果股价应该会涨,但万一大摩那伙人比我们先得出了那个结论,并且先下手了,那么我们买到的其实已经是溢价了的股票,不亏才怪!相反,如果大摩还没分析出这个消息,或者它们得到的结论和我们相反,那么现在就应该是绝佳的买入机会。哎呀呀,真是伤脑筋。

当然,这里只是假设了市场中有两个参与者,如果考虑真实的市场,除了高盛大摩,还有德意志银行,还有华尔街大大小小的对冲基金,可以说,最终的交易决策,需要经过长时间的理性(敲黑板,这个也要考!)思考。

能 vs. 理性

讲到这儿,聪明的你应该已经能看出大猫想要表达什么了。CNN/RNN/Transformer之类的深度学习框架之所以能成功,很大程度说不定得归功于它们解决的是个更加“简单”的问题;换句话说,它们模仿的是我们识图或者阅读中的某种“本能”。这种本能不太需要理性思考的介入,某种程度上仅仅是某种“模式识别”(虽然人类经过了百万年的进化才具有了这种模式识别能力)。

更重要的是,图片/语言这些模式的形成与理解“不太依赖于人”,大猫当然不是说没有人图像与语言可以凭空产生,而是说当我们要从一张图片中识别出一只猫的时候,这只猫本身是客观存在的,不会因为他人的行为而导致结果的改变

反观股价的形成,虽然股价非常像是一种“模式”,但是这种模式并非像宇宙背景微波辐射那样“具有客观规律”的模式,它是众多个体长时间理性搏斗的结果,是一种非常“曲折”的经历。它对外界的变化相当敏感,同时又非常不可测:任何一个个体做出不同的选择,股价就有可能发生变化!

用博弈论的语言来描述(大猫憋了好久了),股价是某种博弈的均衡(虽然不一定是纳什均衡),更重要的是,这是不、完、全、信、息、动、态、博弈! 这也就意味着,想要知道最终的结果,你需要正确预测所有(或者大多数)参与者的行为,但事实是你无法预测,因为你们拥有的信息不一样!

但是很可惜,深度学习虽然在识别静态模式中展现了惊人的成就,但在解这种动态博弈论问题上,可以说才刚起步。

AlphaGo的意义

如果你对研究生级别的宏观经济学有所了解,那么你可以把强化学习认为是某种fancy版本的求稳定增长路径的动态规划问题,只不过你的政策函数不再是“猜”的,而是用一个巨大的深度神经网络去模拟的……

虽然深度学习对于博弈论“暂时”还不是那么擅长,但它在这方面也并非无所建树。前几年名声大噪的AlphaGo的意义,就在于它成功使用了深度学习去解一个博弈论问题:围棋是个动态的过程,你在t时刻下的一步棋,在那个时刻你是很难衡量它对最终的胜负贡献有多大的,因为最终的胜负在很多步之后。而在普通的深度学习问题中(例如识别图像),你的X和Y是静态的,也就是说,改变了X,你马上就知道对应的Y是什么了。为了解决这个问题,AlphaGo使用了“强化学习”(Reinforcement Learning)+ 深度学习的方式。如果你对研究生级别的宏观经济学有所了解,那么你可以把强化学习认为是某种fancy版本的求稳定增长路径的动态规划问题,只不过你的政策函数不再是“猜”的,而是用一个巨大的深度神经网络去模拟的……

虽然AlphaGo在围棋上征服了人类,但是他在另一项策略游戏中始终被人类按的死死的,那就是即时策略游戏最后的辉煌:《星际争霸2》。在《星际争霸2》中,由于战争迷雾的存在,除非正面接触,否则两位玩家并不知道对方的运营造兵情况,玩家的最终目标就是预测对方的行动并打败对手。这就有点像我们的股票市场了——只不过股票市场不仅仅有两位玩家,而是有无数位玩家,而且每个玩家在做决定时可能都经过了好几天的思考,而不是游戏中那样只有几秒甚至零点几秒的时间。

试问,深度学习连两个玩家的情况下都打不败人类,谈何去争战无数玩家的股票市场呢?

所以,如果你问我围棋和星际争霸哪个更难,我肯定毫不犹豫地会说星际争霸,因为它是不完全信息动态博弈啊!(干死黄旭东!)

论不完全信息

在上文大猫表达了一个观点:由于股价的形成是个“巨大的”“不完全信息”“动态博弈”的结果,深度学习想要去征服它还有很远很远的路。在这里大猫主要想再讲一下信息这个问题。因为看过不少用深度学习预测股价的文章,中英文的都有,其中最大的问题缺陷就在于它们只用“历史数据”进行预测。不论你是用CNN还是LSTM还是convLSTM,只要你只用股价去预测股价,那么做出来的,呃,只能是垃圾。这一点对于具有金融学/经济学背景的人来说是非常自然的结论。但是还是有很多人乐此不疲。(甚至发到了还不错的期刊上!)

那如果我们增加变量呢?比如我们不仅仅用历史股价,还用成交量波动率换手率市盈率投资者情绪SMB/HML甚至卫星云图,结果会好些吗?也许,因为的确有不少华尔街的对冲基金是这样做的,但是这并不能保证你一定能够成功。因为你还是面临着这个问题:哪怕你从自己的Alternative Data中分析出了一个关键信息,你还是无法据此做出决策,因为你不知道别人是否已经利用过这个信息了!你只能更快一点,再快一点,并期望着别人还没发现你的结论——以及你的结论是对的。

标很重要!

如果你对深度学习有一些了解的,那么你可以把“预测收益率”想象成某种“batch/layer normalization”

大猫最后要说的一点原因更大程度上是大家操作上的某种误区,而不是深度学习本身的缺陷。在很多paper中(特别是来自理工背景的作者),你也许会发现作者去预测的都是“未来的股价”,而不是“未来的收益率”。虽然把预测目标从股价改成收益率并不会让你成功,但是收益率的确更加容易预测,而且“对模型更加友好”。

如果你对深度学习有一些了解的,那么你可以把“预测收益率”想象成某种“batch/layer normalization”;如果不了解的话也没关系,你可以这样理解:现实中的股价并不是遵循同一个分布的,例如巴菲特的伯克希尔哈撒韦,股价常年在30万美元/股波动,而Bilibili,昨天的股价还不到15美元/股。如果你让模型去预测股价,那么就意味着这个模型既要学习伯克希尔哈撒韦的股价分布,又要学习Bilibili的股价分布,这可太难为它了!相反,如果你预测的是收益率,模型只要学习一个分布就够了,这可轻松太多了!况且,股价和收益率是等价的,知道一个就可以求另一个,所以下次如果你还要预测股票的话,记得要去预测收益率哦!

在最后

也许你会问大猫,既然你深知深度学习的局限性,为什么还要把他作为你的研究方向呢,而且还是博士的研究方向?大猫是这样认为的,如果你去研究真实世界的某个问题,目标仅仅是把某个预测的准确率用深度学习的方法去提高5%或者10%甚至20%,那么这不是大猫想做的事。(注意大猫没说这件事不重要,别乱扣帽子!)大猫想在这里引用毕加索的一句话:“计算机一点用都没有,因为它只知道答案”——大猫想做的不是去完善某个答案,大猫想做的是“创造某个新的问题”。 换句话说,大猫想依靠自己已有的经济/金融上的知识,去寻找并解决那些在深度学习之前根本不存在、或者已经存在但只有使用深度学习的方法才能去解决的问题。

作为同时体验过金融和CS博士专业课程的人,大猫深深感到了两个领域之间的隔阂,甚至是“鄙视”。从任何一方的角度,大猫现在都能够充分理解了它们的立场,这有时也让大猫产生了巨大的割裂感。不过好在在这段最初的割裂感褪去之后,大猫似乎隐约见到了一座可能的桥连接着两者。

虽然十分模糊。

也许大猫的这个理想过于远大,但我真的在一步一个脚印朝着它前进着。

而且似乎,真的只是似乎,有了一丢丢的眉目。

大猫的R语言课堂

我是大猫,一个高中读文科但却在代码、数学的路上狂奔不止的Ph. D Candidate。

我是村长,一个玩了9年指弹吉他,却被代码深深吸引的博士候选人。

大猫的微信号是:

iRoss2007

村长的微信号及B站主页是:

ravin515

http://space.bilibili.com/40771572

大猫的R语言课堂关注R语言、数据挖掘以及经济金融学。

我们与大家分享我们的知识和节操,我相信独乐乐不如众乐乐。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大猫的R语言课堂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NLP 服务
NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档