“LLMs for Time Series: an Application for Single Stocks and Statistical Arbitrage”
深度学习在金融研究中日益流行,尤其在资产定价和系统化策略方面。本研究使用Chronos进行金融收益预测,计划模拟一个基于预测的多头和空头投资组合。
论文地址:https://arxiv.org/pdf/2412.09394
摘要
LLMs(大型语言模型)在时间序列预测中表现出色,挑战了其不适合金融市场回报预测的常见看法。使用Chronos模型进行预训练和微调,测试了美国单一股票的数据。本文构建了长/短投资组合,模拟结果显示LLMs能够在接近随机的时间序列中识别低效并生成超额收益。与专门模型和小型深度学习模型的结果比较,LLMs的预测能力仍有显著提升空间。
简介
深度学习在金融研究中日益流行,尤其在资产定价和系统化策略方面。Guijarro-Ordonnez等(2022)使用769个参数的变换器与卷积层结合,测试了单股票的量化交易策略,结果令人鼓舞。他们的方法基于去除共同因素后的残差收益,使用PCA、Fama-French因子等技术。Jiang等(2023)利用变换器识别时间序列预测中的图像模式。Wood等(2022)通过少量参数的深度学习技术优化趋势跟随指标。Gu等(2021)展示了变换器在提取共同收益方面的应用。Qyrana(2024)使用自编码器因子模型生成高盈利交易策略。Chen等(2021)运用深度学习识别资产定价异常。
本研究评估超过1100万个参数的深度学习算法进行金融收益预测,强调与前述研究的对比。采用零样本评估方法,使用Ansari等(2024)预训练的Chronos模型,验证其在未专门训练情况下的适应性。计划模拟一个基于预测的多头和空头投资组合。结果将与标准短期反转(STR)和趋势跟随方法进行比较。
实证回溯检验方法
Chronos作为模型
使用的模型为“amazon/chronos-t5-tiny”,参数量为1100万,预训练于14个数据集,但未涉及金融时间序列。采用100天的上下文期预测下一天的收益,以捕捉短期模式,避免内存不足。仅关注下一日收益预测,认为短期预测更易于捕捉模式。对模型进行微调,训练步骤τ设置为5、15或40,训练在回测期间每日进行,基于前一天的权重。
金融市场时间序列作为数据
使用GuijarroOrdonnez等(2022)发布的三个残差日收益数据集,分析CRSP数据集中的流动性股票(1978年1月至2016年底)。选择市场资本化超过0.01%总市值的股票,平均约550只。
数据集包括:IPCA因子(240个月滚动窗口)、PCA因子(252天滚动窗口)、FF因子(60天滚动窗口)。K=5被认为是最优,IPCA的毛夏普比率为4.16,PCA为3.36,FF为3.21,但净夏普比率在2006年前显著。残差收益数据集相关性低,适合深度学习。
不同的模拟策略
基于Chronos的零样本预测策略
针对未经过金融数据训练的Chronos进行了零样本评估。实验时间范围为2001年12月26日至2016年12月30日,针对每个数据集(IPCA, PCA, FF)进行预测。计算χˆd,i,基于过去100天的滚动窗口,使用两种输入:
-
过去100个单只股票的残差日收益(α=0)。
-
过去100个残差日收益的指数移动平均(α>0),测试α值为0.1至0.8。
预测下一个收益χ˜ d,i,需超越短期反转策略。
通过对每日股票进行排名,计算投资组合权重,确保每天50%多头和50%空头,权重与排名距离中位数成比例。Valeyre (2019) 证明该方法优于简单的买入前五分之一和卖空后五分之一。测试“调整”版本,权重与过去100天的收益波动性成反比。
使用公式模拟下一天的投资组合表现,计算累计收益和毛夏普比率,忽略交易成本。
基于Chronos的微调预测策略
使用简单的微调方法对预训练权重进行调整,Chronos模型在回测开始时初始化,基于前100天的市场数据进行每日训练。每天更新权重,测试不同的最大训练步数τ和EMA参数α,以适应金融时间序列的特性。通过使用微调后的权重来确定投资组合权重,评估方法与之前相同,但每日替换为微调权重。该微调方法并非最优,存在逐渐遗忘预训练权重的缺陷,控制过拟合和权重损失的改进方法超出本研究范围。
对其他策略进行比较评价
比较Chronos模型与Guijarro-Ordonnez等(2022)的CNN Transformers模型,后者参数仅169,远小于Chronos的1100万。包括statsforecast包中的autoARIMA作为机器学习基准,以及Jegadeesh(1990)和Jegadeesh与Titman(1993)描述的短期反转(STR)策略。STR策略通过简单指数移动平均法提取IPCA、PCA或FF的共同因子,使用公式(10)和(11)构建投资组合。AutoARIMA在回测期间每日连续拟合,使用前100天的观察数据,得出预测(A_d)和投资组合权重(ω_d^A)。Chronos模型在15年期间的PCA中实现了超过3.17的夏普比率,但交易成本高,3个基点的滑点成本导致净夏普比率为负。
实证结果
盈利能力下降可能表明市场效率提高或机会变得更难捕捉,2008年前AI更易捕捉市场低效。Chronos在α = 0时在2007年前无效,但2008年后表现改善,α = 0.3最优,抵消短期负自相关影响。α = 0.3使Chronos与短期反转策略(STR)高度相关,但未能超越其表现,避免了噪声影响。Chronos在α = 0时需微调τ = √15以实现Sharpe比率0.24,2008年后预训练配置可能被遗忘。
STR策略与Chronos在α = 0和τ = 15时相关性不显著,Chronos捕捉的机会更复杂。autoARIMA模型表现不及STR,表明在噪声较大的数据中建模困难。权重按波动率反向调整可提高Chronos及基准的Sharpe比率。最优训练τ为15,τ = 40时Sharpe比率下降,可能导致Chronos失去预训练智能。
盈利能力下降可能表明市场效率提高或机会变得更难捕捉,2008年前AI更易捕捉市场低效。Chronos在α = 0时在2007年前无效,但2008年后表现改善,α = 0.3最优,抵消短期负自相关影响。α = 0.3使Chronos与短期反转策略(STR)高度相关,但未能超越其表现,避免了噪声影响。Chronos在α = 0时需微调τ = √15以实现Sharpe比率0.24,2008年后预训练配置可能被遗忘。
STR策略与Chronos在α = 0和τ = 15时相关性不显著,Chronos捕捉的机会更复杂。autoARIMA模型表现不及STR,表明在噪声较大的数据中建模困难。权重按波动率反向调整可提高Chronos及基准的Sharpe比率。最优训练τ为15,τ = 40时Sharpe比率下降,可能导致Chronos失去预训练智能。
总结
AI(特别是大型语言模型)可以在不包含金融时间序列的大型数据集上训练,识别金融市场机会,且不易过拟合。当前AI尚未具备考虑交易成本后仍能找到盈利机会的能力,但未来可能会有所进展。专门模型(如Valeyre 2024)在捕捉已建立机会(如趋势)方面更高效,而AI可用于识别更复杂的机会。STR模型表现优于AutoARIMA,后者尽管能捕捉复杂性,但因噪声拟合而显得不够稳定。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。