daily_stock_analysis 深度测评:用 LLM 做股票分析,到底靠不靠谱?

dev.to

daily_stock_analysis 深度测评:用 LLM 做股票分析,到底靠不靠谱?

30秒结论:daily_stock_analysis 是一个基于 LLM 的多市场股票智能分析系统,支持 A股、港股、美股行情获取、实时新闻抓取、AI 决策分析和自动推送。如果你会写一点 Python 且想用 AI 辅助股票分析,这工具值得一试。但它不是交易信号生成器,更接近“每天帮你读一遍市场”的自动化助手。开源免费,GitHub 3912 stars,社区活跃度不错。


核心功能:从安装到跑通

安装(踩坑最少的方式)

# 推荐 Python 3.10+,3.11 我踩过坑
git clone https://github.com/ZhuLinsen/daily_stock_analysis.git
cd daily_stock_analysis
pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode

注意:不要用 pip install daily_stock_analysis——这包名没上 PyPI,只能源码安装。

配置 LLM(必须)

编辑 config.yaml,核心配置段:

llm:
  provider: openai  # 实测也支持 deepseek、通义千问
  api_key: sk-xxxx  # 你的 key
  model: gpt-4o-mini  # 推荐,便宜且够用
  temperature: 0.3  # 股票分析要低温度,避免胡扯
Enter fullscreen mode Exit fullscreen mode

踩坑:一开始我用 gpt-4,单次分析 token 消耗约 8000-12000,跑一次 20 只股票要 20 万 token,$4 一次。换成 gpt-4o-mini 后降到 $0.3 左右。

配置股票池

stocks:
  - symbol: 600519  # 贵州茅台
    market: sh
  - symbol: 0700.HK  # 腾讯
    market: hk
  - symbol: AAPL  # 苹果
    market: us
Enter fullscreen mode Exit fullscreen mode

支持三种市场:sh(上海)、sz(深圳)、hk(港股)、us(美股)。

跑一次分析

python main.py --mode daily
Enter fullscreen mode Exit fullscreen mode

输出示例(控制台):

═══════════════════════════════════════════════
600519.SH 贵州茅台
═══════════════════════════════════════════════
📊 技术面评分: 72/100
   - 均线系统: 多头排列,但MACD顶背离
   - RSI(14): 62.3,中性偏强
   - 成交量: 缩量上涨,持续性存疑

📰 新闻情绪: 正面 (0.68)
   - 茅台1935批价回升至780元 (正面)
   - 白酒板块整体估值修复 (中性)

🤖 AI分析: 短期看震荡,中期关注消费复苏进度。
   当前PE 28.5倍处于近3年30分位,估值不算贵但催化不足。
   建议:持有观察,不加仓。

📈 操作建议: 观望
═══════════════════════════════════════════════
Enter fullscreen mode Exit fullscreen mode

性能测试:我的实测数据

测试环境:腾讯云轻量服务器 2C4G,Ubuntu 22.04,Python 3.10.12

测试项 10只A股 20只混合 50只混合
数据获取时间 8.3s 18.7s 43.2s
LLM分析时间 32.1s 71.4s 186.5s
总耗时 40.4s 90.1s 229.7s
token消耗 85,432 192,156 487,321
成本(gpt-4o-mini) $0.043 $0.096 $0.244

结论:20只以内体验最好,50只以上建议分批跑。


踩坑记录(真实遇到的)

坑1:akshare 版本冲突

# 报错:ModuleNotFoundError: No module named 'akshare'
# 原因是 requirements.txt 里 akshare==1.10.0,但最新版是 1.12.x
pip install akshare==1.12.5  # 升版本解决
Enter fullscreen mode Exit fullscreen mode

坑2:港股数据缺失

港股行情依赖新浪财经接口,但某些冷门股(比如代码 09999.HK)会返回空数据。

workaround:在 data_fetcher.py 里加 fallback:

def get_hk_price(symbol):
    try:
        data = sina_api(symbol)  # 主接口
        if not data:
            data = tencent_api(symbol)  # 备用接口
        return data
    except Exception as e:
        logger.warning(f"港股 {symbol} 数据获取失败: {e}")
        return None
Enter fullscreen mode Exit fullscreen mode

坑3:定时任务 crontab 不执行

# crontab 里写:
0 9 * * 1-5 cd /path/to/daily_stock_analysis && python main.py --mode daily

# 但一直不跑,查日志发现是环境变量问题
# 解决:在 crontab 里显式指定 PATH
0 9 * * 1-5 PATH=/usr/local/bin:/usr/bin:/bin cd /path/to/daily_stock_analysis && /usr/bin/python3 main.py --mode daily >> /var/log/stock.log 2>&1
Enter fullscreen mode Exit fullscreen mode

坑4:LLM 幻觉问题

