“Pretrained LLM Adapted with LoRA as a Decision Transformer for Offline RL in Quantitative Trading”
量化交易策略的有效性对金融机构至关重要,传统方法受限于手工特征和规则系统,难以适应市场动态。本文DT-LoRA-GPT2,结合预训练的GPT-2权重和低秩适应(LoRA)对Decision Transformer(DT)进行微调,增强模型的泛化能力。结果显示,累计收益DT-LoRA-GPT2的收益为47.98%,夏普比率为2.14,最大回撤-8.42%。
Github地址:https://github.com/syyunn/finrl-dt
摘要
利用强化学习(RL)开发有效的量化交易策略是一项具有挑战性的任务,因为与实时金融市场的在线互动存在高风险。因此,利用历史市场数据而无需额外探索的离线强化学习变得至关重要。然而,现有的离线RL方法常常难以捕获复杂的时间依赖项。金融时间序列固有的风险,可能与历史模式过拟合。
为了解决这些挑战,我们引入了一个用预训练的GPT-2权重初始化并使用LoRA进行优化的DecisionTransformer (DT)。利用了预训练语言模型的泛化能力和LoRA的效率来学习有效的交易策略。仅从历史数据中获得专家轨迹。
实证表明,我们的方法有效地从专家轨迹中学习,并在某些交易场景中获得更好的回报,突出了在线下定量交易中集成预训练语言模型和参数高效微调的有效性。
简介
量化交易策略的有效性对金融机构至关重要,传统方法受限于手工特征和规则系统,难以适应市场动态。强化学习(RL)通过与市场环境的互动,自动优化交易策略,但在线RL在实际交易中面临高成本和风险。离线RL利用历史数据训练代理,避免与环境的直接互动,但存在过拟合和捕捉复杂时间依赖性的问题。Decision Transformer(DT)通过自注意力机制解决了部分挑战,但对数据需求高,离线RL中的数据多样性有限。
本文提出一种框架,结合预训练的GPT-2权重和低秩适应(LoRA)对DT进行微调,增强模型的泛化能力。实验中,使用专家RL代理的轨迹在离线RL环境中训练模型,评估其在金融指标上的表现。实验结果表明,GPT-2初始化的DT与LoRA在某些交易场景中表现优越,成功应对稀疏和延迟奖励的挑战。
预备知识
离线强化学习
离线强化学习(RL)是从固定数据集中学习最优策略的框架,无需额外探索。环境建模为马尔可夫决策过程(MDP),包含状态集S、动作集A、转移概率P、奖励函数R和折扣因子γ。代理在每个时间步观察状态、选择动作、获得奖励并转移到下一个状态,目标是最大化期望累积折扣奖励。
在离线RL中,代理使用由行为策略生成的固定数据集D进行学习,数据集包含状态、动作、奖励和下一个状态的序列。
在量化交易中,环境代表金融市场,代理的动作对应于交易决策,需从历史数据中学习有效的交易策略。
Decision Transformer(DT)
Decision Transformer(DT)将强化学习视为序列建模问题,使用Transformer架构。DT通过将轨迹表示为包含未来回报、状态和动作的序列来建模轨迹分布。每个时间步的窗口包含最近K个时间步的回报、状态和动作。模型通过最小化预测动作与真实动作之间的均方误差(MSE)来训练。DT利用自注意力机制捕捉复杂的时间模式,实现信用分配,而无需显式的时间差学习。
Low-Rank Adaptation(LoRA)
LoRA是一种参数高效的微调技术,通过在Transformer架构中注入可训练的低秩分解矩阵,实现对大规模预训练模型的适应。更新权重矩阵的方式为:
其中 = BA,B和A为低秩矩阵。微调时仅更新A和B,保持W0不变,从而显著减少可训练参数和计算需求。本研究将LoRA应用于初始化为预训练GPT-2权重的Decision Transformer,以便在有限数据下高效适应量化交易领域,减轻过拟合并利用预训练模型的丰富表示。
方法
本文采用LaMo的方法,将预训练语言模型应用于离线强化学习,适用于金融领域的量化交易。使用预训练的GPT-2权重初始化Decision Transformer,并调整输入格式以处理金融数据。将金融数据输入与GPT-2格式对齐,使用残差块结构的多层感知机替代线性嵌入层,以增强复杂金融数据的表示学习。冻结预训练的Transformer权重,应用低秩适应(LoRA)进行参数高效微调。
语言建模和我们的方法之间的相似之处
本方法通过将输入序列结构化为与GPT-2相似的形式,并对齐嵌入,我们有效利用了预训练模型的架构和学习到的表示。
模型架构
定义了时间步𝑡的几个元素:返回值𝑅ˆ𝑡、状态𝑠 𝑡、动作𝑎 𝑡和时间步索引𝑡。
使用残差多层感知机(MLP)进行嵌入,以捕捉复杂模式,嵌入函数包括市场观察、交易动作和时间步的嵌入。
嵌入函数采用残差块结构,保持原始输入信息并捕捉非线性关系。
使用可学习的位置嵌入编码时间信息,并将嵌入交错形成与GPT-2兼容的输入序列。
输入序列通过Transformer模型处理,输出表示用于预测时间𝑡的动作。动作预测通过将Transformer输出映射到动作维度的MLP实现。
使用LoRA训练
使用低秩适应(LoRA)对预训练的GPT-2模型进行高效适应,引入可训练的低秩矩阵,保持原始权重不变,显著减少可训练参数,Decision Transformer模型约有90万个可训练参数,占GPT-2小模型总参数的0.726%。为公平比较基线方法(行为克隆BC、隐式Q学习IQL、保守Q学习CQL),调整基线模型架构,使其也有约90万个可训练参数,以评估方法的有效性。模型训练目标是最小化预测动作与真实动作之间的均方误差(MSE),损失函数为
实验
评估决Decision Transformer(DT)在离线强化学习(RL)中的有效性,特别是在量化交易领域。主要目标:
-
- 从专家轨迹中学习有效交易策略;
-
- 评估预训练语言模型权重对金融市场RL代理性能的影响。
环境和RL代理
实验环境模拟道琼斯工业平均指数(DJIA)及其成分股,使用FinRL框架,包含历史价格数据、技术指标和交易约束。采用五种广泛认可的强化学习(RL)算法:A2C、PPO、SAC、TD3、DDPG,适用于连续动作空间和金融交易。通过这些RL算法评估DT模型的鲁棒性和通用性。
实验工作流
我们的实验遵循由以下连续步骤组成的结构化工作流:
-
训练专家RL代理:五种RL算法在2009年1月1日至2020年7月1日的交易环境中训练,优化策略。
-
轨迹收集:从训练后的专家代理中收集状态、动作和奖励的序列。
-
离线RL模型训练:使用收集的轨迹训练DT模型及基线方法(CQL、IQL、BC),包括两种DT变体(预训练和随机初始化)。
-
部署与评估:在2020年7月1日至2021年10月29日的测试环境中评估模型性能,使用关键财务指标。
实验设计
评估离线强化学习性能。通过使用专家RL代理生成的轨迹训练模型,评估DT模型在离线环境中学习有效交易策略的能力,适用于高风险的金融交易场景。
评估预训练语言模型权重的影响。比较使用预训练GPT-2权重的DT模型与随机初始化权重的控制变体,分析预训练语言表示对金融交易任务性能的贡献。
实验设计的逻辑性。确保能够严格评估模型的离线RL能力及预训练语言模型权重的具体贡献。
评估指标
评估模型性能的指标包括:
-
累计收益率(%):反映模型在测试期内的总回报,指示盈利能力。
-
最大回撤(MDD)(%):衡量测试期内的最大峰值到谷值的下降,反映风险管理能力。
-
夏普比率:风险调整后的收益,越高表示风险与收益的平衡越好。
这些指标综合评估盈利性和风险,捕捉模型在不同市场条件下的表现。
结果
DT-LoRA-GPT2模型表现:
-
在离线强化学习中,DT-LoRA-GPT2模型在多个指标上表现优异,尤其在与专家交易策略的比较中。
-
累计收益:在TD3和SAC专家代理下,模型获得最高累计收益;在A2C下为第二高。
-
夏普比率:在TD3下,模型的夏普比率与专家代理相同,且在SAC下为最高。
-
最大回撤(MDD):在SAC下,模型的MDD表现最佳,优于专家代理和基线方法;在A2C下,MDD优于专家,仅次于BC。
预训练语言模型权重的影响:
-
利用预训练的GPT-2权重显著提升DT模型性能,相较于随机初始化模型表现更佳。
-
累计收益:在DDPG下,DT-LoRA-GPT2的收益为47.98%,高于随机初始化的42.88%。
-
夏普比率:在TD3下,模型的夏普比率为2.14,高于随机初始化的2.06。
-
最大回撤(MDD):在A2C下,模型的MDD为-8.42%,优于随机模型的-9.42%。
这些结果表明,DT-LoRA-GPT2在离线RL中有效学习并且预训练权重的使用带来了显著的性能提升。
未来优化方向
结合多个专家轨迹的探索。当前模型仅基于单一专家生成的轨迹,未来可研究如何有效整合多个专家的轨迹以增强训练数据的多样性。
可解释的交易决策。未探讨生成自然语言解释交易决策的可能性,未来可增强语言生成与行动预测的对齐,提高可解释性。
向其他市场和资产的推广。实验集中于道琼斯工业平均指数,未来应扩展到其他金融市场和资产类别以验证方法的普适性。
扩大预训练语言模型的规模。评估增大预训练大型语言模型对量化交易指标的影响,探讨更大模型是否能更好捕捉复杂金融模式及其计算资源与性能提升的权衡。
总结
本文提出了一个使用预训练GPT-2权重初始化的Decision Transformer,并通过低秩适应(LoRA)进行微调,应用于离线强化学习的量化交易。该方法利用大型语言模型的丰富表示,解决了捕捉复杂时间依赖性和减轻金融时间序列数据过拟合的问题。
实验结果显示,该模型在性能上与传统离线RL算法(如CQL、IQL和BC)具有竞争力。GPT-2初始化的Decision Transformer在多个专家代理中表现优于随机初始化的模型,证明了预训练语言模型的优势。
研究结果表明,将预训练语言模型与Decision Transformer结合可以提升从历史数据中学习交易策略的能力。未来工作可探索结合多个专家代理的轨迹、生成可解释的交易决策,并扩展到其他金融市场和资产类别。
如何学习大模型 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 的正确特征了。