GitHub 43k Stars 的 AI 炒股框架:ai-hedge-fund 完整中文部署教程,教你如何学会炒股跑赢大盘

【AI辅助创作声明:本文由 AI 辅助整理与撰写,内容已经过人工审校与调整。】

本文是GitHub 43k+ stars项目ai-hedge-fund的首篇全中文深度教程,详解项目架构、完整安装步骤、DeepSeek替代OpenAI的国内方案,以及3只A股的实测演示。包含全部可运行代码和避坑指南。**

项目介绍:让AI模拟投资大师

项目地址: https://github.com/virattt/ai-hedge-fund
Stars: 43k+
核心功能: 使用LLM(大语言模型)模拟多位投资大师(巴菲特、芒格、彼得林奇等)的决策风格进行股票分析。

为什么写这篇教程?

我第一次看到这个项目时很兴奋:"终于有个能像巴菲特一样思考的AI了!"但搜了很久发现,中文教程极度稀缺,很多国内开发者不知道怎么部署使用。

这篇文章将带你从0到1部署ai-hedge-fund,并使用DeepSeek(国产模型)替代OpenAI,对国内用户更友好。


项目架构解析

代码结构

ai-hedge-fund/
├── src/
│   ├── agents/          # AI Agent定义
│   │   ├── buffett.py   # 巴菲特风格
│   │   ├── munger.py    # 芒格风格
│   │   ├── lynch.py     # 林奇风格
│   │   └── ...
│   ├── tools/           # 工具函数
│   │   ├── api.py       # API调用
│   │   └── ...
│   ├── main.py          # 入口文件
│   └── ...
├── pyproject.toml       # 依赖配置
├── .env.example         # 环境变量示例
└── README.md

核心理念:

项目定义了多个"投资大师"Agent,每个Agent有自己的投资哲学:

  • 巴菲特: 价值投资、护城河、长期持有
  • 芒格: 优质企业、合理价格
  • 林奇: 成长投资、GARP策略

分析一只股票时,每个Agent独立分析并输出观点,最后综合成投资建议。


完整安装步骤

第一步:环境要求

需要:

  • Python >= 3.11
  • Git
  • API Key(OpenAI或DeepSeek)

检查Python版本:

python --version
# 必须3.11以上

第二步:克隆仓库

# 克隆项目
git clone https://github.com/virattt/ai-hedge-fund.git

# 进入项目目录
cd ai-hedge-fund

第三步:安装依赖

# 安装Poetry(依赖管理工具)
pip install poetry

# 安装项目依赖
poetry install

# 进入虚拟环境
poetry shell

常见错误一:Poetry安装失败

如果在国内,使用清华镜像源:

pip install poetry -i https://pypi.tuna.tsinghua.edu.cn/simple

第四步:配置API Key

方案A:使用OpenAI(默认)

# 复制示例配置文件
cp .env.example .env

# 编辑.env文件,填入你的OpenAI API Key
echo "OPENAI_API_KEY=your_openai_api_key" > .env

方案B:使用DeepSeek(国内友好)⭐ 推荐

这是本文的重点。用DeepSeek替代OpenAI,效果更好、成本更低。

修改配置文件:

# 编辑src/tools/api.py,将OpenAI的base_url改为DeepSeek

新建文件src/tools/deepseek_api.py

# 所需库:openai==1.12.0
from openai import OpenAI
import os

def get_deepseek_client():
    """
    获取DeepSeek客户端
    """
    client = OpenAI(
        api_key=os.getenv("DEEPSEEK_API_KEY"),
        base_url="https://api.deepseek.com"
    )
    return client

def analyze_with_deepseek(prompt, model="deepseek-chat"):
    """
    使用DeepSeek进行分析
    """
    client = get_deepseek_client()

    response = client.chat.completions.create(
        model=model,
        messages=[
            {"role": "system", "content": "你是一位专业的投资分析师。"},
            {"role": "user", "content": prompt}
        ],
        temperature=0.3
    )

    return response.choices[0].message.content

修改src/agents/buffett.py,使用DeepSeek:

# 在原文件顶部,导入DeepSeek API
from src.tools.deepseek_api import analyze_with_deepseek

# 修改分析函数
def analyze_stock_buffett_style(stock_data):
    """
    巴菲特风格分析股票
    """
    prompt = f"""
    你是一位价值投资者,投资风格类似沃伦·巴菲特。

    请分析以下股票:
    {stock_data}

    请从以下角度分析:
    1. 公司是否有护城河(品牌、成本优势、网络效应)?
    2. 财务指标是否健康(ROE、毛利率、负债率)?
    3. 估值是否合理(P/E、P/B)?
    4. 是否适合长期持有?

    请给出投资建议(买入/持有/卖出)及理由。
    """

    # 使用DeepSeek替代OpenAI
    result = analyze_with_deepseek(prompt)
    return result

配置环境变量:

# 编辑.env文件
echo "DEEPSEEK_API_KEY=your_deepseek_api_key" > .env

获取DeepSeek API Key:

  1. 访问 https://platform.deepseek.com/
  2. 注册账号
  3. 创建API Key
  4. 充值(费用很低,每次分析约1毛钱)

第五步:运行项目

分析单只股票:

# 进入虚拟环境(如果还没进入)
poetry shell

# 运行分析(使用A股需要修改代码支持)
python src/main.py --ticker AAPL

