Vibe-Trading

Agent

FRENZY

Vibe-Trading

Creator:

About this agent

"Vibe-Trading: Your Personal Trading Agent"

<p align="center"> <b>English</b> | <a href="README_zh.md">中文</a> | <a href="README_ja.md">日本語</a> | <a href="README_ko.md">한국어</a> | <a href="README_ar.md">العربية</a> </p> <p align="center"> <img src="assets/icon.png" width="120" alt="Vibe-Trading Logo"/> </p> <h1 align="center">Vibe-Trading: Your Personal Trading Agent</h1> <p align="center"> <b>One Command to Empower Your Agent with Comprehensive Trading Capabilities</b> </p> <p align="center"> <img src="https://img.shields.io/badge/Python-3.11%2B-3776AB?style=flat&logo=python&logoColor=white" alt="Python"> <img src="https://img.shields.io/badge/Backend-FastAPI-009688?style=flat" alt="FastAPI"> <img src="https://img.shields.io/badge/Frontend-React%2019-61DAFB?style=flat&logo=react&logoColor=white" alt="React"> <a href="https://pypi.org/project/vibe-trading-ai/"><img src="https://img.shields.io/pypi/v/vibe-trading-ai?style=flat&logo=pypi&logoColor=white" alt="PyPI"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow?style=flat" alt="License"></a> <br> <img src="https://img.shields.io/badge/Skills-72-orange" alt="Skills"> <img src="https://img.shields.io/badge/Swarm_Presets-29-7C3AED" alt="Swarm"> <img src="https://img.shields.io/badge/Tools-27-0F766E" alt="Tools"> <img src="https://img.shields.io/badge/Data_Sources-6-2563EB" alt="Data Sources"> <br> <a href="https://github.com/HKUDS/.github/blob/main/profile/README.md"><img src="https://img.shields.io/badge/Feishu-Group-E9DBFC?style=flat-square&logo=feishu&logoColor=white" alt="Feishu"></a> <a href="https://github.com/HKUDS/.github/blob/main/profile/README.md"><img src="https://img.shields.io/badge/WeChat-Group-C5EAB4?style=flat-square&logo=wechat&logoColor=white" alt="WeChat"></a> <a href="https://discord.gg/2vDYc2w5"><img src="https://img.shields.io/badge/Discord-Join-7289DA?style=flat-square&logo=discord&logoColor=white" alt="Discord"></a> </p> <p align="center"> <a href="#-key-features">Features</a> &nbsp;&middot;&nbsp; <a href="#-demo">Demo</a> &nbsp;&middot;&nbsp; <a href="#-what-is-vibe-trading">What Is It</a> &nbsp;&middot;&nbsp; <a href="#-get-started">Get Started</a> &nbsp;&middot;&nbsp; <a href="#-cli-reference">CLI</a> &nbsp;&middot;&nbsp; <a href="#-api-server">API</a> &nbsp;&middot;&nbsp; <a href="#-mcp-plugin">MCP</a> &nbsp;&middot;&nbsp; <a href="#-project-structure">Structure</a> &nbsp;&middot;&nbsp; <a href="#-roadmap">Roadmap</a> &nbsp;&middot;&nbsp; <a href="#-contributing">Contributing</a> &nbsp;&middot;&nbsp; <a href="#contributors">Contributors</a> </p> <p align="center"> <a href="#-get-started"><img src="assets/pip-install.svg" height="45" alt="pip install vibe-trading-ai"></a> </p>

