社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  chatgpt

ChatGPT能战胜市场么?

FT中文网 • 3 年前 • 305 次点击  

如果用ChatGPT去炒股,能不能帮我们获得更好的投资回报,甚至战胜市场?


文丨伍治坚

在过去几个月中,人工智能和ChatGPT成为互联网上最热门的话题之一。很多人都在讨论ChatGPT会颠覆哪些行业,让多少人失业。很自然的,也有不少人会想到:如果用ChatGPT去炒股,能不能帮我们获得更好的投资回报,甚至战胜市场?

用人工智能来提高投资的胜率,并不是什么新鲜的想法,事实上早在几十年前就已经开始。在对冲基金行业,有不少公司和基金经理专注于量化投资。量化投资领域里,有一些基金基于机器学习(Machine Learning)设计投资策略。机器学习就是一种典型的人工智能,并且已经在投资领域被实践多年。

举例来说,2017年年底,创新工场创始人李开复在其主题演讲《人工智能四波浪潮与机会》中说道:有了人工智能以后,它可以去计算哪些中国股票搭配起来跟哪些欧洲、美国股票应该是可以对冲的,它可以判断任何市场有任何不平衡的地方,它可以利用现在人民币换美金的交易障碍,来做更好的对冲,或者它可以判断怎么样能够最优化你该买什么样的股票。过去两年其实我已经没有做任何的个人投资了,我也不把钱交给人了,我现在所有新生产出来的钱都交给机器处理,人已经不能再管理我的钱了,因为人打不过机器,这是非常明确的事情,我们个人投资的这些基金不太好意思分享回报率,回报是不低的,然后是零风险的,它每一天晚上结帐,我可以看到钱全部都卖掉回来了。

那么问题来了,以人工智能算法为核心的基金,是否真能做到像李开复所说的:零风险,日结账,高回报呢?

要回答这个问题,我们首先要搞清楚,什么是机器学习?大致来讲,机器学习可以被分为两种:有人管的机器学习(Supervised Machine Learning)和没人管的机器学习(Unsupervised Machine Learning)。

有人管的机器学习,是指工程师来定义研究的变量。这种“机器学习”,其实和传统意义上的量化交易策略研究没有多大区别。很多这样的机器学习,用的还是最小二乘法(OLS)和主成分分析(PCA)这样的统计方法,而这些统计方法至少已经被用了几十年。这样的“机器学习”被放上“人工智能”的标签,主要就是为了追求一个噱头,在营销上让人产生高科技的错觉。

真正有技术含量的,是没人管的机器学习。在这种机器学习中,电脑程序自己选择最优的变量进行分析和计算。这是真正尖端的人工智能领域,对数据处理和计算能力要求非常高,目前仅在高频交易领域有一些尝试性的应用。

为什么仅在高频交易领域有初步的应用呢?这是因为,人工智能在任何领域应用的一大前提,就是有海量数据。

在同一个演讲中,李开复谈到:AI其实特别关键的就是大量的数据,有了数据...就都可以做了,没有数据是不可能的。

为什么需要海量数据?

这是因为,人工智能和机器学习的本质,就是数据挖掘。数据挖掘的意思,就是基于海量的数据,去找出一些不为大家所知的规律,并且期望该规律在未来继续管用。如果没有海量的数据,你还去挖掘什么?没东西可挖呀。用科学的语言来讲,如果数据量不够,那么总结出来的任何规律,都是基于小样本的特殊情况,未来继续重复管用的可能性不大。

和其他行业相比,金融市场的数据量,恰恰少得可怜。以全世界数据量最丰富的美国市场为例。比较高质量的美国股市价格历史数据,也就60年左右。再往前推,数据质量就残缺不全或者准确性不够。假设以月回报为单位进行研究的话,60年历史一共就700多个数据样本,显然太少。即使把研究单位改到日回报,一共也就15,000个左右的数据样本。我们再看上市公司的财报数据。美国有差不多4000个上市公司。假设每个公司都有高质量的季报,往回走60年,数据量大约是 4000 X 60 X 4 = 96万。这样的样本量,还是离人工智能的要求差远了。

