type
Post
status
Published
date
May 25, 2026
slug
daily-stock-analysis-agent-guide
summary
这篇文章系统梳理 Daily Stock Analysis 的核心功能、部署方式、普通分析与 Agent 模式的实现差异,并用一只股票示例说明不同模式下报告会长什么样。
tags
Python
agent
工具
category
Agent
icon
📈
password
🧩
TL;DR:Daily Stock Analysis 是一个面向 A 股、港股、美股的智能分析系统。它把行情、日线、技术指标、筹码、资金流、新闻情报、板块背景和大模型判断串成一条自动化链路,最后生成可推送、可回看、可在 Web 中追问的决策报告。

🧩 Daily Stock Analysis:从数据抓取到 Agent 决策的完整使用指南

🔍 一、这个项目解决什么问题

Daily Stock Analysis,简称 DSA,本质上是一个“自选股自动研究员”。它不是单纯行情提醒,也不是只调用大模型写一段点评,而是把数据抓取、指标计算、新闻搜索、风险排查、LLM 分析、报告生成和通知推送放在同一条流水线上。
它适合三类场景:
  • 每天收盘后自动分析自选股,生成可执行的买卖观察报告。
  • 在 Web 工作台里手动分析某只股票,并查看历史报告、回测、持仓。
  • 用 Agent 问股,围绕趋势、均线、热点、事件、成长、缠论、波浪等策略做多轮追问。
项目覆盖 A 股、港股、美股,但不同市场的数据源完整度不同。A 股能力最完整,包括实时行情、日线、技术指标、筹码分布、板块归属、资金流和新闻情报。
 

⚙️ 二、核心功能全景

模块
能力
用途
行情与日线
实时价、涨跌幅、成交量、历史 K 线
判断当前价格位置、趋势和均线结构
技术分析
MA5、MA10、MA20、乖离率、支撑位、压力位、MACD、RSI、量能
给趋势、买点、风险位提供量化背景
筹码分布
获利比例、平均成本、集中度
判断套牢盘、获利盘和筹码压力
资金流
主力净流入、5 日/10 日流入
判断量价背后是否有资金确认
新闻情报
最新消息、公告、机构观点、风险排查、业绩预期
补充技术面之外的催化和风险
板块背景
所属行业、概念、题材、板块热度
判断个股是否处在板块共振中
AI 报告
核心结论、评分、趋势、买卖点、止损、风险、催化
把数据转成可读、可执行的决策仪表盘
Agent 问股
ReAct 工具调用、15 种策略 Skill、多轮问答、多 Agent 编排
支持针对一只股票持续追问
Web / 桌面
配置管理、手动分析、任务进度、历史报告、回测、持仓
把命令行能力变成可视化工作台
通知推送
企业微信、飞书、Telegram、Discord、Slack、邮箱、自定义 Webhook
每天自动把报告推到使用场景里
 

🚀 三、如何部署和运行

1. 本地命令行运行

最小方式是复制环境变量模板,配置股票列表和至少一个大模型 Key:
常用命令:

2. Web 工作台

Web 模式会启动 FastAPI 和前端工作台:
默认访问:
Web 里可以做这些事:
  • 修改系统配置和模型配置。
  • 手动触发个股分析或大盘复盘。
  • 查看任务进度和历史报告。
  • 使用 Agent 策略问股。
  • 管理回测、持仓、告警规则。

3. Docker 部署

Docker 更适合长期运行:
或者启动定时分析容器:
两者都启动:
常见模式:
命令
用途
端口
docker-compose -f ./docker/docker-compose.yml up -d server
Web / API 服务模式
8000
docker-compose -f ./docker/docker-compose.yml up -d analyzer
每日自动分析模式
-
docker-compose -f ./docker/docker-compose.yml up -d
同时启动 Web 和定时任务
8000

4. GitHub Actions 自动运行

适合不想维护服务器的人。把仓库 Fork 后,在 Actions Secrets / Variables 中配置:
  • 大模型 API Key。
  • 股票列表。
  • 通知渠道 Webhook。
  • 可选搜索 API Key 和 Tushare Token。
默认工作流通常在交易日收盘后运行,适合“每天自动推送一份报告”。
 

🧭 四、一次实际分析会发生什么

600487 为例,典型流程如下:
  1. 读取股票列表:从 .env、命令行参数或 Web 请求里拿到 600487
  1. 获取基础行情:先拿日线,再拿实时行情,用实时价补齐盘中/盘后价格状态。
  1. 计算技术指标:计算 MA5、MA10、MA20、均线排列、乖离率、支撑位、压力位、趋势评分、MACD、RSI、量能。
  1. 获取筹码分布:如果当天筹码还没更新,可能自动取上一个交易日。
  1. 获取资金流:优先通过配置的数据源获取个股资金流;如果 AkShare 个股资金流缺失,可以回退到 Tushare moneyflow_dc
  1. 获取所属板块:查询行业、概念、题材,用于判断板块共振和情绪背景。
  1. 搜索新闻情报:围绕“最新消息、机构分析、风险排查、公司公告、业绩预期”等维度构建查询。
  1. 构造 Prompt:把行情、技术指标、筹码、资金流、新闻、板块和系统交易纪律拼成大模型输入。
  1. 生成报告:输出决策仪表盘,包括评分、趋势、买点、止损、风险和操作建议。
  1. 后处理和推送:做字段完整性检查、决策稳定性校准、通知分段或转图片推送。