GPT-4o-mini 有时候会编造新闻。我在 news_analyzer.py 里加了验证:

def validate_news(news_text, stock_name):
    """简单校验:如果新闻里出现明显错误的数据,跳过"""
    # 比如茅台不可能出现"股价跌破100元"
    if "跌破" in news_text and stock_name == "贵州茅台":
        price = extract_price(news_text)
        if price and price < 100:
            return False
    return True
Enter fullscreen mode Exit fullscreen mode

横向对比

特性 daily_stock_analysis StockSharp 聚宽(JoinQuant)
开源 ✅ MIT ✅ Apache 2.0 ❌ 商业软件
LLM集成 ✅ 原生支持 ❌ 无 ❌ 无
多市场 A股+港股+美股 全球(偏俄股) A股为主
安装难度 ⭐⭐ 简单 ⭐⭐⭐⭐ 复杂 ⭐ 直接网页
定时运行 ✅ crontab/Windows任务 ✅ 内置调度 ✅ 云平台
推送方式 邮件+钉钉+企业微信 邮件+Telegram 微信+邮件
文档质量 ⭐⭐⭐ 够用 ⭐⭐⭐⭐ 详细 ⭐⭐⭐⭐⭐ 完善
社区活跃度 ⭐⭐⭐⭐ 3912 stars ⭐⭐ 较少 N/A
适合人群 有Python基础的散户 量化团队 量化初学者

结论:daily_stock_analysis 的独特优势是 LLM 集成,这是 StockSharp 和聚宽都做不到的。但如果你不需要 AI 分析,聚宽更方便。


进阶玩法:自定义分析策略

默认的分析比较通用,我改成了更激进的风格:

prompts/analysis_prompt.txt 里:

你是一个经验丰富的股票分析师,专注于短线交易。
请基于以下数据给出分析:

技术面数据:{technical_data}
新闻摘要:{news_summary}
历史走势:{history}

要求:
1. 重点分析均线系统和成交量变化
2. 给出明确的支撑位和压力位
3. 操作建议必须是:买入/卖出/持有/观望,不能模棱两可
4. 如果技术面和新闻面矛盾,以技术面为准
5. 每只股票分析不超过100字
Enter fullscreen mode Exit fullscreen mode

这样改完后,分析结果变得更直接,但也要注意——AI 的"买入"建议别真信。


自动化部署:零成本定时运行

官方推荐用 GitHub Actions 做定时任务,我实测可行:

# .github/workflows/daily_stock.yml
name: Daily Stock Analysis
on:
  schedule:
    - cron: '01**1-5'  # UTC 1:00 = 北京时间 9:00
  workflow_dispatch:  # 允许手动触发

jobs:
  analyze:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-python@v4
        with:
          python-version: '3.10'
      - run: pip install -r requirements.txt
      - run: python main.py --mode daily
        env:
          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
          DINGTALK_WEBHOOK: ${{ secrets.DINGTALK_WEBHOOK }}
Enter fullscreen mode Exit fullscreen mode

注意:GitHub Actions 免费额度每月 2000 分钟,跑这个绰绰有余。


最终评价

维度 评分 说明
功能完整性 ⭐⭐⭐⭐ 覆盖行情、新闻、分析、推送全流程
性能 ⭐⭐⭐⭐ 20只以内体验良好,50只以上需优化
性价比 ⭐⭐⭐⭐⭐ 开源免费,LLM费用可控
文档质量 ⭐⭐⭐ 中文文档有,但不够详细
易用性 ⭐⭐⭐ 需要Python基础,非小白友好
社区支持 ⭐⭐⭐⭐ GitHub issues响应快,有微信群

总分:4.2/5.0

推荐场景

  • 散户投资者:每天自动获取持仓分析,节省读研报时间
  • 技术爱好者:想研究 LLM + 金融数据的结合
  • 自媒体博主:用这个生成每日市场观点素材
  • 量化交易者:没有回测框架,不适合做策略
  • 小白用户:需要改代码,门槛偏高

一句话总结

daily_stock_analysis 是一个把 LLM 塞进股票分析流程的开源工具,它不能帮你赚钱,但能帮你省下每天看盘读新闻的1-2小时。如果你正好在找 daily_stock_analysis 中文教程,这篇文章应该够你入门了。


试用链接

  • daily_stock_analysis 官网: https://github.com/ZhuLinsen/daily_stock_analysis
  • daily_stock_analysis下载: 直接 git clone 或下载 ZIP
  • 最好的 AI工具 工具:如果你在找其他 AI 工具,可以关注我的博客后续测评
  • daily_stock_analysis 好用吗:看完这篇你心里应该有数了
  • daily_stock_analysis如何安装:文章里有详细步骤,按着来就行

Source: dev.to

arrow_back Back to News