


























今天在 GitHub Trending 上看到一个有意思的项目:daily_stock_analysis,这是一个基于 AI 大模型的 A股/港股/美股/日股/韩股自选股智能分析系统,能够每日自动分析并推送「决策仪表盘」到企业微信/飞书/Telegram/Discord/Slack/邮箱,对量化爱好者和 AI 应用开发者都有很高的参考价值。
daily_stock_analysis 是由 ZhuLinsen 开发的开源项目,核心目标是利用 AI 大模型对自选股进行每日智能分析,并自动推送结构化的决策仪表盘报告。项目支持 A股、港股、美股、ETF 的多市场数据聚合,覆盖行情、K线、技术指标、资金流、筹码、新闻、公告和基本面等全方位数据。
核心特性:
项目在 GitHub 上获得了较高的关注度,曾登上周趋势榜 Python 类目第 1 名,并被 HelloGitHub 推荐。
项目采用模块化设计,核心模块包括:
src/core/pipeline.py:股票分析流水线调度器src/core.market_review.py:大盘复盘模块src/services/:各类数据服务(行情、新闻、搜索等)api/:FastAPI 后端服务bot/:多平台通知 Bot(企业微信、飞书、Telegram 等)| 类型 | 技术选型 | 选型理由 |
|---|---|---|
| AI 模型 | LiteLLM(统一 LLM 客户端) | 支持 Gemini/Claude/OpenAI/DeepSeek 等主流模型,一键切换 |
| 行情数据 | efinance、AkShare、Tushare、YFinance 等多数据源 | 多优先级降级,保证数据可用性 |
| Web 框架 | FastAPI | 异步高性能,自带 API 文档 |
| 数据处理 | Pandas、NumPy | 金融数据分析标准库 |
| 定时任务 | schedule + GitHub Actions | 零成本云部署 |
从 main.py 的 run_full_analysis 函数可以看出,分析流程如下:
1. 刷新股票索引缓存
2. 读取自选股列表(支持热加载)
3. 交易日过滤(非交易日自动跳过)
4. 并发执行个股分析(线程池)
5. 大盘复盘(可选)
6. 生成决策仪表盘报告
7. 推送通知(支持合并推送)
8. 自动回测(可选)
核心代码片段(main.py):
pipeline = StockAnalysisPipeline(
config=config,
max_workers=args.workers,
query_id=query_id,
query_source="cli",
save_context_snapshot=save_context_snapshot,
)
results = pipeline.run(
stock_codes=stock_codes,
dry_run=args.dry_run,
send_notification=not args.no_notify,
merge_notification=merge_notification,
)
项目引入了「每日市场上下文」概念(src/services/daily_market_context.py),避免每次分析都重复生成大盘复盘报告,通过缓存和增量更新显著提升效率。
5 分钟完成部署,零成本,无需服务器:
Fork 本仓库
配置 Secrets(Settings → Secrets and variables → Actions)
ANSPIRE_API_KEYS(推荐)AIHUBMIX_KEY(推荐)GEMINI_API_KEYOPENAI_API_KEYWECHAT_WEBHOOK_URL(企业微信)FEISHU_WEBHOOK_URL(飞书)TELEGRAM_BOT_TOKEN + TELEGRAM_CHAT_IDSTOCK_LIST:如 600519,hk00700,AAPL启用 Actions:Actions 标签 → 启用工作流
手动测试:Actions → 每日股票分析 → Run workflow
# 克隆项目
git clone https://github.com/ZhuLinsen/daily_stock_analysis.git
cd daily_stock_analysis
# 安装依赖
pip install -r requirements.txt
# 配置环境变量
cp .env.example .env && vim .env
# 运行分析
python main.py
常用命令:
python main.py --debug # 调试模式
python main.py --dry-run # 仅获取数据不分析
python main.py --stocks 600519,000001 # 指定股票
python main.py --webui # 启动 Web 界面
python main.py --schedule # 定时任务模式
配置完成后,每个交易日 18:00(北京时间)会自动推送报告,格式如下:
🎯 2026-02-08 决策仪表盘
共分析3只股票 | 🟢买入:0 🟡观望:2 🔴卖出:1
📊 分析结果摘要
⚪ 中钨高新(000657): 观望 | 评分 65 | 看多
⚪ 永鼎股份(600105): 观望 | 评分 48 | 震荡
🟡 新莱应材(300260): 卖出 | 评分 35 | 看空
📰 重要信息速览
💭 舆情情绪: 市场关注其AI属性与业绩高增长,情绪偏积极
📊 业绩预期: 2025年前三季度扣非净利润同比暴涨407.52%
在 Web 界面 /chat 页面,可以使用内置策略进行多轮问股:
启动方式:
python main.py --webui
# 访问 http://127.0.0.1:8000/chat
通过修改 .env 文件,可以灵活配置分析参数:
# 开启单股推送(每分析完一只立即推送)
SINGLE_STOCK_NOTIFY=true
# 开启合并推送(个股+大盘复盘合并)
MERGE_EMAIL_NOTIFICATION=true
# 设置分析延迟(避免 API 限流)
ANALYSIS_DELAY=5
# 开启自动回测
BACKTEST_ENABLED=true
问题:pip install -r requirements.txt 失败
解决方案:
pip install --upgrade pippip install tenacity sqlalchemy 等逐个安装问题:AI 分析失败,报错 AuthenticationError
解决方案:
.env 中的 API Key 是否正确LITELLM_MODEL=gemini/gemini-pro问题:行情数据为空或报错
解决方案:
.env 中的 DATA_SOURCE_PRIORITY)--debug 模式查看详细错误问题:企业微信/飞书推送失败
解决方案:
--check-notify 参数检查通知配置问题:分析多只股票耗时过长
解决方案:
python main.py --workers 8--dry-run 模式仅获取数据,后续再分析daily_stock_analysis 是一个功能非常完整的 AI 股票分析开源项目,其技术亮点在于:
项目适合以下人群:
相关项目推荐:
⚠️ 免责声明:本项目仅供学习和研究使用,不构成任何投资建议。股市有风险,投资需谨慎。
项目地址:https://github.com/ZhuLinsen/daily_stock_analysis
Star 趋势:项目在 GitHub 上持续保持活跃更新,建议 Star 关注后续进展。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。