Vibe-Trading
一条命令启动个人交易 AI 智能体,多 Agent 协作完成市场研究到策略回测全流程
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
一条命令启动个人交易 AI 智能体,多 Agent 协作完成市场研究到策略回测全流程
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
如果你曾经想过——要是有个 AI 能帮我盯盘、分析财报、制定交易策略,还能自动回测验证,我就不用每天盯盘盯到头秃了——那么 Vibe-Trading 就是为你而生的工具。这是一个让大语言模型真正下场参与金融市场研究的开源项目,由香港大学数据科学研究团队(HKUDS)打造,目前已在 GitHub 斩获近 9000 颗星。
传统量化交易入门门槛极高:需要熟练掌握 Python 编程、金融工程知识、数据处理能力,以及对市场微观结构的深刻理解。一个普通人想要验证自己的交易想法,光是搭建回测环境就要折腾好几天。
Vibe-Trading 的出现正是为了打破这个壁垒。它的核心理念是:让任何拥有 OpenAI API Key 的人,都能在一条命令内拥有一个完整的交易研究智能体。这个智能体不是简单的价格提醒机器人,而是一个能够自主规划任务、调用工具、反思改进的 AI Agent 系统。
作者团队来自香港大学数据科学实验室(HKUDS),长期专注于大模型与垂直领域应用的结合研究。Vibe-Trading 是他们将 LLM Agent 架构引入量化交易场景的实践产物。
图1:多智能体交易团队架构
Vibe-Trading 采用了**多智能体(Multi-Agent)**架构,而非单一的大模型调用。这种设计借鉴了人类投研团队的组织方式:
**研究员(Researcher)**负责搜集信息——它会自主调用 yfinance(美股/加密)、akshare(A 股)、tushare(国内金融数据)等数据源,抓取财报、宏观经济数据、行业动态,并整理成结构化的研究报告。
**策略师(Strategist)**基于研究员的输出,结合技术分析工具(smartmoneyconcepts 订单流分析、pyharmonics 谐波形态识别)和统计模型(scikit-learn 机器学习),生成具体的交易策略建议。
**风控师(Risk Manager)**评估策略的风险收益比,检查仓位配置是否合理,并提供止损建议。
执行层通过 MCP(Model Context Protocol)协议与交易所 API(ccxt 支持全球 100+ 交易所)对接,支持模拟盘和实盘交易。
整个协作流程由 LangGraph 驱动,这是一个基于有向图的工作流引擎,每个节点是一个 Agent,边代表状态转移。与传统 LangChain Chain 的线性调用不同,LangGraph 支持循环(loop),这意味着 Agent 可以根据执行结果决定是否需要回退重新分析——这是真正实现自我改进的关键。
图2:影子账户
影子账户允许用户设定一个虚拟组合,AI 会根据策略信号生成交易指令,但这些指令不会真正执行——只是跟踪观察。这样你可以实时看到 AI 的判断与实盘走势的对比,验证策略在没有情绪干扰下的真实表现。当你满意后再切换到实盘模式。
图3:自我进化机制
Vibe-Trading 的 Agent 具备元学习能力。它会将每次交易的盈亏结果记录下来,通过反思 Prompt 让模型自己总结:上次亏损是因为我没有考虑到宏观利率变化的影响,随后在下一次分析中自动纳入这一维度。在 LangGraph 的支持下,Agent 可以访问自己的记忆(checkpoint),在每个决策点综合历史经验,形成越来越精准的判断。
图4:跨市场数据回测
Vibe-Trading 内置的回测引擎支持股票、期货、加密货币等多个市场的历史数据。回测支持:多时间周期测试、滑点/佣金/杠杆模拟、多空双向策略、机器学习辅助优化。DuckDB 作为时序数据的分析底库,能够高效处理大规模历史数据,保证回测速度。
Vibe-Trading 采用了 MCP(Model Context Protocol)作为 Agent 与外部工具交互的标准协议。任何支持 MCP 的工具(如交易所 API、数据源、行情终端)都可以即插即用地接入。项目自带 vibe-trading-mcp 命令行工具,可作为 MCP Server 被 Claude Desktop、Cline 等系统调用,把交易研究能力集成到任何 AI 助手中。
| 层级 | 技术选型 | 说明 |
|---|---|---|
| LLM 框架 | LangChain + LangGraph | 构建 Agent 工作流,支持循环和记忆 |
| Agent 通信协议 | FastMCP | 高性能 MCP Server 实现 |
| API 服务 | FastAPI + Uvicorn | 异步 API 服务,支持 SSE 流式输出 |
| 数据存储 | DuckDB | 时序数据分析,SQL 查询接口 |
| 数据获取 | yfinance / akshare / tushare / ccxt | 多市场金融数据源 |
| 技术分析 | smartmoneyconcepts / pyharmonics | 订单流 + 谐波形态识别 |
| 机器学习 | scikit-learn / scipy / numpy | 量化因子建模 |
| 文档处理 | python-docx / python-pptx / pypdfium2 | 自动解析研报、财报 |
整体代码质量较高,有完整的测试套件(pytest + pytest-cov),文档详尽(支持 5 种语言)。
Vibe-Trading 提供两种交互方式:**命令行交互(CLI)**直接运行 vibe-trading 进入交互式终端,可以像和投资顾问对话一样进行交易研究;API 服务运行 vibe-trading serve 启动 FastAPI 服务,适合集成到其他系统。容器化部署也提供了 Dockerfile 和 docker-compose.yml,一条 docker compose up 即可启动完整环境。
Vibe-Trading 是一款强大的研究工具,但绝不构成投资建议:
1. 模型幻觉风险:LLM 可能生成看似合理但实际错误的金融分析,对财报数据的理解可能出现偏差。影子账户功能正是为了在实盘前充分验证策略。
2. 数据延迟:免费数据源(yfinance、akshare)存在延迟,实盘交易中不应依赖这些数据进行决策。
3. 过拟合风险:回测引擎功能强大但容易产生过拟合,建议在影子账户运行足够长时间后再考虑实盘。
4. 法律合规:量化交易在部分地区有严格监管要求,使用实盘功能前请确保符合当地法规。
Vibe-Trading 代表了 LLM Agent 在金融领域应用的一个重要方向:不是用 AI 替代交易员,而是用 AI 赋能交易员的研究效率。
从增长曲线来看,Vibe-Trading 上线不到两年即突破 8900+ stars,且持续维护,说明这个方向确实戳中了市场需求。可以预见,未来会有更多垂直领域的 Agent 框架出现。Vibe-Trading 的 Multi-Agent + MCP 架构,为这类应用提供了可复用的范式参考。
总结:Vibe-Trading 是一款面向有一定 Python 基础的金融爱好者和量化研究者的开源工具,上手简单,扩展性强,但请务必在完全理解策略逻辑后再考虑实盘。