EvolveTrade:经验驱动的策略精炼式自进化 LLM 交易智能体 EvolveTrade: Experience-Driven Policy Refinement for Self-Evolving LLM Trading Agents
将系统提示词视为可在线精炼的文本策略,交易智能体用自身盈亏经验自我进化
前置知识
LLM 智能体与工具调用
LLM 智能体指以大语言模型为核心、能在推理过程中交错调用外部工具(如搜索、代码解释器、API)来完成任务的系统。工具调用让模型突破纯文本推理的限制,可以主动检索数据并执行计算。本文的交易智能体使用价格检索、新闻搜索和 Python 代码解释器三种工具完成每日投资决策。
EvolveTrade 学习和改写的对象正是这套工具使用流程的策略文本,理解工具调用机制才能明白「精炼策略」到底改变了智能体的哪些行为。
文本参数化策略
把传统强化学习中由神经网络参数表示的策略 $\pi$,替换为一段自然语言文本(这里是智能体的系统提示词)。策略更新不再依赖梯度下降,而是由另一个 LLM 阅读经验记录后改写文本;动作分布由冻结的模型 $p_\theta$ 结合当前策略文本 $\pi_t$ 间接决定。
这是全文的核心抽象:论文唯一「学习」的对象就是策略文本本身,骨干模型与工具全程冻结,所有实验设计都围绕这一抽象展开。
夏普比率与累计收益率
夏普比率(SR)衡量风险调整后收益:超额收益除以收益波动率,越高代表每承担一单位风险获得的回报越多;累计收益率(CR)是评估区间内收益的加总。本文还报告最大回撤(MDD)、胜率(WR)和日波动率(Vol)作为风险侧指标。
SR 和 CR 是论文判断策略进化是否有效的主要指标,表 1、表 2、表 3 的所有结论都围绕这两个数字展开。
市场状态(regime)
市场在不同时期呈现截然不同的统计特征,如震荡市、急跌后的 V 型修复、持续上行趋势等。适合某一状态的指标(趋势市用 SMA/EMA/RSI 等趋势跟随指标,回撤市用 VaR 和信号归一化等尾部风险工具)在另一状态可能完全失效甚至误导。
论文的核心诊断是:固定策略让智能体在所有状态下重复同一套分析词汇;EvolveTrade 的价值在于能按状态激活相关指标。
前视偏差与时序截断
在金融回测中,如果决策时用到了决策时点之后才存在的未来信息,会得到虚高的结果,称为前视偏差(look-ahead leakage)。防止手段是给所有数据检索工具施加统一的时间截断,只允许访问决策时刻之前的数据。
EvolveTrade 的价格与新闻工具都强制同一时间截断,且实验特意选用模型知识截止日期之后的市场区间,以排除「背过答案」的可能性。
在线提示词优化
一类通过验证信号自动改写提示词的方法(如 OPRO、DSPy),通常在部署前用固定验证集离线搜索最优指令。与之相对,在线优化指系统部署后依据真实运行反馈持续改写提示词,反馈分布随时间非平稳变化。
EvolveTrade 是在线优化路线的交易特化版本:用真实交易盈亏而非离线验证集驱动提示词进化,理解这一区别才能把握它与 ATLAS 等前作及 EvolveStrategy 基线的差异。
研究动机
现有 LLM 交易智能体的工具使用流程几乎都是部署前写死的。论文用 GPT-5-mini 在 2025 年 1 月(震荡)、4 月(-9.8% 急跌后 V 型修复)、9 月(持续上行)三个截然不同的月份做了诊断实验(图 2):智能体在代码解释器里计算的分析指标在三种状态下几乎一模一样——夏普比率、20 日收益、60 日收益、年化波动率、回撤这五个指标在 90-100% 的交易日被重复计算,而趋势市必需的 SMA/EMA/RSI 和回撤市必需的 VaR、信号归一化在 21 个交易日中出现次数为零。新闻检索退化为「TICKER, TICKER news」式的模板化查询,价格回看窗口在所有状态下都固定在约六个月。也就是说,同一套分析流程被机械地套用到急跌和牛市上;更根本的是,初始提示词 $\pi_0$ 在任何市场数据被观察到之前就已写死,智能体从结构上就不可能从自己的交易结果中学到任何东西。
本文的目标是论文的目标是让 LLM 交易智能体的「可复用决策流程」——如何获取信息、交叉验证证据、控制风险、构建仓位——能够从自身已实现的交易经验中在线改进。具体做法是把智能体的系统提示词视为可编辑的策略文本:每个更新周期($N$ 个交易日)结束后,由一个独立的 Policy Agent 阅读本周期内的决策轨迹和真实盈亏反馈,改写出下一周期的策略 $\pi_{t+1}$。骨干 LLM 的参数和工具接口全程冻结,不需要任何重训练,也不修改工具,因此框架可以直接套用到任意现成的工具调用型交易智能体上,而评估关注的正是这种「流程改进」能否转化为 Sharpe 比率和累计收益的提升。
与已有工作不同的是,已有工作分两类:静态智能体(如 LiveTradeBench)给固定观察窗口、完全不用工具;静态工具调用智能体(如自主交易框架)虽能主动检索信息,但提示词、工作流和角色分工在部署后从不修改(图 1 的 A/B)。提示词优化方法(OPRO、DSPy 等)和交易领域的 ATLAS、SHARP 虽然也会改指令或结构化策略,但要么依赖离线验证集,要么只优化高层交易策略而保持操作层工具协议固定——论文正是以 ATLAS 为基础构造了 EvolveStrategy 基线来做对照。EvolveTrade 的独特切入是:以「部署后在线进化」为目标,用智能体自己产生的工具调用轨迹加真实组合盈亏,全面改写包括工具调用协议在内的整个操作策略,并提供了从策略改动到仓位变化再到已实现收益差的可追溯归因链(如 NVDA 案例)。
核心方法
直觉上,EvolveTrade 把「交易经验复盘」制度化:每过 $N$ 个交易日,由一个专门的 LLM 复盘近期每笔决策「当时怎么想的、结果如何」,把教训写回系统提示词。技术上,第 $t$ 天智能体的输入为 $S_t = (\pi_t, P_{t-1}, \mathcal{T})$:$\pi_t$ 是当日生效的策略文本、$P_{t-1}$ 是前一日组合状态、$\mathcal{T}$ 是价格检索、新闻搜索和 Python 代码解释器三种工具(均强制时间截断防前视)。冻结的 LLM $p_\theta$ 在 $\pi_t$ 引导下执行工具调用内循环,输出可行集 $\mathcal{W}$(默认仅多头单纯形加现金)中的权重 $w_t$ 和逐资产决策理由 $d_{\text{dect}}$。环境按收盘价调仓后返回反馈 $g_t$(组合日收益、逐资产收益、组合状态),两者拼成经验记录 $R_t = (h_t, g_t)$,其中 $h_t = (w_t, d_{\text{dect}})$,供策略精炼使用。
核心创新是把系统提示词当作「文本参数化的策略」,且唯一被学习的对象就是这段文本。与强化学习不同,它不做梯度更新;与经验记忆类方法不同,它不累积反射式记忆库,而是直接重写指导未来所有决策的操作规程;与 EvolveStrategy 这类只更新高层交易策略的基线不同,它连工具调用协议本身也在更新范围内。关键的精心设计是反馈配对:单看盈亏 $g_t$ 是模糊信号(亏损可能只是不可抗的市场冲击,盈利可能只是运气),因此每次精炼同时携带决策轨迹 $h_t$——记录当时每个资产用了什么证据和论证——让 Policy Agent 能把「错误的分析流程」与「不可控的市场噪音」区分开,只修改流程层面真正有缺陷的部分。策略在批次内保持不变($\pi_{(k-1)N+1} = \cdots = \pi_{kN}$),保证了在线评估的因果一致性:后期的每一笔交易都由被此前真实经验塑造过的策略驱动。
方法步骤详情
流程分五步循环。第一步,用人工撰写的初始策略 $\pi_0$ 启动(模板见附录 Figure 8)。第二步(交易日 $t$):冻结 LLM 在 $S_t$ 条件下执行工具内循环——检索价格、搜索新闻、用代码计算指标——输出组合权重 $w_t$ 和逐资产理由 $d_{\text{dect}}$,合称决策轨迹 $h_t$。第三步:环境按收盘价调仓,返回反馈 $g_t$(组合日收益、逐资产收益、组合状态),与 $h_t$ 拼成经验记录 $R_t = (h_t, g_t)$。第四步(每 $N$ 天,默认 $N=5$):收拢批次记录 $B_k = \{R_{(k-1)N+1}, \ldots, R_{kN}\}$,由 Policy Agent 执行 $f_{\text{update}}(\pi_{kN}, B_k) = \text{LLM}(I_{\text{update}}, \pi_{kN}, B_k)$;指令要求分析提示词哪些行导致好/坏表现、把具体观察关联到具体行,再重写完整策略。第五步:用 $\pi_{kN+1}$ 开始下一批次迭代。例如若轨迹显示屡次依据新闻加仓而未核对价格,更新会引入「加仓前须用价格交叉验证新闻」类规则。
技术新颖性
技术新颖性体现在三点。其一,学习对象的选择:把策略压缩为一段可读文本,使「策略进化」完全可解释——每次改动都能引用具体证据,案例级归因(如 NVDA 仓位降低 7.8 个百分点)可以直接串联策略改动、仓位变化与已实现收益差,这是黑盒策略优化做不到的。其二,更新信号的构造:决策轨迹与已实现盈亏的配对 $R_t = (h_t, g_t)$ 直面金融反馈的归因模糊问题,是把在线提示词优化引入非平稳交易环境的关键前提。其三,部署形态:模型与工具全程冻结,更新以 $N=5$ 天为节拍在线进行;50 天长程实验中策略长度呈「增长—周期性收缩」的非单调模式(图 6),说明更新指令能合并冗余规则而非无限膨胀,具备长期运行的可扩展性。相比 ATLAS/SHARP 只动策略层、FLAG-Trader/AlphaQuarter 学工具编排,本文动的是「智能体如何收集与验证证据」这一更底层的操作规程。
实验结果
论文证据链分四层。第一,主结果(表 1):EvolveTrade 在 5 个模型-状态组合的 3 个中取得 LLM 方法最优 SR 与 CR——GPT-5-mini 在 2025 年 1 月达 SR 5.12、CR 5.10%(静态工具调用基线 2.87/3.30%),9 月达 SR 8.43、CR 6.84%(基线 6.45/4.86%);Gemini-2.5-Flash 在 2025 年 11 月最佳(SR -1.03,远好于基线 -1.99),2026 年 2 月次优(SR 2.75、CR 2.92%),其余两个组合仍由固定策略方法胜出。第二,行为分析(图 3、图 4):代码解释器日均调用从约 1.0 次升至 2.6-4.5 次;回撤期激活 VaR 与归一化、上行期激活 SMA/EMA/RSI——这些指标基线使用天数为零。第三,案例归因(图 5):2025 年 1 月 24 日 EvolveTrade 仅持 NVDA 2.9%(基线 10.7%),次日 NVDA 暴跌 17.0%,当日收益 -0.03% 对 -1.11%。第四,长程与敏感性(表 2、表 3):50 天交易 SR 4.00、CR 10.56% 领先;$N=5$ 最优(SR 3.67),每日更新最差(SR 1.92)。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 月度在线交易 · GPT-5-mini · 2025年9月上行市 | Sharpe Ratio / 累计收益率 | SR 8.43,CR 6.84% | Static Tool-Calling Agent:SR 6.45,CR 4.86% | SR +1.98,CR +1.98 个百分点;CR 超过全部规则基线(最强为 SMA 5.31%、B&H 8.35% 中除 SPY 外最高) |
| 月度在线交易 · GPT-5-mini · 2025年1月震荡市 | Sharpe Ratio / 累计收益率 | SR 5.12,CR 5.10% | Static Tool-Calling Agent:SR 2.87,CR 3.30% | SR +2.25,CR +1.80 个百分点;MDD 亦从 2.79% 降至 2.39% |
| 月度在线交易 · Gemini-2.5-Flash · 2026年2月震荡市 | Sharpe Ratio / 累计收益率 | SR 2.75,CR 2.92% | Static Tool-Calling Agent:SR 2.70,CR 2.29% | SR +0.05,CR +0.63 个百分点,超越全部传统规则基线,验证收益跨骨干迁移 |
| 50 个交易日连续在线交易 · GPT-5-mini(2025-09-02 至 2025-11-10) | Sharpe Ratio / 累计收益率 | SR 4.00,CR 10.56% | Static Tool-Calling Agent:SR 2.94,CR 8.88% | SR +1.06,CR +1.68 个百分点,优于包括 EvolveStrategy(SR 3.27)在内的所有基线 |
| 策略更新间隔敏感性 · 2025年1/4/9月平均(GPT-5-mini) | Sharpe Ratio / 累计收益率 | N=5:SR 3.67,CR 1.78% | N=1 每日更新:SR 1.92,CR 0.16% | SR +1.75,CR +1.62 个百分点,验证适中间隔优于过频更新 |
局限与改进
作者承认的局限:更新间隔 $N$ 在整个运行期间固定,无法随市场状态动态调整(敏感性分析表明这是非平凡选择);交易成本只考虑了比例成本,未纳入滑点、市场冲击和流动性约束;结论基于 1 个月窗口、每配置 3 次重复,样本量有限。我自己的观察:其一,5 个模型-状态组合中仍有 2 个由固定策略方法胜出(如 GPT-5-mini 2025 年 4 月回撤月,EvolveTrade SR -2.53 劣于 KDJ&RSI 的 2.22),说明策略进化并非在所有状态下都有效,进化方向可能被近期噪音带偏;其二,精炼质量完全依赖 Policy Agent 的单次 LLM 判断,没有回滚或版本管理机制,一次糟糕的改写会影响后续整整 5 个交易日;其三,投资域限于 15 只美股蓝筹加现金的仅多头配置,未测试做空、杠杆或多资产场景;其四,实验依赖闭源 API 模型,策略进化行为可能随模型版本更迭而漂移,外部复现者无法锁定完全相同的条件。
独立分析的弱点
独立分析的弱点及改进方向:第一,反馈归因仍是软性的——$g_t$ 的噪音问题完全靠 Policy Agent 的语言推理化解,缺乏统计保证,改进方向是引入反事实评估(如同期随机策略对照)或多轨迹差分来强化归因。第二,策略文本是单点状态、无记忆与回滚:若第 $k$ 批的改写引入错误规则,第 $k+1$ 批只能在受损策略基础上修复,改进方向是维护策略版本库并允许回退或择优融合。第三,更新节拍固定,改进方向是根据波动率或市场状态检测自适应调度(作者也将其列为未来工作)。第四,新闻工具引入外部文本,存在提示词注入风险——恶意或低质新闻可能操纵策略改写,改进方向是对工具输出做来源分级与清洗。第五,成本方面每个交易日需要多轮工具内循环、每 5 天一次完整复盘,3 次重复乘多月份的评估开销不小,改进方向是研究更稀疏的更新触发条件或增量式精炼以降低调用量。
未来方向
作者明确提出两个方向:动态调度更新间隔(根据市场变化自适应触发精炼),以及用更贴近真实的执行模型(滑点、市场冲击、流动性约束)重新评估。在论文成果之上还可以延伸:其一,把策略文本进化与经验记忆结合——策略沉淀「通用规程」,记忆库保存「具体案例」,两者互补;其二,引入策略种群与选择机制,并行维护多条策略线按滚动表现择优,缓解单点改写风险;其三,把该框架迁移到其他非平稳序贯决策域(如运维告警处置、机器人任务规划),检验「文本策略在线进化」的通用性;其四,为改写过程增加数值验证器,对每条新增规则用历史批次做轻量回测过滤,降低错误规则进入正式策略的概率;其五,研究策略文本的压缩与蒸馏,防止长周期运行中提示词膨胀推高推理成本;其六,将比例交易成本扩展为含冲击成本的成交模型后再评估策略的换手行为是否仍然合理。
复现评估
复现条件中等偏易。框架基于公开的 LiveTradeBench 构建,无需任何模型训练——只需一个冻结的 LLM API(GPT-5-mini 或 Gemini-2.5-Flash)、价格/新闻检索工具和一个 Python 代码解释器;初始策略模板与更新指令在附录 G(Figure 8、Figure 9)、规则基线定义在附录 A、比例成本分析在附录 D,实现细节披露充分。数据为 15 只美股蓝筹加现金的日线行情,通过标准数据源即可获得。主要成本是 API 调用量:每个交易日多轮工具内循环、每 5 天一次策略复盘,论文每个配置跑 3 次重复、覆盖 6 个后截止月份外加 50 天长程实验,估算单次完整复现约需数百至上千美元级 API 开销。论文文本未明确承诺开源代码,这是复现的主要不确定因素;但方法组件简单(一个交易循环加一个改写提示词),有经验的工程师按论文描述一周内应能搭建出可用原型。
论文图表
三个一月期(2025 年 1/4/9 月)中,静态策略智能体每天在代码解释器中调用的分析指标二值热图:夏普、20 日收益、60 日收益、年化波动率、回撤五个指标在 90-100% 的日子出现,而 RSI、EMA、VaR、归一化在所有日子里使用天数为零,与市场状态完全无关。
这是动机部分的核心实证:用具体使用频率数据证明固定策略导致「分析词汇状态不变」,直接引出自进化框架的必要性。
附录中给出的初始策略 $\pi_0$ 提示词模板,其中规定了智能体每天使用的分析指标清单(正是图 2 中被日复一日重复计算的那五个指标)和工具调用格式。
静态策略的「病灶」原文:图 2 中状态不变的分析词汇直接来源于这个写死的模板,也是复现实验的必要材料。
附录中 Policy Agent 的固定更新指令 $I_{\text{update}}$:要求分析记录中哪些观察关联到当前提示词的哪些行、判断哪些行导致好/坏表现,并在此基础上重写完整策略文本,强调有依据的编辑。
方法的核心引擎:整个「学习」都由这段指令驱动,其措辞决定了精炼质量,是复现与改进的关键切入点。