📰 News

  • 2026-04-30 ⚙️ Web UI Settings + validation CLI hardening: New Settings page for LLM provider/model, base URL, reasoning effort, and data source credentials, backed by local/auth-protected settings APIs and data-driven provider metadata (#57). Also hardens python -m backtest.validation <run_dir> so missing, blank, malformed, non-existent, and non-directory inputs fail with clear operator-facing messages before validation starts (#60).
  • 2026-04-28 🚀 v0.1.6 released (pip install -U vibe-trading-ai): Fixes vibe-trading --swarm-presets returning empty after pip install / uv tool install (#55) — preset YAMLs now bundled inside the src.swarm package and pinned by a 6-test regression suite. Plus AKShare loader correctly routes ETFs (510300.SH) and forex (USDCNH) to the right endpoints with hardened registry fallback. Rolls up everything since v0.1.5: benchmark comparison panel, /upload streaming + size limits, Futu loader (HK + A-share), vnpy export skill, security hardening, frontend lazy loading (688KB → 262KB).
  • 2026-04-27 📊 Benchmark panel + upload safety: Backtest output now ships a benchmark comparison panel (ticker / benchmark return / excess return / information ratio) with yfinance-backed resolution for SPY, CSI 300, etc. (#48). Plus /upload streams the request body in 1 MB chunks and aborts past MAX_UPLOAD_SIZE, bounding memory under oversized/malformed clients (#53) — pinned by a 4-case regression suite.
<details> <summary>Earlier news</summary>
  • 2026-04-22 🛡️ Hardening + new integrations: Path containment enforced in safe_path + journal/shadow tool sandbox, MANIFEST.in ships .env.example / tests / Docker files in sdist, route-level lazy loading shrinks frontend initial bundle 688KB → 262KB. Plus Futu data loader for HK & A-share equities (#47) and vnpy CtaTemplate export skill (#46).
  • 2026-04-21 🛡️ Workspace + docs: Relative run_dir normalized to active run dir (#43). README usage examples (#45).
  • 2026-04-20 🔌 Reasoning + Swarm: reasoning_content preserved across all ChatOpenAI paths — Kimi / DeepSeek / Qwen thinking work end-to-end (#39). Swarm streaming + clean Ctrl+C (#42).
  • 2026-04-19 📦 v0.1.5: Published to PyPI & ClawHub. python-multipart CVE floor bump, 5 new MCP tools wired (analyze_trade_journal + 4 shadow-account tools), pattern_recognitionpattern registry fix, Docker dep parity, SKILL manifest synced (22 MCP tools / 71 skills).
  • 2026-04-18 👥 Shadow Account: Extract your strategy rules from a broker journal → backtest the shadow across markets → 8-section HTML/PDF report showing exactly how much you leave on the table (rule violations, early exits, missed signals, counterfactual trades). 4 new tools, 1 skill, 32 tools total. Trade Journal + Shadow Account samples now live in the web UI welcome screen.
  • 2026-04-17 📊 Trade Journal Analyzer + Universal File Reader: Upload broker exports (同花顺/东财/富途/generic CSV) → auto trading profile (holding days, win rate, PnL ratio, drawdown) + 4 bias diagnostics (disposition effect, overtrading, chasing momentum, anchoring). read_document now dispatches PDF, Word, Excel, PowerPoint, images (OCR), and 40+ text formats behind one unified call.
  • 2026-04-16 🧠 Agent Harness: Persistent cross-session memory, FTS5 session search, self-evolving skills (full CRUD), 5-layer context compression, read/write tool batching. 27 tools, 107 new tests.
  • 2026-04-15 🤖 Z.ai + MiniMax: Z.ai provider (#35), MiniMax temperature fix + model update (#33). 13 providers.
  • 2026-04-14 🔧 MCP Stability: Fixed backtest tool Connection closed error on stdio transport (#32).
  • 2026-04-13 🌐 Cross-Market Composite Backtest: New CompositeEngine backtests mixed-market portfolios (e.g. A-shares + crypto) with shared capital pool and per-market rules. Also fixed swarm template variable fallback and frontend timeout.
  • 2026-04-12 🌍 Multi-Platform Export: /pine exports strategies to TradingView (Pine Script v6), TDX (通达信/同花顺/东方财富), and MetaTrader 5 (MQL5) in one command.
  • 2026-04-11 🛡️ Reliability & DX: vibe-trading init .env bootstrap (#19), preflight checks, runtime data-source fallback, hardened backtest engine. Multi-language README (#21).
  • 2026-04-10 📦 v0.1.4: Docker fix (#8), web_search MCP tool, 12 LLM providers, akshare/ccxt deps. Published to PyPI and ClawHub.
  • 2026-04-09 📊 Backtest Wave 2: ChinaFutures, GlobalFutures, Forex, Options v2 engines. Monte Carlo, Bootstrap CI, Walk-Forward validation.
  • 2026-04-08 🔧 Multi-market backtest with per-market rules, Pine Script v6 export, 5 data sources with auto-fallback.
</details>

💡 What Is Vibe-Trading?

Vibe-Trading is an AI-powered multi-agent finance workspace that turns natural language requests into executable trading strategies, research insights, and portfolio analysis across global markets.

Key Capabilities:

Natural Language → Strategy — Describe an idea; the agent writes, tests, and exports trading code<br>
6 Data Sources, Zero Config — A-shares, HK/US, crypto, futures & forex with automatic fallback<br>
29 Expert Teams — Pre-built multi-agent swarm workflows for investment, trading & risk<br>
Cross-Session Memory — Remembers preferences and insights; creates & evolves reusable skills<br>
7 Backtest Engines — Cross-market composite testing with statistical validation & 4 optimizers<br>
Multi-Platform Export — One-click to TradingView, TDX (通达信/同花顺), and MetaTrader 5


✨ Key Features

<table width="100%"> <tr> <td align="center" width="25%" valign="top"> <img src="assets/scene-research.png" height="150" alt="Research"/><br> <h3>🔍 DeepResearch for Trading</h3> <img src="https://img.shields.io/badge/72_Skills-FF6B6B?style=for-the-badge&logo=bookstack&logoColor=white" alt="Skills" /><br><br> <div align="left" style="font-size: 4px;"> • 72 specialist skills with persistent cross-session memory<br> • Self-evolving: agent creates & refines workflows from experience<br> • 5-layer context compression — no info lost in long sessions<br> • Natural-language task routing across all finance domains </div> </td> <td align="center" width="25%" valign="top"> <img src="assets/scene-swarm.png" height="150" alt="Swarm"/><br> <h3>🐝 Swarm Intelligence</h3> <img src="https://img.shields.io/badge/29_Trading_Teams-4ECDC4?style=for-the-badge&logo=hive&logoColor=white" alt="Swarm" /><br><br> <div align="left"> • 29 out-of-the-box trading team presets<br> • DAG-based multi-agent orchestration<br> • Real-time streaming dashboard with live agent status<br> • FTS5 session search across all past conversations </div> </td> <td align="center" width="25%" valign="top"> <img src="assets/scene-backtest.png" height="150" alt="Backtest"/><br> <h3>📊 Cross-Market Backtest</h3> <img src="https://img.shields.io/badge/6_Data_Sources-FFD93D?style=for-the-badge&logo=bitcoin&logoColor=black" alt="Backtest" /><br><br> <div align="left"> • A-shares, HK/US equities, crypto, futures & forex<br> • 7 market engines + composite cross-market engine with shared capital pool<br> • Statistical validation: Monte Carlo, Bootstrap CI, Walk-Forward<br> • 15+ performance metrics & 4 optimizers </div> </td> <td align="center" width="25%" valign="top"> <img src="assets/scene-quant.png" height="150" alt="Quant"/><br> <h3>🧮 Quant Analysis Toolkit</h3> <img src="https://img.shields.io/badge/Quant_Tools-C77DFF?style=for-the-badge&logo=wolfram&logoColor=white" alt="Quant" /><br><br> <div align="left"> • Factor IC/IR analysis & quantile backtesting<br> • Black-Scholes pricing & full Greeks calculation<br> • Technical pattern recognition & detection<br> • Portfolio optimization via MVO/Risk Parity/BL </div> </td> </tr> </table>

72 Skills across 7 Categories

  • 📊 72 specialized finance skills organized into 7 categories
  • 🌐 Complete coverage from traditional markets to crypto & DeFi
  • 🔬 Comprehensive capabilities spanning data sourcing to quantitative research
CategorySkillsExamples
Data Source6data-routing, tushare, yfinance, okx-market, akshare, ccxt
Strategy17strategy-generate, cross-market-strategy, technical-basic, candlestick, ichimoku, elliott-wave, smc, multi-factor, ml-strategy
Analysis15factor-research, macro-analysis, global-macro, valuation-model, earnings-forecast, credit-analysis
Asset Class9options-strategy, options-advanced, convertible-bond, etf-analysis, asset-allocation, sector-rotation
Crypto7perp-funding-basis, liquidation-heatmap, stablecoin-flow, defi-yield, onchain-analysis
Flow7hk-connect-flow, us-etf-flow, edgar-sec-filings, financial-statement, adr-hshare
Tool8backtest-diagnose, report-generate, pine-script, doc-reader, web-reader

29 Agent Swarm Team Presets

  • 🏢 29 ready-to-use agent teams
  • ⚡ Pre-configured finance workflows
  • 🎯 Investment, trading & risk management presets
PresetWorkflow
investment_committeeBull/bear debate → risk review → PM final call
global_equities_deskA-share + HK/US + crypto researcher → global strategist
crypto_trading_deskFunding/basis + liquidation + flow → risk manager
earnings_research_deskFundamental + revision + options → earnings strategist
macro_rates_fx_deskRates + FX + commodity → macro PM
quant_strategy_deskScreening + factor research → backtest → risk audit
technical_analysis_panelClassic TA + Ichimoku + harmonic + Elliott + SMC → consensus
risk_committeeDrawdown + tail risk + regime review → sign-off
global_allocation_committeeA-shares + crypto + HK/US → cross-market allocation

<sub>Plus 20+ additional specialist presets — run vibe-trading --swarm-presets to explore all.

</sub>

🎬 Demo

<div align="center"> <table> <tr> <td width="50%">

https://github.com/user-attachments/assets/4e4dcb80-7358-4b9a-92f0-1e29612e6e86

</td> <td width="50%">

https://github.com/user-attachments/assets/3754a414-c3ee-464f-b1e8-78e1a74fbd30

</td> </tr> <tr> <td colspan="2" align="center"><sub>☝️ Natural-language backtest & multi-agent swarm debate — Web UI + CLI</sub></td> </tr> </table> </div>

🚀 Quick Started

One-line install (PyPI)

BASH
pip install vibe-trading-ai  

Package name vs commands: The PyPI package is vibe-trading-ai. Once installed, you get three commands:

CommandPurpose
vibe-tradingInteractive CLI / TUI
vibe-trading serveLaunch FastAPI web server
vibe-trading-mcpStart MCP server (for Claude Desktop, OpenClaw, Cursor, etc.)
BASH
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)  

Or choose a path

PathBest forTime
A. DockerTry it now, zero local setup2 min
B. Local installDevelopment, full CLI access5 min
C. MCP pluginPlug into your existing agent3 min
D. ClawHubOne command, no cloning1 min

Prerequisites

  • An LLM API key from any supported provider — or run locally with Ollama (no key needed)
  • Python 3.11+ for Path B
  • Docker for Path A

Supported LLM providers: OpenRouter, OpenAI, DeepSeek, Gemini, Groq, DashScope/Qwen, Zhipu, Moonshot/Kimi, MiniMax, Xiaomi MIMO, Z.ai, Ollama (local). See .env.example for config.

Tip: All markets work without any API keys thanks to automatic fallback. yfinance (HK/US), OKX (crypto), and AKShare (A-shares, US, HK, futures, forex) are all free. Tushare token is optional — AKShare covers A-shares as a free fallback.

Path A: Docker (zero setup)

BASH
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  

Open http://localhost:8899. Backend + frontend in one container.

Path B: Local install

BASH
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  
<details> <summary><b>Start web UI (optional)</b></summary>
BASH
# Terminal 1: API server  
vibe-trading serve --port 8899

# Terminal 2: Frontend dev server  
cd frontend && npm install && npm run dev  

Open http://localhost:5899. The frontend proxies API calls to localhost:8899.

Production mode (single server):

BASH
cd frontend && npm run build && cd ..  
vibe-trading serve --port 8899     # FastAPI serves dist/ as static files  
</details>

Path C: MCP plugin

See MCP Plugin section below.

Path D: ClawHub (one command)

BASH
npx clawhub@latest install vibe-trading --force  

The skill + MCP config is downloaded into your agent's skills directory. See ClawHub install for details.


🧠 Environment Variables

Copy agent/.env.example to agent/.env and uncomment the provider block you want. Each provider needs 3-4 variables:

VariableRequiredDescription
LANGCHAIN_PROVIDERYesProvider name (openrouter, deepseek, groq, ollama, etc.)
<PROVIDER>_API_KEYYes*API key (OPENROUTER_API_KEY, DEEPSEEK_API_KEY, etc.)
<PROVIDER>_BASE_URLYesAPI endpoint URL
LANGCHAIN_MODEL_NAMEYesModel name (e.g. deepseek/deepseek-v3.2)
TUSHARE_TOKENNoTushare Pro token for A-share data (falls back to AKShare)
TIMEOUT_SECONDSNoLLM call timeout, default 120s

<sub>* Ollama does not require an API key.</sub>

Free data (no key needed): A-shares via AKShare, HK/US equities via yfinance, crypto via OKX, 100+ crypto exchanges via CCXT. The system automatically selects the best available source for each market.

🎯 Recommended Models

Vibe-Trading is a tool-heavy agent — skills, backtests, memory, and swarms all flow through tool calls. Model choice directly decides whether the agent uses its tools or fabricates answers from training data.

TierExamplesWhen to use
Bestanthropic/claude-opus-4.7, anthropic/claude-sonnet-4.6, openai/gpt-5.4, google/gemini-3.1-pro-previewComplex swarms (3+ agents), long research sessions, paper-grade analysis
Sweet spot (default)deepseek/deepseek-v3.2, x-ai/grok-4.20, z-ai/glm-5.1, moonshotai/kimi-k2.5, qwen/qwen3-max-thinkingDaily driver — reliable tool-calling at ~1/10 the cost
Avoid for agent use*-nano, *-flash-lite, *-coder-next, small / distilled variantsTool-calling is unreliable — the agent will appear to "answer from memory" instead of loading skills or running backtests

The default agent/.env.example ships with deepseek/deepseek-v3.2 — the cheapest option in the sweet-spot tier.


🖥 CLI Reference

BASH
vibe-trading               # interactive TUI  
vibe-trading run -p "..."  # single run  
vibe-trading serve         # API server  
<details> <summary><b>Slash commands inside TUI</b></summary>
CommandDescription
/helpShow all commands
/skillsList all 72 finance skills
/swarmList 29 swarm team presets
/swarm run <preset> [vars_json]Run a swarm team with live streaming
/swarm listSwarm run history
/swarm show <run_id>Swarm run details
/swarm cancel <run_id>Cancel a running swarm
/listRecent runs
/show <run_id>Run details + metrics
/code <run_id>Generated strategy code
/pine <run_id>Export indicators (TradingView + TDX + MT5)
/trace <run_id>Full execution replay
/continue <run_id> <prompt>Continue a run with new instructions
/sessionsList chat sessions
/settingsShow runtime config
/clearClear screen
/quitExit
</details> <details> <summary><b>Single run & flags</b></summary>
BASH
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  
BASH
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  
</details>

💡 Examples

Strategy & Backtesting

BASH
# 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

BASH
# 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

BASH
# 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"}'  

Cross-Session Memory

BASH
# 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"  

Upload & Analyze Documents

BASH
# 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

BASH
vibe-trading serve --port 8899  
MethodEndpointDescription
GET/runsList runs
GET/runs/{run_id}Run details
GET/runs/{run_id}/pineMulti-platform indicator export
POST/sessionsCreate session
POST/sessions/{id}/messagesSend message
GET/sessions/{id}/eventsSSE event stream
POST/uploadUpload PDF/file
GET/swarm/presetsList swarm presets
POST/swarm/runsStart swarm run
GET/swarm/runs/{id}/eventsSwarm SSE stream
GET/settings/llmRead Web UI LLM settings
PUT/settings/llmUpdate local LLM settings
GET/settings/data-sourcesRead local data source settings
PUT/settings/data-sourcesUpdate local data source settings

Interactive docs: http://localhost:8899/docs

Web UI Settings

The Web UI Settings page lets local users update the LLM provider/model, base URL, generation parameters, reasoning effort, and optional market data credentials such as the Tushare token. Settings are persisted to agent/.env; provider defaults are loaded from agent/src/providers/llm_providers.json.

Settings reads are side-effect free: GET /settings/llm and GET /settings/data-sources never create agent/.env, and they only return project-relative paths. Settings reads and writes can expose credential state or update credentials/runtime environment, so they require API_AUTH_KEY when configured. If API_AUTH_KEY is unset for dev mode, settings access is accepted only from loopback clients.


🔌 MCP Plugin

Vibe-Trading exposes 22 MCP tools for any MCP-compatible client. Runs as a stdio subprocess — no server setup needed. 21 of 22 tools work with zero API keys (HK/US/crypto). Only run_swarm needs an LLM key.

<details> <summary><b>Claude Desktop</b></summary>

Add to claude_desktop_config.json:

JSON
{
  "mcpServers": {  
    "vibe-trading": {  
      "command": "vibe-trading-mcp"  
    }  
  }  
}
</details> <details> <summary><b>OpenClaw</b></summary>

Add to ~/.openclaw/config.yaml:

YAML
skills:  
  - name: vibe-trading  
    command: vibe-trading-mcp  
</details> <details> <summary><b>Cursor / Windsurf / other MCP clients</b></summary>
BASH
vibe-trading-mcp                  # stdio (default)  
vibe-trading-mcp --transport sse  # SSE for web clients  
</details>

MCP tools exposed (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.

<details> <summary><b>Install from ClawHub (one command)</b></summary>
BASH
npx clawhub@latest install vibe-trading --force  

--force is required because the skill references external APIs, which triggers VirusTotal's automated scan. The code is fully open-source and safe to inspect.

This downloads the skill + MCP config into your agent's skills directory. No cloning needed.

Browse on ClawHub: clawhub.ai/skills/vibe-trading

</details> <details> <summary><b>OpenSpace — self-evolving skills</b></summary>

All 72 finance skills are published on open-space.cloud and evolve autonomously through OpenSpace's self-evolution engine.

To use with OpenSpace, add both MCP servers to your agent config:

JSON
{
  "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 will auto-discover all 72 skills, enabling auto-fix, auto-improve, and community sharing. Search for Vibe-Trading skills via search_skills("finance backtest") in any OpenSpace-connected agent.

</details>

📁 Project Structure

<details> <summary><b>Click to expand</b></summary>
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 (72 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/                 # 72 finance skills in 7 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  
</details>

🏛 Ecosystem

Vibe-Trading is part of the HKUDS agent ecosystem:

<table> <tr> <td align="center" width="25%"> <a href="https://github.com/HKUDS/ClawTeam"><b>ClawTeam</b></a><br> <sub>Agent Swarm Intelligence</sub> </td> <td align="center" width="25%"> <a href="https://github.com/HKUDS/nanobot"><b>NanoBot</b></a><br> <sub>Ultra-Lightweight Personal AI Assistant</sub> </td> <td align="center" width="25%"> <a href="https://github.com/HKUDS/CLI-Anything"><b>CLI-Anything</b></a><br> <sub>Making All Software Agent-Native</sub> </td> <td align="center" width="25%"> <a href="https://github.com/HKUDS/OpenSpace"><b>OpenSpace</b></a><br> <sub>Self-Evolving AI Agent Skills</sub> </td> </tr> </table>

🗺 Roadmap

We ship in phases. Items move to Issues when work begins.

PhaseFeatureStatus
Agent HarnessPersistent cross-session memory (remember / recall / forget)Done
Self-evolving skills — agent creates, patches, and deletes its own workflowsDone
FTS5 cross-session search across all past conversationsDone
5-layer context compression (micro → collapse → auto → manual → iterative)Done
Read/write tool batching — parallel execution for readonly toolsDone
Next UpAutonomous research loop — agent iterates hypotheses overnightIn Progress
IM integration (Slack / Telegram / WeChat)Planned
Analysis & VizOptions volatility surface & Greeks 3D visualizationPlanned
Cross-asset correlation heatmap with rolling window & clusteringPlanned
Benchmark comparison in CLI backtest outputPlanned
Skills & PresetsDividend Analysis skillPlanned
ESG / Sustainable Investing swarm presetPlanned
Portfolio & OptimizationAdvanced portfolio optimizer: leverage, sector caps, turnover constraintsPlanned
FutureStrategy marketplace (share & discover)Exploring
Live data streaming via WebSocketExploring

Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Good first issues are tagged with good first issue — pick one and get started.

Want to contribute something bigger? Check the Roadmap above and open an issue to discuss before starting.


Contributors

Thanks to everyone who has contributed to Vibe-Trading!

<a href="https://github.com/HKUDS/Vibe-Trading/graphs/contributors"> <img src="https://contrib.rocks/image?repo=HKUDS/Vibe-Trading" /> </a>

Disclaimer

Vibe-Trading is for research, simulation, and backtesting only. It is not investment advice and it does not execute live trades. Past performance does not guarantee future results.

License

MIT License — see LICENSE


Star History

Star History Chart


<p align="center"> Thanks for visiting <b>Vibe-Trading</b> ✨ </p> <p align="center"> <img src="https://visitor-badge.laobi.icu/badge?page_id=HKUDS.Vibe-Trading&style=flat" alt="visitors"/> </p>

Source: https://github.com/HKUDS/Vibe-Trading

Comments & Discussion

Scroll to load comments...

Tags

backtesting
multi-agent
quantitative-finance
trading
ai-agent
algorithmic-trading
fintech
llm
mcp
python

Share

Related Links

Loading recommendations...

Yuki

Your Marketplace Companion

Agent

Hey, I'm Yuki 👋

Ask me about specific products, customer support, or anything about the Swarms Marketplace.