这个流程的关键是:日线数据负责历史结构,实时行情负责当前状态,新闻和资金流负责确认或否定技术信号。
 

🏗️ 五、普通分析和 Agent 模式有什么区别

普通 python main.py 更像一条固定流水线:
Agent 模式则是工具调用循环:
它是项目自研的 ReAct 风格实现,不依赖 LangChain、AutoGen 或 CrewAI。工具由项目内的 ToolRegistry 注册,包括:
  • get_realtime_quote
  • get_daily_history
  • get_chip_distribution
  • get_analysis_context
  • get_stock_info
  • get_capital_flow
  • analyze_trend
  • calculate_ma
  • get_volume_analysis
  • analyze_pattern
  • search_stock_news
  • search_comprehensive_intel
  • get_market_indices
  • get_sector_rankings
  • get_skill_backtest_summary
  • get_strategy_backtest_summary
  • get_stock_backtest_summary
当前 Agent 不加载 MCP 工具。它使用的是项目自己的 Python function tools。
 

🧠 六、Agent 策略和多 Agent 编排

Agent 的策略写在 strategies/*.yaml,本质是自然语言 Skill,不是硬编码 Python 规则。内置策略包括:
  • 默认多头趋势 bull_trend
  • 缩量回踩 shrink_pullback
  • 放量突破 volume_breakout
  • 均线金叉 ma_golden_cross
  • 底部放量 bottom_volume
  • 箱体震荡 box_oscillation
  • 龙头策略 dragon_head
  • 热点题材 hot_theme
  • 事件驱动 event_driven
  • 成长质量 growth_quality
  • 预期重估 expectation_repricing
  • 情绪周期 emotion_cycle
  • 缠论 chan_theory
  • 波浪理论 wave_theory
  • 一阳夹三阴 one_yang_three_yin
配置方式:
如果留空,默认使用主默认策略,内置默认是 bull_trend
多 Agent 编排是顺序工作流,不是自由协商。典型链路:
其中 Agent 编排层是顺序执行;同一个 Agent 内部一次请求多个工具时,工具层可以并行执行。
 

📄 七、不同模式下报告长什么样

1. REPORT_TYPE=brief

适合推送很短的消息,通常是 3 到 5 句话。
示例:
600487 当前处在震荡偏弱区间,价格未形成有效突破。短线需要观察 MA5 附近承接和成交量变化,若资金流继续为负,应以持有观察或降低仓位为主。上方压力关注前高和 MA20 附近,下方支撑关注最近结构低点。
特点:
  • 极短。
  • 适合手机通知。
  • 不展开完整指标。

2. REPORT_TYPE=simple

适合日常默认推送。它会保留核心结论、评分、趋势、操作建议和风险。
示例结构:
特点:
  • 比 brief 信息更完整。
  • 适合企业微信、飞书、Telegram 推送。
  • 不会像 full 那样展开所有证据链。

3. REPORT_TYPE=full

适合 Docker、Web 历史报告、复盘归档。它会保留完整 Markdown 和较完整的分析过程。
示例结构:
特点:
  • 最适合复盘和归档。
  • 字段完整,便于 Web 展示和历史查询。
  • 推送渠道长度有限时可能会分段或转图片。

4. 大盘复盘模式

命令:
报告关注的是市场整体,而不是单只股票:

5. Agent 单 Agent 模式

配置:
输出更像“带工具调用的策略问答”:

6. Agent 多 Agent 模式

配置:
输出来自多个角色的顺序评审:
如果使用 specialist
会在 decision 前插入最多 3 个策略专家,例如:
它们当前是顺序执行的独立评审,最后由 decision 统一汇总。
 

🔧 八、部署时最容易踩的点

  • 至少要有一个可用大模型 Key:没有模型就只能 dry-run 抓数据,不能生成 AI 报告。
  • 搜索 Key 是增强项:没有搜索 Key 也能跑基础技术面,但新闻情报会弱很多。
  • Tushare Token 是增强项:有助于补齐筹码、资金流等数据;不同接口积分权限不同。
  • Docker 里推荐 REPORT_TYPE=full:避免推送内容看起来不完整,完整报告也更适合 Web 历史。
  • Web 外网访问要设置 host:云服务器部署通常需要 WEB_HOST=0.0.0.0 或命令行 --host 0.0.0.0
  • 通知渠道不是必须:不配置也能生成本地报告;配置后才会推送。
  • Agent 模式更贵更慢:单 Agent 已经会多轮工具调用,多 Agent 会增加 LLM 调用次数。
 

✅ 九、我的使用建议

如果只是每天看自选股:
如果希望报告完整归档:
如果希望在 Web 里追问股票:
如果想要更强的风险检查:
如果想研究某只股票是否符合特定交易模式:
 

🧾 十、总结

Daily Stock Analysis 的价值不在于“让大模型猜涨跌”,而在于把日常复盘中需要反复查的数据和判断框架标准化:行情、趋势、量能、筹码、资金流、新闻、板块和风险都进入同一个报告结构。
普通模式适合稳定自动化;Agent 模式适合交互式追问;多 Agent 模式适合把技术、情报、风控和策略专家拆开,让最终结论更有层次。
实际使用时,建议先从本地或 Docker 的普通分析跑通,再逐步打开 Web、通知、搜索、Tushare、Agent 和多 Agent。这样每一层增强都能明确知道自己解决了什么问题,也更容易定位数据源或模型输出的异常。
Agent Memory 学习笔记:我如何理解智能体长期记忆长周期运行智能体(Long-Horizon Agents)深度研究报告
Loading...