与之相对比,ChatGPT覆盖的数据量,大约为1750亿个变量,涵盖了过去几十年,甚至是百年的文本和资料。两相比较之下,我们就能看到将相同的人工智能技术用于投资的挑战之一。

有些人会说,我可以拿每天/每小时/每分钟的数据,这样数据量就大了。或者我横向增加测试的变量,这样也能增加样本量。话虽不错,但问题在于数据的频度越高,噪音也越大。变量之间的交叉度越高,相关系数也越高,因此得出的结论,也越不可靠。在量化金融研究中,码农最容易犯的错误,就是忽略经济逻辑去做数据挖掘。在一大堆没有意义的数据中,你不断折腾,总能找出个貌似有用的投资策略来。但如果背后没有符合逻辑的经济原因去支撑,那这种发现就毫无意义。举例来说,有美国学者(Chordia et al, 2017)在检验了210万个不同的股票投资策略后,发现其中只有17个策略通过了统计检验标准,显示其可能有效。在这个例子中,发现真正有效的投资策略的概率,为17/210万=0.0008%!换句话说,在210万个投资策略中,超过209.99万个都是无效的。

除了数据样本量不够之外,人工智能应用于投资的第二个挑战在于,金融市场里信息和回报之间的因果关系并不是那么清晰和容易分辨。举例来说,某一只股票在过去三个月里上涨了20%,那么导致其股价上涨的原因有哪些呢?可能有公司的盈利变化、公司所在行业的供需变化、公司所在国家的宏观政策、公司所在国家的货币汇率、整个股市的投资者情绪、其他国家的央行政策等等。其中每个因素都可能对股价产生影响,也可能未必产生影响。或者其中一些因素,在某个时点某个场合,确实对股价产生实质性影响,属于有效信息。但在另外一个时间点,却对股价毫无影响,属于噪音。那么我们如何让机器去学习分辨,在什么样的场合下,哪些是有效信息,哪些是噪音?这恰恰是把人工智能运用于投资的最难点。如果不能把这个问题解决,那么这样的机器就不够智能,因此也无法持续给投资者带来超额回报。

第三个挑战在于,金融市场说到底是由人组成的,其本质是人的心理和行为。金融市场上的那些股价或者债券价格,只是一个数字表象,背后反映的其实是人们对于股权、房地产或者债权的期望回报。因此对于金融市场的预测,本质上是对众人行为和心理的预测。

问题在于,众人的行为模式可预测么?比如假设我们再发生以此类似于2008年的次贷危机,各国政府和众央行还会以相同的方式来应对危机么?股票和债券市场中的投资者们还会以相同的态度做出反应么?事实上我们几乎可以断定,因为人类有记忆,自命不凡,对自己的能力过分自信,但同时经常受到贪婪和恐惧的情绪影响,因此我们经常会做出连自己都觉得不可思议的非理性决策,这也使得由人组成的市场缺乏一致性,因此而变幻莫测,难以预料。

综合以上几点,要想把ChatGPT为代表的人工智能用于投资来获得持续的超额回报,还有很长一段路要走。当然,这并不意味着投资和计算机决策互不兼容。事实上即使是最老派的基本面基金经理,也会大量用到量化和数据模型来提高自己决策的质量。但这和完全摆脱人,让机器代替人做所有的投资决策,并且做到零风险和高回报还是很不一样的。未来能否做到这一点,值得我们继续关注。

参考资料

Chordia, Tarun, Amit Goyal, and Alessio Saretto, p-Hacking: Evidence from Two Million Trading Strategies. Swiss Finance Institute Research Paper No. 17-37, 2017.

Robert Arnott, Campbell Harvey, and Harry Markowitz, A Backtesting Protocol in the Era of Machine Learning, Nov 2018.


本文仅代表作者观点

作者系新加坡五福资本CEO

责任编辑 冯涛 tao.feng@ftchinese.com

图片来源 Getty Images


商业财经 国际视角

关注FT中文网视频号


往期精选

责任投资对投资者负责么?


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/154171