AI Intermediate Python

AI Hedge Fund - 多智能体投资分析系统

模拟14位投资大师思维方式的 AI 量化交易系统,通过多智能体协作进行股票分析

ai-agentsquantitative-financetradingmulti-agent

什么是 AI Hedge Fund?

AI Hedge Fund 是一个概念验证项目,探索使用 AI 进行交易决策。系统模拟了多位知名投资者的投资风格,通过多智能体协作进行股票分析和交易信号生成。

核心特点

  • 14 个投资风格智能体(价值投资、成长投资、反脆弱等)
  • 4 个分析智能体(估值、情绪、基本面、技术面)
  • 1 个风险经理 + 1 个投资组合经理
  • LangChain 驱动,基于 LLM 的推理
  • 不进行真实交易,仅用于教育研究

⚠️ 重要声明:本项目仅用于教育和研究目的,不构成投资建议。

项目结构

src/
├── main.py              # 主入口,CLI 入口
├── backtester.py        # 回测引擎
├── agents/              # 投资风格智能体
│   ├── warren_buffett.py
│   ├── charlie_munger.py
│   ├── ben_graham.py
│   └── ... (共14个)
├── graph/
│   └── state.py         # 状态管理
├── llm/
│   └── llm.py           # LLM 调用封装
└── tools/
    └── api.py           # 金融数据 API

投资风格智能体

智能体风格核心分析维度
Warren Buffett奥马哈先知护城河分析、内在价值、现金流折现
Charlie Munger伙伴合理价格买优质企业、多元思维模型
Ben Graham价值投资教父安全边际、低估值筛选
Peter Lynch实践投资者十倍股基因、主营业务清晰度
Cathie Wood成长投资女王创新破坏、成长潜力
Nassim Taleb黑天鹅风险分析师尾部风险、反脆弱性
Michael Burry反脆弱空头深度价值、逆向投资
Mohnish PabraiDhandho 投资者低风险翻倍策略

Warren Buffett 智能体示例

class WarrenBuffettSignal(BaseModel):
    signal: Literal["bullish", "bearish", "neutral"]
    confidence: int  # 置信度 0-100
    reasoning: str   # 决策理由

def warren_buffett_agent(state: AgentState, agent_id: str):
    # 1. 获取财务指标
    metrics = get_financial_metrics(ticker, end_date)

    # 2. 获取财务科目
    financial_line_items = search_line_items(ticker, [...])

    # 3. 分析护城河
    moat_analysis = analyze_moat(metrics)

    # 4. 分析定价权
    pricing_power_analysis = analyze_pricing_power(...)

    # 5. 计算内在价值
    intrinsic_value = calculate_intrinsic_value(...)

    # 6. 返回信号
    return WarrenBuffettSignal(signal="bullish", confidence=75, reasoning="...")

分析智能体

智能体功能输出
Valuation计算内在价值交易信号
Sentiment分析市场情绪交易信号
Fundamentals分析基本面数据交易信号
Technicals分析技术指标交易信号

系统架构

决策流程

输入股票代码(AAPL, MSFT, NVDA)

并行执行 14 个投资风格智能体

4 个分析智能体(估值/情绪/基本面/技术面)

风险经理计算风险指标,设置仓位限制

投资组合经理综合决策

生成最终交易信号

快速入门

环境准备

# 克隆仓库
git clone https://github.com/virattt/ai-hedge-fund.git
cd ai-hedge-fund

# 安装 Poetry
curl -sSL https://install.python-poetry.org | python3 -

# 安装依赖
poetry install

配置 API Key

# 创建 .env 文件
cp .env.example .env

编辑 .env

# LLM API(至少需要一个)
OPENAI_API_KEY=your-openai-api-key
# 或
ANTHROPIC_API_KEY=your-anthropic-api-key

# 金融数据 API
FINANCIAL_DATASETS_API_KEY=your-financial-datasets-api-key

运行

# 基本运行(分析多只股票)
poetry run python src/main.py --ticker AAPL,MSFT,NVDA

# 使用本地 LLM(Ollama)
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --ollama

# 指定时间范围回测
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01

# 运行回测
poetry run python src/backtester.py --ticker AAPL,MSFT,NVDA

与类似项目对比

项目特点智能体数量开源
ai-hedge-fund多风格投资者模拟14+5
Bedrock-QuantAWS 量化框架
Investopedia AI教育目的

常见问题

Q: 这个项目真的能赚钱吗? A: 不能。本项目是教育研究目的,不进行真实交易

Q: 需要哪些 API Key? A: 至少需要一个 LLM API Key(OpenAI/Anthropic/Groq/DeepSeek)。金融数据 API 可选但推荐。

Q: 支持本地模型吗? A: 支持。使用 --ollama 标志即可连接本地 Ollama。

Q: 如何扩展新的投资风格? A: 在 src/agents/ 目录下创建新的 Python 文件,继承智能体模式即可。

局限性

  1. 不进行真实交易 — 仅为概念验证
  2. 模拟环境 — 没有真实的市场执行
  3. API 依赖 — 需要有效的 API Key
  4. 数据延迟 — 金融数据可能不是实时的
  5. 多智能体意见冲突 — 不同投资风格可能给出相反建议,投资组合经理如何权衡未明确说明

参考链接