HKUDS/Vibe-Trading
HKUDS 的 Vibe-Trading 是 AI multi-agent 金融 workspace,基于 Python 3.11+、FastAPI、React 19,提供 CLI、Web UI、MCP。项目含 74 个 skills、29 个 swarm presets、27 个 tools、6 个 data sources,支持跨市场 backtest、策略导出、文档读取与安全认证配置。
📰 最新动态
- 2026-05-07 📈 Tushare fundamentals + 社区分流:新增用于基本面研究工作流的 point-in-time
TushareFundamentalProvidercontract,并为项目TUSHARE_TOKEN环境路径加入 regression 覆盖(#74)。社区分流也明确:Vibe-Trading 当前会将快速迭代集中在一种 UI 语言上;在已内置 DuckDuckGo 支持的web_search时,避免增加冗余搜索依赖;同时将非官方托管部署视为不可信环境,不应在其中放置 API key 或数据源 token。 - 2026-05-06 🚀 v0.1.7 发布(Release notes,
pip install -U vibe-trading-ai):安全边界加固已发布到 PyPI 和 ClawHub,覆盖更安全的 API、读取、上传、文件、URL、生成代码、shell tool、Docker 默认设置,同时保持 localhost CLI/Web UI 工作流的低摩擦。本周期还包括 Web UI Settings、相关性 heatmap、OpenAI Codex OAuth、A 股 pre-ST 过滤、交互式 CLI UX、swarm preset 检查、股息分析、dev workflow 打磨,以及经审计的 frontend build-dependency 最低版本。感谢 0.1.7 贡献者,以及 lemi9090 (S2W) 协调进行安全验证。 - 2026-05-05 🛡️ 安全边界跟进:完成围绕显式 CORS origins、Settings 凭据指示器、web URL 读取和 Shadow Account 代码生成的剩余安全边界加固,并为各路径加入 regression tests。正常的 localhost CLI/Web UI 工作流保持不变;远程部署应继续使用
API_AUTH_KEY和显式可信 origins。
- 2026-05-04 🖥️ 交互式 CLI UX + CI 清理:交互模式现在有实时底部状态栏,可显示 provider/model、session duration、last-run latency 和累计 tool-call 统计,并通过
prompt_toolkit支持 prompt history navigation 和方向键光标编辑(#69)。当prompt_toolkit或 TTY 不可用时,CLI 仍会回退到 Rich prompts。CI 路径预期也已与加固后的 file-import sandbox 和跨平台/tmp解析对齐,使 main 恢复绿色(bb67dc7)。 - 2026-05-03 🛡️ 安全加固补丁:收紧非本地部署的默认 API authentication,保护敏感 run/session/swarm 读取,限制 upload 和本地 file-reading 边界,按入口点限制具备 shell 能力的 tools,在 import 前验证生成策略加载,并默认以非 root 用户运行 Docker image,且仅发布 localhost 端口。本地 CLI 和 localhost Web UI 工作流仍保持低摩擦;远程 API/Web 部署应设置
API_AUTH_KEY。 - 2026-05-02 🧭 股息分析 + 更清晰的 roadmap:新增
dividend-analysisskill,覆盖收入型股票、派息可持续性、股息增长、股东收益、除息机制和 yield-trap 检查,并由 bundled-skill regression tests 固定。公开 roadmap 现在聚焦即将开展的工作:Research Autopilot、Data Bridge、Options Lab、Portfolio Studio、Alpha Zoo、Research Delivery、Trust Layer 和 Community sharing。 - 2026-05-01 🔥 相关性 heatmap + OpenAI Codex OAuth + A 股 pre-ST filter:新的相关性 dashboard/API 可计算滚动收益相关性,并为 portfolio 和 symbol 分析渲染 ECharts heatmap(#64)。OpenAI Codex provider 支持现在通过
vibe-trading provider login openai-codex使用 ChatGPT OAuth,并包含 Settings metadata 和 adapter regression tests(#65)。新增并加固ashare-pre-st-filterskill,用于 A 股 ST/*ST 风险筛查,包括 Sina penalty relevance filtering,避免证券账户提及抬高 E2 计数(#63)。 - 2026-04-30 ⚙️ Web UI Settings + validation CLI 加固:新增 Settings 页面,用于 LLM provider/model、base URL、reasoning effort 和数据源凭据,由本地/受认证保护的 settings APIs 和数据驱动的 provider metadata 支撑(#57)。同时加固
python -m backtest.validation <run_dir>,使缺失、空白、格式错误、不存在、非目录输入在验证开始前以清晰的操作员提示失败(#60)。 - 2026-04-28 🚀 v0.1.6 发布(
pip install -U vibe-trading-ai):修复pip install/uv tool install后vibe-trading --swarm-presets返回空的问题(#55)——preset YAML 现在打包在src.swarmpackage 内,并由 6-test regression suite 固定。此外,AKShare loader 可将 ETF(510300.SH)和外汇(USDCNH)正确路由到对应 endpoints,并加固 registry fallback。汇总 v0.1.5 以来的全部内容:benchmark comparison panel、/uploadstreaming + size limits、Futu loader(港股 + A 股)、vnpy export skill、安全加固、frontend lazy loading(688KB → 262KB)。 - 2026-04-27 📊 Benchmark panel + upload safety:Backtest 输出现在包含 benchmark comparison panel(ticker / benchmark return / excess return / information ratio),并通过 yfinance 支持 SPY、CSI 300 等解析(#48)。此外,
/upload以 1 MB chunks 流式读取 request body,并在超过MAX_UPLOAD_SIZE时中止,将超大/畸形客户端下的内存使用限制住(#53)——由 4-case regression suite 固定。 - 2026-04-22 🛡️ 加固 + 新集成:在
safe_path+ journal/shadow tool sandbox 中强制路径限制,MANIFEST.in在 sdist 中包含.env.example/ tests / Docker files,route-level lazy loading 将 frontend initial bundle 从 688KB 缩小到 262KB。此外新增用于港股与 A 股权益的 Futu data loader(#47)和 vnpy CtaTemplate export skill(#46)。 - 2026-04-21 🛡️ Workspace + docs:相对
run_dir规范化为 active run dir(#43)。README 使用示例(#45)。 - 2026-04-20 🔌 Reasoning + Swarm:
reasoning_content在所有ChatOpenAI路径中保留——Kimi / DeepSeek / Qwen thinking 可端到端工作(#39)。Swarm streaming + 干净的 Ctrl+C(#42)。 - 2026-04-19 📦 v0.1.5:发布到 PyPI 和 ClawHub。
python-multipartCVE 最低版本提升,接入 5 个新 MCP tools(analyze_trade_journal+ 4 个 shadow-account tools),修复pattern_recognition→patternregistry,Docker dep 对齐,SKILL manifest 同步(22 MCP tools / 71 skills)。 - 2026-04-18 👥 Shadow Account:从券商 journal 提取你的策略规则 → 跨市场 backtest shadow → 生成 8-section HTML/PDF report,清楚展示你错过了多少收益(规则违规、过早退出、遗漏信号、counterfactual trades)。新增 4 个 tools、1 个 skill,总计 32 个 tools。Trade Journal + Shadow Account 示例现已出现在 web UI welcome screen。
- 2026-04-17 📊 Trade Journal Analyzer + Universal File Reader:上传券商导出(同花顺/东财/富途/generic CSV)→ 自动生成 trading profile(持仓天数、胜率、PnL ratio、drawdown)+ 4 类 bias diagnostics(disposition effect、overtrading、chasing momentum、anchoring)。
read_document现在通过一个统一调用分发 PDF、Word、Excel、PowerPoint、images(OCR)和 40+ text formats。 - 2026-04-16 🧠 Agent Harness:持久化跨 session memory、FTS5 session search、自进化 skills(完整 CRUD)、5-layer context compression、read/write tool batching。27 个 tools,107 个新 tests。
- 2026-04-15 🤖 Z.ai + MiniMax:Z.ai provider(#35),MiniMax temperature 修复 + model 更新(#33)。13 个 providers。
- 2026-04-14 🔧 MCP Stability:修复 stdio transport 上 backtest tool 的
Connection closed错误(#32)。 - 2026-04-13 🌐 Cross-Market Composite Backtest:新的
CompositeEngine可对混合市场 portfolios(如 A 股 + crypto)进行 backtest,共享资金池并支持按市场规则。也修复了 swarm template variable fallback 和 frontend timeout。 - 2026-04-12 🌍 Multi-Platform Export:
/pine可用一条命令将策略导出到 TradingView(Pine Script v6)、TDX(通达信/同花顺/东方财富)和 MetaTrader 5(MQL5)。 - 2026-04-11 🛡️ Reliability & DX:
vibe-trading init.env bootstrap(#19)、preflight checks、runtime data-source fallback、加固 backtest engine。多语言 README(#21)。 - 2026-04-10 📦 v0.1.4:Docker 修复(#8)、
web_searchMCP tool、12 个 LLM providers、akshare/ccxtdeps。发布到 PyPI 和 ClawHub。 - 2026-04-09 📊 Backtest Wave 2:ChinaFutures、GlobalFutures、Forex、Options v2 engines。Monte Carlo、Bootstrap CI、Walk-Forward validation。
- 2026-04-08 🔧 多市场 backtest,支持按市场规则、Pine Script v6 export、5 个 data sources 自动 fallback。
💡 什么是 Vibe-Trading?
Vibe-Trading 是一个 AI 驱动的 multi-agent 金融 workspace,可将自然语言请求转化为可执行的交易策略、研究洞察和覆盖全球市场的 portfolio 分析。
核心能力:
• 自然语言 → 策略 — 描述一个想法;agent 编写、测试并导出交易代码 • 6 个 Data Sources,零配置 — A 股、港股/美股、crypto、futures 与 forex,自动 fallback • 29 个专家团队 — 面向投资、交易与风险的预置 multi-agent swarm 工作流 • 跨 Session Memory — 记住偏好和洞察;创建并演化可复用 skills • 7 个 Backtest Engines — 跨市场 composite testing,包含 statistical validation 与 4 个 optimizers • Multi-Platform Export — 一键导出到 TradingView、TDX(通达信/同花顺)和 MetaTrader 5
✨ 核心功能
8 个类别中的 74 个 Skills
- 📊 74 个专业金融 skills,组织为 8 个类别
- 🌐 完整覆盖传统市场到 crypto 与 DeFi
- 🔬 能力覆盖 data sourcing 到 quantitative research
| 类别 | Skills | 示例 |
|---|---|---|
| Data Source | 6 | data-routing, tushare, yfinance, okx-market, akshare, ccxt |
| Strategy | 17 | strategy-generate, cross-market-strategy, technical-basic, candlestick, ichimoku, elliott-wave, smc, multi-factor, ml-strategy |
| Analysis | 17 | factor-research, macro-analysis, global-macro, valuation-model, earnings-forecast, credit-analysis, dividend-analysis |
| Asset Class | 9 | options-strategy, options-advanced, convertible-bond, etf-analysis, asset-allocation, sector-rotation |
| Crypto | 7 | perp-funding-basis, liquidation-heatmap, stablecoin-flow, defi-yield, onchain-analysis |
| Flow | 7 | hk-connect-flow, us-etf-flow, edgar-sec-filings, financial-statement, adr-hshare |
| Tool | 10 | backtest-diagnose, report-generate, pine-script, doc-reader, web-reader, vnpy-export |
| Risk Analysis | 1 | ashare-pre-st-filter |
29 个 Agent Swarm Team Presets
- 🏢 29 个可直接使用的 agent teams
- ⚡ 预配置金融 workflows
- 🎯 投资、交易与风险管理 presets
| Preset | Workflow |
|---|---|
investment_committee |
多空辩论 → 风险审查 → PM 最终决策 |
global_equities_desk |
A 股 + 港股/美股 + crypto researcher → global strategist |
crypto_trading_desk |
Funding/basis + liquidation + flow → risk manager |
earnings_research_desk |
Fundamental + revision + options → earnings strategist |
macro_rates_fx_desk |
Rates + FX + commodity → macro PM |
quant_strategy_desk |
Screening + factor research → backtest → risk audit |
technical_analysis_panel |
Classic TA + Ichimoku + harmonic + Elliott + SMC → consensus |
risk_committee |
Drawdown + tail risk + regime review → sign-off |
global_allocation_committee |
A 股 + crypto + 港股/美股 → cross-market allocation |
另有 20+ 个 specialist presets——运行 vibe-trading --swarm-presets 查看全部。
🎬 Demo
https://github.com/user-attachments/assets/4e4dcb80-7358-4b9a-92f0-1e29612e6e86
https://github.com/user-attachments/assets/3754a414-c3ee-464f-b1e8-78e1a74fbd30
🚀 快速开始
一行安装(PyPI)
pip install vibe-trading-ai
Package name 与 commands: PyPI package 是
vibe-trading-ai。安装后,你会得到三个命令:
命令 用途 vibe-trading交互式 CLI / TUI vibe-trading serve启动 FastAPI web server vibe-trading-mcp启动 MCP server(用于 Claude Desktop、OpenClaw、Cursor 等)
vibe-trading init # interactive .env setup
vibe-trading # launch CLI
vibe-trading serve --port 8899 # launch web UI
vibe-trading-mcp # start MCP server (stdio)
或选择一种路径
| 路径 | 最适合 | 时间 |
|---|---|---|
| A. Docker | 立即试用,零本地配置 | 2 分钟 |
| B. 本地安装 | 开发、完整 CLI 访问 | 5 分钟 |
| C. MCP plugin | 接入你现有的 agent | 3 分钟 |
| D. ClawHub | 一条命令,无需 clone | 1 分钟 |
前置条件
- 任意受支持 provider 的 LLM API key——或用 Ollama 本地运行(无需 key)
- 路径 B 需要 Python 3.11+
- 路径 A 需要 Docker
- OpenAI Codex 也可通过 ChatGPT OAuth 使用:设置
LANGCHAIN_PROVIDER=openai-codex,然后运行vibe-trading provider login openai-codex。这不会使用OPENAI_API_KEY。
支持的 LLM providers: OpenRouter、OpenAI、DeepSeek、Gemini、Groq、DashScope/Qwen、Zhipu、Moonshot/Kimi、MiniMax、Xiaomi MIMO、Z.ai、Ollama(本地)。配置见
.env.example。
提示: 得益于自动 fallback,所有市场都无需 API keys 即可使用。yfinance(港股/美股)、OKX(crypto)和 AKShare(A 股、美股、港股、futures、forex)均免费。Tushare token 是可选项——AKShare 可作为 A 股免费 fallback。
路径 A:Docker(零配置)
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
cp agent/.env.example agent/.env
# Edit agent/.env — uncomment your LLM provider and set API key
docker compose up --build
打开 http://localhost:8899。Backend + frontend 在同一个 container 中。
Docker 默认将 backend 发布在 127.0.0.1:8899,并以非 root container 用户运行 app。如果你有意将 API 暴露到本机之外,请设置强 API_AUTH_KEY,并让客户端发送 Authorization: Bearer <key>。
路径 B:本地安装
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
python -m venv .venv
# Activate
source .venv/bin/activate # Linux / macOS
# .venv\Scripts\Activate.ps1 # Windows PowerShell
pip install -e .
cp agent/.env.example agent/.env # Edit — set your LLM provider API key
vibe-trading # Launch interactive TUI
# Terminal 1: API server
vibe-trading serve --port 8899
# Terminal 2: Frontend dev server
cd frontend && npm install && npm run dev
打开 http://localhost:5899。Frontend 会将 API calls 代理到 localhost:8899。
生产模式(单 server):
cd frontend && npm run build && cd ..
vibe-trading serve --port 8899 # FastAPI serves dist/ as static files
路径 C:MCP plugin
见下方 MCP Plugin 部分。
路径 D:ClawHub(一条命令)
npx clawhub@latest install vibe-trading --force
skill + MCP config 会下载到你的 agent skills 目录。详见 ClawHub install。
🧠 Environment Variables
将 agent/.env.example 复制到 agent/.env,并取消注释你想使用的 provider block。每个 provider 需要 3-4 个 variables:
| Variable | 必需 | 描述 |
|---|---|---|
LANGCHAIN_PROVIDER |
是 | Provider name(openrouter, deepseek, groq, ollama 等) |
<PROVIDER>_API_KEY |
是* | API key(OPENROUTER_API_KEY, DEEPSEEK_API_KEY 等) |
<PROVIDER>_BASE_URL |
是 | API endpoint URL |
LANGCHAIN_MODEL_NAME |
是 | Model name(如 deepseek/deepseek-v3.2) |
TUSHARE_TOKEN |
否 | A 股数据的 Tushare Pro token(fallback 到 AKShare) |
TIMEOUT_SECONDS |
否 | LLM call timeout,默认 120s |
API_AUTH_KEY |
网络部署推荐 | 当 API 可被非本地客户端访问时需要的 Bearer token |
VIBE_TRADING_ENABLE_SHELL_TOOLS |
否 | 在远程 API/MCP-SSE 风格部署中显式启用 shell-capable tools |
VIBE_TRADING_ALLOWED_FILE_ROOTS |
否 | 额外的逗号分隔 roots,用于 document 和 broker-journal imports |
VIBE_TRADING_ALLOWED_RUN_ROOTS |
否 | 额外的逗号分隔 roots,用于 generated-code run directories |
* Ollama 不需要 API key。OpenAI Codex 使用 ChatGPT OAuth,并通过 oauth-cli-kit 存储 tokens,不写入 agent/.env。
免费数据(无需 key): 通过 AKShare 获取 A 股,通过 yfinance 获取港股/美股权益,通过 OKX 获取 crypto,通过 CCXT 获取 100+ crypto exchanges。系统会自动为每个市场选择最佳可用 source。
🎯 推荐 Models
Vibe-Trading 是 tool-heavy agent——skills、backtests、memory 和 swarms 都通过 tool calls 流转。Model 选择会直接决定 agent 是使用 tools,还是从训练数据中编造答案。
| 层级 | 示例 | 使用场景 |
|---|---|---|
| 最佳 | anthropic/claude-opus-4.7, anthropic/claude-sonnet-4.6, openai/gpt-5.4, google/gemini-3.1-pro-preview |
复杂 swarms(3+ agents)、长研究 sessions、论文级分析 |
| 平衡点(默认) | deepseek/deepseek-v3.2, x-ai/grok-4.20, z-ai/glm-5.1, moonshotai/kimi-k2.5, qwen/qwen3-max-thinking |
日常主力——可靠 tool-calling,成本约为高端模型的 1/10 |
| Agent 使用中避免 | *-nano, *-flash-lite, *-coder-next, 小型 / distilled variants |
Tool-calling 不可靠——agent 会看起来“凭记忆回答”,而不是加载 skills 或运行 backtests |
默认 agent/.env.example 使用 deepseek/deepseek-v3.2——平衡点层级中成本最低的选项。
🖥 CLI Reference
vibe-trading # interactive TUI
vibe-trading run -p "..." # single run
vibe-trading serve # API server
| 命令 | 描述 |
|---|---|
/help |
显示所有命令 |
/skills |
列出全部 74 个 finance skills |
/swarm |
列出 29 个 swarm team presets |
/swarm run <preset> [vars_json] |
以 live streaming 运行一个 swarm team |
/swarm list |
Swarm run history |
/swarm show <run_id> |
Swarm run details |
/swarm cancel <run_id> |
取消正在运行的 swarm |
/list |
最近 runs |
/show <run_id> |
Run details + metrics |
/code <run_id> |
生成的 strategy code |
/pine <run_id> |
导出 indicators(TradingView + TDX + MT5) |
/trace <run_id> |
完整 execution replay |
/continue <run_id> <prompt> |
用新 instructions 继续一个 run |
/sessions |
列出 chat sessions |
/settings |
显示 runtime config |
/clear |
清屏 |
/quit |
退出 |
vibe-trading run -p "Backtest BTC-USDT MACD strategy, last 30 days"
vibe-trading run -p "Analyze AAPL momentum" --json
vibe-trading run -f strategy.txt
echo "Backtest 000001.SZ RSI" | vibe-trading run
vibe-trading -p "your prompt"
vibe-trading --skills
vibe-trading --swarm-presets
vibe-trading --swarm-run investment_committee '{"topic":"BTC outlook"}'
vibe-trading --list
vibe-trading --show <run_id>
vibe-trading --code <run_id>
vibe-trading --pine <run_id> # Export indicators (TradingView + TDX + MT5)
vibe-trading --trace <run_id>
vibe-trading --continue <run_id> "refine the strategy"
vibe-trading --upload report.pdf
💡 示例
Strategy 与 Backtesting
# Moving average crossover on US equities
vibe-trading run -p "Backtest a 20/50-day moving average crossover on AAPL for the past year, show Sharpe ratio and max drawdown"
# RSI mean-reversion on crypto
vibe-trading run -p "Test RSI(14) mean-reversion on BTC-USDT: buy below 30, sell above 70, last 6 months"
# Multi-factor strategy on A-shares
vibe-trading run -p "Backtest a momentum + value + quality multi-factor strategy on CSI 300 constituents over 2 years"
# After backtesting, export to TradingView / TDX / MetaTrader 5
vibe-trading --pine <run_id>
Market Research
# Equity deep-dive
vibe-trading run -p "Research NVDA: earnings trend, analyst consensus, option flow, and key risks for next quarter"
# Macro analysis
vibe-trading run -p "Analyze the current Fed rate path, USD strength, and impact on EM equities and gold"
# Crypto on-chain
vibe-trading run -p "Deep dive BTC on-chain: whale flows, exchange balances, miner activity, and funding rates"
Swarm Workflows
# Bull/bear debate on a stock
vibe-trading --swarm-run investment_committee '{"topic": "Is TSLA a buy at current levels?"}'
# Quant strategy from screening to backtest
vibe-trading --swarm-run quant_strategy_desk '{"universe": "S&P 500", "horizon": "3 months"}'
# Crypto desk: funding + liquidation + flow → risk manager
vibe-trading --swarm-run crypto_trading_desk '{"asset": "ETH-USDT", "timeframe": "1w"}'
# Global macro portfolio allocation
vibe-trading --swarm-run macro_rates_fx_desk '{"focus": "Fed pivot impact on EM bonds"}'
跨 Session Memory
# Save your preferences once
vibe-trading run -p "Remember: I prefer RSI-based strategies, max 10% drawdown, hold period 5–20 days"
# The agent recalls them in future sessions automatically
vibe-trading run -p "Build a crypto strategy that fits my risk profile"
上传并分析 Documents
# Analyze a broker export or earnings report
vibe-trading --upload trades_export.csv
vibe-trading run -p "Profile my trading behavior and identify any biases"
vibe-trading --upload NVDA_Q1_earnings.pdf
vibe-trading run -p "Summarize the key risks and beats/misses from this earnings report"
🌐 API Server
vibe-trading serve --port 8899
| Method | Endpoint | 描述 |
|---|---|---|
GET |
/runs |
列出 runs |
GET |
/runs/{run_id} |
Run details |
GET |
/runs/{run_id}/pine |
Multi-platform indicator export |
POST |
/sessions |
创建 session |
POST |
/sessions/{id}/messages |
发送 message |
GET |
/sessions/{id}/events |
SSE event stream |
POST |
/upload |
上传 PDF/file |
GET |
/swarm/presets |
列出 swarm presets |
POST |
/swarm/runs |
启动 swarm run |
GET |
/swarm/runs/{id}/events |
Swarm SSE stream |
GET |
/settings/llm |
读取 Web UI LLM settings |
PUT |
/settings/llm |
更新本地 LLM settings |
GET |
/settings/data-sources |
读取本地 data source settings |
PUT |
/settings/data-sources |
更新本地 data source settings |
交互式文档:http://localhost:8899/docs
安全默认设置
对于 localhost 开发,vibe-trading serve 会保持浏览器工作流简单。对于任何非本地客户端,敏感 API endpoints 需要 API_AUTH_KEY;JSON/upload requests 使用 Authorization: Bearer <key>。Browser EventSource streams 会在你在 Settings 中输入同一个 key 后由 Web UI 处理。
Shell-capable tools 可用于本地 CLI 和可信 localhost workflows,但不会暴露给远程 API sessions,除非你显式设置 VIBE_TRADING_ENABLE_SHELL_TOOLS=1。Document 和 journal readers 默认限制在 upload/import roots 中;请将文件放在 agent/uploads、agent/runs、./uploads、./data、~/.vibe-trading/uploads 或 ~/.vibe-trading/imports 下,或通过 VIBE_TRADING_ALLOWED_FILE_ROOTS 添加专用目录。
Web UI Settings
Web UI Settings 页面允许本地用户更新 LLM provider/model、base URL、generation parameters、reasoning effort,以及可选的市场数据凭据(如 Tushare token)。Settings 会持久化到 agent/.env;provider defaults 从 agent/src/providers/llm_providers.json 加载。
Settings 读取没有副作用:GET /settings/llm 和 GET /settings/data-sources 永远不会创建 agent/.env,并且只返回 project-relative paths。Settings 读写可能暴露 credential state 或更新 credentials/runtime environment,因此在配置了 API_AUTH_KEY 时需要认证。如果 dev mode 下未设置 API_AUTH_KEY,settings access 只接受 loopback clients。
🔌 MCP Plugin
Vibe-Trading 为任何 MCP-compatible client 暴露 22 个 MCP tools。作为 stdio subprocess 运行——无需 server setup。22 个 tools 中有 21 个可零 API keys 使用(港股/美股/crypto)。只有 run_swarm 需要 LLM key。
添加到 claude_desktop_config.json:
{
"mcpServers": {
"vibe-trading": {
"command": "vibe-trading-mcp"
}
}
}
添加到 ~/.openclaw/config.yaml:
skills:
- name: vibe-trading
command: vibe-trading-mcp
vibe-trading-mcp # stdio (default)
vibe-trading-mcp --transport sse # SSE for web clients
暴露的 MCP tools(22): list_skills, load_skill, backtest, factor_analysis, analyze_options, pattern_recognition, get_market_data, web_search, read_url, read_document, read_file, write_file, analyze_trade_journal, extract_shadow_strategy, run_shadow_backtest, render_shadow_report, scan_shadow_signals, list_swarm_presets, run_swarm, get_swarm_status, get_run_result, list_runs.
npx clawhub@latest install vibe-trading --force
因为该 skill 引用了外部 APIs,会触发 VirusTotal 的自动扫描,所以需要
--force。代码完全开源,可自行检查。
这会将 skill + MCP config 下载到你的 agent skills 目录。无需 clone。
在 ClawHub 浏览:clawhub.ai/skills/vibe-trading
全部 74 个 finance skills 都发布在 open-space.cloud,并通过 OpenSpace 的 self-evolution engine 自主演化。
要与 OpenSpace 一起使用,请将两个 MCP servers 添加到你的 agent config:
{
"mcpServers": {
"openspace": {
"command": "openspace-mcp",
"toolTimeout": 600,
"env": {
"OPENSPACE_HOST_SKILL_DIRS": "/path/to/vibe-trading/agent/src/skills",
"OPENSPACE_WORKSPACE": "/path/to/OpenSpace"
}
},
"vibe-trading": {
"command": "vibe-trading-mcp"
}
}
}
OpenSpace 会自动发现全部 74 个 skills,启用 auto-fix、auto-improve 和 community sharing。在任何连接 OpenSpace 的 agent 中,通过 search_skills("finance backtest") 搜索 Vibe-Trading skills。
📁 Project Structure
Vibe-Trading/
├── agent/ # Backend (Python)
│ ├── cli.py # CLI entrypoint — interactive TUI + subcommands
│ ├── api_server.py # FastAPI server — runs, sessions, upload, swarm, SSE
│ ├── mcp_server.py # MCP server — 22 tools for OpenClaw / Claude Desktop
│ │
│ ├── src/
│ │ ├── agent/ # ReAct agent core
│ │ │ ├── loop.py # 5-layer compression + read/write tool batching
│ │ │ ├── context.py # system prompt + auto-recall from persistent memory
│ │ │ ├── skills.py # skill loader (74 bundled + user-created via CRUD)
│ │ │ ├── tools.py # tool base class + registry
│ │ │ ├── memory.py # lightweight workspace state per run
│ │ │ ├── frontmatter.py # shared YAML frontmatter parser
│ │ │ └── trace.py # execution trace writer
│ │ │
│ │ ├── memory/ # Cross-session persistent memory
│ │ │ └── persistent.py # file-based memory (~/.vibe-trading/memory/)
│ │ │
│ │ ├── tools/ # 27 auto-discovered agent tools
│ │ │ ├── backtest_tool.py # run backtests
│ │ │ ├── remember_tool.py # cross-session memory (save/recall/forget)
│ │ │ ├── skill_writer_tool.py # skill CRUD (save/patch/delete/file)
│ │ │ ├── session_search_tool.py # FTS5 cross-session search
│ │ │ ├── swarm_tool.py # launch swarm teams
│ │ │ ├── web_search_tool.py # DuckDuckGo web search
│ │ │ └── ... # bash, file I/O, factor analysis, options, etc.
│ │ │
│ │ ├── skills/ # 74 finance skills in 8 categories (SKILL.md each)
│ │ ├── swarm/ # Swarm DAG execution engine
│ │ │ └── presets/ # 29 swarm preset YAML definitions
│ │ ├── session/ # Multi-turn chat + FTS5 session search
│ │ └── providers/ # LLM provider abstraction
│ │
│ └── backtest/ # Backtest engines
│ ├── engines/ # 7 engines + composite cross-market engine + options_portfolio
│ ├── loaders/ # 6 sources: tushare, okx, yfinance, akshare, ccxt, futu
│ │ ├── base.py # DataLoader Protocol
│ │ └── registry.py # Registry + auto-fallback chains
│ └── optimizers/ # MVO, equal vol, max div, risk parity
│
├── frontend/ # Web UI (React 19 + Vite + TypeScript)
│ └── src/
│ ├── pages/ # Home, Agent, RunDetail, Compare
│ ├── components/ # chat, charts, layout
│ └── stores/ # Zustand state management
│
├── Dockerfile # Multi-stage build
├── docker-compose.yml # One-command deploy
├── pyproject.toml # Package config + CLI entrypoint
└── LICENSE # MIT
🏛 生态
Vibe-Trading 是 HKUDS agent 生态的一部分:
🗺 Roadmap
我们分阶段交付。工作开始后,条目会移动到 Issues。
| 阶段 | 功能 | 状态 |
|---|---|---|
| Research Autopilot | Overnight research loop:hypothesis → data pull → backtest → evidence report | 进行中 |
| Data Bridge | Bring-your-own data:带 schema mapping 的本地 CSV/Parquet/SQL connectors | 计划中 |
| Options Lab | Vol surface、Greeks dashboard、payoff/scenario explorer | 计划中 |
| Portfolio Studio | Risk x-ray、constraints、turnover-aware optimizer、rebalance notes | 计划中 |
| Alpha Zoo | Alpha101 / Alpha158 / Alpha191 factor libraries,带 screening + IC tests | 计划中 |
| Research Delivery | 定时 briefs 到 Slack / Telegram / email-style channels | 计划中 |
| Trust Layer | 可复现 run cards:tool trace、data sources、assumptions、citations | 计划中 |
| Community | 可分享的 skills、presets 和 strategy cards | 探索中 |
贡献
欢迎贡献!指南见 CONTRIBUTING.md。
Good first issues 标记为 good first issue——选择一个即可开始。
想贡献更大的内容?请先查看上方 Roadmap,并在开始前 open an issue 讨论。
贡献者
感谢所有为 Vibe-Trading 做出贡献的人!
近期 v0.1.7 周期贡献者与致谢:
- @GTC2080 / TaoMu — Web UI Settings 和 provider/data-source configuration APIs (#57)
- @BigNounce90 — backtest
run_dirinput 的 validation CLI hardening (#60) - @shadowinlife — A 股 pre-ST filter skill (#63)
- @MB-Ndhlovu — correlation heatmap dashboard 和 review fixes (#64, #66)
- @ykykj — OpenAI Codex OAuth provider option (#65)
- @RuifengFu — interactive CLI live status bar 和 prompt editing (#69)
- @SiMinus — swarm preset inspection command (#73)
- @warren618 / Haozhe Wu — security hardening、release integration、docs、Docker、packaging 和 local dev workflow
- lemi9090 (S2W) — coordinated security research、validation 和 disclosure support
免责声明
Vibe-Trading 仅用于研究、模拟和 backtesting。它不是投资建议,也不会执行实盘交易。过往表现不保证未来结果。
License
MIT License — 见 LICENSE