用自然语言指挥 AI 完成量化回测:Vibe-Trading 让策略开发不再依赖代码
AI Agent · 量化交易 · 回测引擎 · 多智能体协作 · MCP —— HKUDS/Vibe-Trading 让自然语言直接驱动跨市场策略研发与回测, 形成一个从想法到回测报告再到多平台导出的完整闭环。
投研分析的碎片化困境
传统量化工作流依赖多个孤立工具。Tushare 取 A 股数据、 yfinance 查美股、CCXT 拉 CEX 行情、回测框架自己写、 多因子库另起一套。每个环节都需要独立配置、学习成本和维护精力。 团队里研究员用 Excel 写策略,量化工程师用 Python 再封装一层, 交易员最后手动导入 CTrade 或 MT5。一次想法到落地的链路动辄数天。
个体投资者更艰难:没有团队分工,一个策略从数据清洗到参数优化 再到导出执行,全在自己手上。即使开源框架如 backtrader、 vnpy、zipline 已大幅降低了门槛,写信号逻辑、配数据源、 跑回测、看绩效——每一步仍然依赖手写代码, 对非编程背景的策略研究员很不友好。
Vibe-Trading 试图回答一个直接的问题: 能不能把策略描述交给一个 AI Agent,让它在几分钟内完成 数据获取、信号编写、回测执行和报告生成?
从自然语言到回测结果
一句话安装
pip install vibe-trading-ai
安装后获得三个命令:vibe-trading(交互式 TUI)、 vibe-trading serve(Web 界面)、 vibe-trading-mcp(MCP 服务器)。
场景一:用一句话跑回测
vibe-trading run -p "Backtest a 20/50-day moving average crossover on AAPL for the past year, show Sharpe ratio and max drawdown"
Agent 收到指令后自动完成全流程: 调用 yfinance 加载 AAPL 历史数据 -> 加载 「technical-basic」技能生成均线交叉信号 -> 构造 config.json + signal_engine.py -> 调用回测引擎 -> 输出 equity curve、Sharpe 比率、最大回撤。 全程不需要写一行 Python。
场景二:A 股多因子筛选
vibe-trading run -p "Backtest a momentum + value + quality multi-factor strategy on CSI 300 constituents over 2 years"
Agent 自动通过 akshare 获取沪深 300 成分股, 加载「multi-factor」技能构建因子组合,跑回测后导出绩效指标。 数据源自动 fallback —— 即使不配 Tushare token, akshare 也免费覆盖 A 股。
场景三:AI 投委会(多智能体协作)
vibe-trading --swarm-run investment_committee \ '{"topic": "Is TSLA a buy?", "market": "US"}'
这条命令触发一个 DAG 工作流:
1. bull_advocate 从技术面、基本面、情绪面构建多头论据
2. bear_advocate 同时构建空头风险清单
3. risk_officer 审查双方观点后评估仓位上限
4. portfolio_manager 综合输入做出最终决策 (含目标价、止损、头寸规模)
四个 Agent 的输出在终端实时流式展示。Vibe-Trading 内置了 29 套多 Agent 预设,覆盖加密货币交易台、宏观利率外汇、 量化策略委员会等场景。每一个预设都包含完整的角色定义、 工具白名单和 DAG 任务编排。
场景四:交易日志分析 + Shadow Account
上传券商交割单,Agent 从中提取持仓周期、胜率、盈亏比、 最大回撤,并诊断四大行为偏差(处置效应、过度交易、 追涨、锚定)。Shadow Account 模块更进一步: 把实际交易规则提取出来,生成一个「影子策略」跨市场回测, 量化「纪律与收益之间的差距」。
vibe-trading --upload trades_export.csv vibe-trading run -p "Profile my trading behavior and identify any biases"
架构设计与创新点
五层上下文管理
基于 ReAct 范式的 Agent 核心做了大量工程优化:
• 微压缩 —— 静默裁剪旧工具结果,保留最近 N 条
• 零成本折叠 —— 折叠长文本块,保留头尾、压缩中部, 无需 LLM 调用
• 自动摘要 —— 触发 LLM 结构化摘要, 带 token 预算尾保护(最后 20000 token 不被压缩)
• 主动压缩 —— 模型调用 compact 工具触发上层摘要
• 增量更新 —— 后续压缩更新已有摘要而非从头开始
这套机制让长时间回话不丢失关键上下文, 对回测这类多次工具调用的任务尤为关键。
跨会话持久记忆与技能自演化
关键信息写入 ~/.vibe-trading/memory/, 新会话自动召回。记忆条目支持 FTS5 全文搜索。
更具前瞻性的是技能自演化能力:Agent 自身具备 技能的 CRUD 操作——它可以动态创建、修改、删除技能, 实现工作流的自我进化。这在传统量化框架中几乎不可见。
多市场组合回测引擎
对比常见的单市场回测框架,一个核心差异在于 CompositeEngine:它允许把 A 股、美股、加密货币放在 同一个共享资金池里做组合回测,各市场各自执行信号逻辑 和交易规则。这对于评估跨市场配置策略天然适用。
引擎层输出 15 项以上绩效指标,并内置 Monte Carlo 模拟、 Bootstrap 置信区间和 Walk-Forward 验证—— 这些统计验证方法在 backtrader 和 vnpy 中需要额外实现。
Shadow Account 的逆向推导思维
不是从假设出发验证策略,而是从真实交易记录中 逆向推导隐含策略规则,再跨市场回测。规则提取器扫描 交割单中的开平仓规律(买入触发条件、止盈止损阈值、 持仓周期偏好),构建 ShadowProfile,渲染为可运行的 signal_engine.py 执行回测,量化「你本可以赚多少」。
零配置数据源与自动 Fallback
5 类数据源(akshare、yfinance、OKX、CCXT、Tushare) 通过 Protocol 接口统一抽象,运行时按市场自动选择优先级 并 fallback。akshare 和 yfinance 完全免费,即使不配 任何 API Key,A 股、港股、美股、加密货币、期货、外汇的 基础行情仍然可用。零配置门槛对新手和快速原型场景非常关键。
落地应用与演进空间
可立即落地的场景
个人投资者最直接的用途是策略快速验证。有一个 A 股选股 想法——比如「低市盈率 + 高 ROE + RSI 大于 50」—— 不必搭建本地数据管线,直接一句自然语言输入就能看到 过去两年的回测绩效,一键导出为 Pine Script(TradingView)、 TDX(通达信)或 MQL5(MetaTrader 5),无缝接入现有环境。
研究团队可以利用 29 套多 Agent 预设构建可复用的 投研流水线。以 investment_committee 为例,标准化输出 (多头论点 -> 空头论点 -> 风险评估 -> PM 决策) 本身就是一套可审计的投研 SOP,适合需要留痕复查的机构场景。
更广阔的演进方向
Agent 已经在自我进化方向上迈出了第一步(技能 CRUD)。 路线图中的 Autonomous Research Loop——让 Agent 在 无人值守时持续运行假设迭代——如果落地, 将实现 7×24 的策略挖掘能力。
另一个值得关注的方向是 WebSocket 实时行情接入后的实盘监控。 当前架构偏重离线/历史场景,加入实时管道后可以支撑 信号盘中提醒或仓位预警。
Vibe-Trading 的开放生态也是加分项。它提供了 MCP 服务端, 可以作为 Claude Desktop、OpenClaw 或任何 MCP 兼容 Agent 的金融数据插件。这意味着它不只是一个独立应用, 也是可以被更大 AI 编排框架调用的工具模块。
夜雨聆风