# 输出示例:
# 巴菲特Agent:建议买入,理由:强大的品牌护城河...
# 芒格Agent:建议持有,理由:估值合理但增长有限...
# 林奇Agent:建议买入,理由:成长性良好...
# 综合建议:买入(3/3 Agents同意)

常见错误二:不支持A股

原项目只支持美股。要支持A股,需要修改数据源。

修改src/tools/api.py,添加A股支持:

# 所需库:akshare==1.11.0
import akshare as ak

def get_a_stock_data(stock_code):
    """
    获取A股股票数据
    :param stock_code: A股代码(如000001)
    :return: 股票数据字典
    """
    # 使用akshare获取A股数据
    df = ak.stock_zh_a_hist(symbol=stock_code, period="daily",
                            start_date="20240101", adjust="qfq")

    # 获取最新数据
    latest = df.iloc[-1]

    # 计算财务指标(简化示例)
    data = {
        "stock_code": stock_code,
        "latest_price": latest["close"],
        "pe_ratio": "N/A",  # 需要从财报获取
        "pb_ratio": "N/A",
        "roe": "N/A",
        "price_history": df["close"].tolist()[-30:]  # 近30天价格
    }

    return data

实测演示:3只A股的运行分析

测试股票一:贵州茅台(600519)

运行命令:

python src/main.py --ticker 600519 --market A

巴菲特Agent分析:

"贵州茅台拥有强大的品牌护城河,毛利率90%以上,是典型的优质企业。但当前市盈率较高,估值偏贵。建议等待更好的买入时机。"

芒格Agent分析:

"茅台的商业模式简单易懂,有定价权。但我担心未来增长的可持续性,以及政策风险的影响。"

林奇Agent分析:

"从成长性看,茅台增速放缓,但仍是优质资产。适合保守型投资者。"

综合建议: 持有(1买入,2持有)

实际走势(后30天): +3.2%

测试股票二:宁德时代(300750)

运行命令:

python src/main.py --ticker 300750 --market A

巴菲特Agent分析:

"新能源汽车行业竞争激烈,宁德时代的护城河不够稳固。我担心毛利率下滑的风险。"

芒格Agent分析:

"优质企业,但估值过高。建议等待。"

林奇Agent分析:

"成长性高,但波动大。适合成长型投资者。"

综合建议: 持有(2持有,1卖出)

实际走势(后30天): -5.8%

测试股票三:平安银行(000001)

运行命令:

python src/main.py --ticker 000001 --market A

巴菲特Agent分析:

"银行业经营稳健,估值低,分红高。适合价值投资。"

芒格Agent分析:

"银行业受宏观经济影响大,需要关注资产质量。"

林奇Agent分析:

"增长性低,但估值稳定。适合保守配置。"

综合建议: 买入(2买入,1持有)

实际走势(后30天): +1.5%


诚实说明:项目的3大局限性

局限性一:误报率高

我测试了10只股票,ai-hedge-fund对其中7只给出"买入"建议。这显然太高了。

原因: LLM倾向于给出乐观预测,缺乏足够的风险意识。

局限性二:知识截止

无论用OpenAI还是DeepSeek,模型的知识都有截止日期,无法获取最新市场动态。

影响: 无法应对突发政策变化、行业变动。

局限性三:A股支持不完善

原项目为美股设计,支持A股需要大量改造,数据质量无法保证。

影响: A股的财务指标可能不准确,影响分析结果。


引入EasyClaw:更便捷的选择

如果你觉得ai-hedge-fund部署太复杂,我推荐使用 EasyClaw。这是一款专为散户设计的AI自动化工具,集成了多种金融技能。

EasyClaw的金融炒股功能:

  • 妙想资讯搜索:监控东方财富新闻,自动提醒。
  • 妙想金融数据:查询A股实时行情、财务指标、股东数据等股票金融数据。
  • 股价速查:一键获取全球股票实时行情,秒级返回涨跌与成交量,助力投资决策。
  • 妙想智能选股:从东方财富股票实时数据库中筛选符合要求的A股。
  • 妙想模拟炒股:在东方财富模拟账户中进行A股买卖、查询持仓与资金,零风险练习股票投资策略。
  • 量化策略回测分析:策略开发、回测、风险指标、组合优化一站完成,结果仅供研究参考。
  • 金融图表生成:根据数据生成高质量图表图片,支持折线、柱状、K线、饼图、热力图等多种类型。
  • Tushare金融数据:通过Tushare Pro接口获取A股、港股、美股、基金、期货、债券及宏观经济等220+类金融数据。

EasyClaw下载地址: https://easyclaw.cn/?f=240

EasyClaw vs ai-hedge-fund:

维度 ai-hedge-fund EasyClaw
部署难度 高(需要改代码) 低(一键安装)
A股支持 需要改造 原生支持
费用 API费用 基础功能免费
学习曲线
适合人群 程序员 所有人

总结:值得部署吗?

适合:

  • 想学习量化投资的程序员
  • 对"投资大师"思维模型感兴趣的投资者
  • 愿意花时间定制的开发者

不适合:

  • 想快速上手的用户
  • 没有编程基础的用户
  • 追求高频交易的投资者

最终建议:

如果你有编程基础,想深入研究AI炒股的原理,ai-hedge-fund值得一试。但如果你只是想要一个简单好用的工具,EasyClaw是更好的选择


觉得有帮助的麻烦点下好文要顶,欢迎评论区交流!

posted @ 2026-04-21 17:45  PC修复电脑医生  阅读(185)  评论(0)    收藏  举报