🤖 基于 AI 大模型的 A股超短线智能分析系统,集持仓管理、R1 深度分析、盘中涨停预警、尾盘选股于一体
Web 界面 · 持仓管理 · R1 深度分析 · Agent 问股 · 涨停预警 · 尾盘选股 · 邮件推送
| 模块 | 功能 | 说明 |
|---|---|---|
| 持仓管理 | 全栈持仓系统 | 建仓/编辑/平仓、实时行情(盘中10s刷新)、盈亏计算、目标价/止损预警 |
| R1 深度分析 | DeepSeek R1 推理 | 9维数据采集(行情/K线/均线/量能/形态/基本面/新闻/情报)→ R1 深度推理,内联展示+结果持久化 |
| 股票搜索 | 智能搜索 | 支持中文名称、拼音首字母、股票代码搜索(腾讯 Smartbox API) |
| Agent 问股 | 策略对话 | 多轮策略问答,11种内置策略,SSE 流式进度反馈 |
| 涨停预警 | 盘中实时监控 | Web 一键扫描 + SSE 实时进度,批量 AI 评估,涨停概率 ≥65% 推送,一键加入持仓 |
| 尾盘选股 | 超短线选股 | Web 一键扫描 + SSE 实时进度,批量 AI 筛选,含手续费测算、保本价、万元仓净收益,一键加入持仓 |
| 每日分析 | 决策仪表盘 | 全自选股深度分析 + 大盘复盘,多渠道推送 |
| 图片识别 | 从图片添加 | 上传自选股截图,Vision LLM 自动提取股票代码 |
| 类型 | 技术 |
|---|---|
| 后端 | Python 3.10+ / FastAPI / SQLAlchemy / LiteLLM |
| 前端 | React 19 / TypeScript / Vite / Tailwind CSS / Zustand |
| AI 模型 | DeepSeek R1(深度分析)、DeepSeek Chat / Gemini(日常分析) |
| 行情数据 | 腾讯财经(实时行情+搜索)、AkShare、EFinance |
| 新闻搜索 | Tavily、SerpAPI、Bocha、Brave |
| 自动化 | GitHub Actions(涨停预警/尾盘选股/每日分析) |
| 通知 | 邮件、企业微信、飞书、Telegram、钉钉、PushPlus |
- Python 3.10+
- Node.js 18+(前端构建)
- Git
git clone https://github.com/carey314/daily_stock_analysis.git
cd daily_stock_analysispython -m venv .venv
source .venv/bin/activate # macOS/Linux
# .venv\Scripts\activate # Windows
pip install -r requirements.txtcp .env.example .env编辑 .env 文件,配置以下关键项:
# ===== 必填 =====
STOCK_LIST=600519,002335,300750 # 自选股代码(逗号分隔)
DEEPSEEK_API_KEY=sk-xxx # DeepSeek API Key(深度分析+尾盘选股)
# ===== AI 模型(至少配一个)=====
GEMINI_API_KEY=xxx # Google Gemini(免费,需科学上网)
# OPENAI_API_KEY=xxx # OpenAI 兼容 API
# OPENAI_BASE_URL=https://api.deepseek.com/v1
# ===== 通知渠道(至少配一个)=====
EMAIL_SENDER=xxx@qq.com # QQ邮箱
EMAIL_PASSWORD=xxx # 邮箱授权码(非登录密码)
EMAIL_RECEIVERS=xxx@qq.com # 收件人(留空则发给自己)
# ===== 可选功能 =====
AGENT_MODE=true # 开启 Agent 问股
TAIL_SCAN_ENABLED=true # 开启尾盘选股
LIMITUP_SCAN_ENABLED=true # 开启涨停预警完整配置项参考
.env.example文件
cd apps/dsa-web
npm install
npm run build
cd ../..# 启动 Web 界面(推荐)
python main.py --webui-only
# 或 启动 Web 界面 + 定时分析任务
python main.py --webui访问 http://127.0.0.1:8000 即可使用。
# 终端 1:启动后端
source .venv/bin/activate
python -m uvicorn server:app --host 127.0.0.1 --port 8000 --reload
# 终端 2:启动前端(热更新)
cd apps/dsa-web
npm run dev前端开发服务器运行在 **http://127.0.0.1:5173**,自动代理 API 请求到后端。
输入股票代码或中文名称,一键生成深度分析报告。
- 智能搜索:支持代码(
600519)、中文名(贵州茅台)、拼音(gzmt) - 分析报告:评分、操作建议、买卖点位、趋势预测、新闻资讯
- 历史记录:左侧展示分析历史,点击可回看
- 追问 AI:基于报告上下文多轮对话
完整的持仓生命周期管理。
- 建仓:输入代码/数量/买入价,自动拉取股票名称
- 实时行情:盘中每 10 秒自动刷新,显示实时价格和浮动盈亏
- A 股配色:红涨绿跌(符合 A 股习惯)
- 目标价/止损预警:触及目标价或止损价时顶部横幅提醒
- R1 深度分析:点击"分析"按钮,DeepSeek R1 进行 9 维数据采集 + 深度推理
- 分析结果持久化:分析结果保存到数据库,刷新页面仍可查看
- AI 持仓助手:基于当前持仓数据的 AI 对话
点击"分析" → 数据采集(9步 SSE 实时进度)→ R1 深度推理 → 结果展示
│
├── 实时行情(腾讯财经)
├── 历史K线(60日)
├── 基本面信息
├── 技术趋势(MACD/RSI/信号评分)
├── 均线系统(MA5/10/20/60 偏离度)
├── 量能分析(量比/量价关系)
├── K线形态识别
├── 新闻搜索
└── 综合情报
分析结果内联展示在持仓表格下方,包含:
- 操作建议标签(持有/补仓/减仓/清仓)
- Markdown 格式的分析结论
- 可折叠的 R1 推理链
Web 端可直接触发扫描,三阶段 SSE 实时进度反馈,支持一键加入持仓。
核心特性:
- Web 一键扫描:点击「立即扫描」触发,实时显示粗筛→精筛→AI评估三阶段进度
- 批量 AI 评估:每 5 只股票一次 LLM 调用(相比逐只评估节省 ~60% Token)
- 当日缓存:尾盘选股每天一次,涨停预警 25 分钟内复用,支持强制重扫
- 市场状态指示:实时显示交易日/交易时段/下次建议扫描时间
- 一键加入持仓:扫描结果卡片可直接加入持仓(自动带入买入价/目标价/止损价)
- 历史记录:折叠展示历史扫描结果
盘中每 30 分钟自动扫描全市场,识别快要涨停的股票。
扫描时间:09:45、10:15、10:45、11:15、13:00、13:30、14:00、14:20
筛选规则:
- 涨幅 6% ~ 9.5%(已涨停排除)
- 股价 ≤ 100 元
- 量比 ≥ 1.5,成交额 ≥ 3000 万
- AI 涨停概率 ≥ 65% 才推送
每日 14:40 自动扫描,三阶段筛选推荐次日超短线候选。
策略:尾盘买入 → 次日早盘冲高出货(T+1)
AI 约束:
- 目标价 ≥ 买入价 × 1.03(+3%,覆盖手续费)
- 止损 ≤ 买入价 × 0.985(-1.5%)
在 GitHub 仓库的 Settings → Secrets 中配置环境变量后,自动按以下时间表运行:
| 时间(北京) | Workflow | 说明 |
|---|---|---|
| 09:45~14:20(每30分钟) | limitup_scan.yml |
涨停预警(共8次) |
| 14:40 | daily_analysis.yml (tail-scan) |
尾盘选股 |
| 18:00(周一~周五) | daily_analysis.yml (full) |
全自选股深度分析 + 大盘复盘 |
非交易日自动跳过。
| Secret | 说明 | 必填 |
|---|---|---|
DEEPSEEK_API_KEY |
DeepSeek API Key | ✅ |
GEMINI_API_KEY |
Google Gemini API Key | 推荐 |
EMAIL_SENDER |
发件人邮箱 | ✅ |
EMAIL_PASSWORD |
邮箱授权码 | ✅ |
EMAIL_RECEIVERS |
收件人邮箱 | 可选 |
STOCK_LIST |
自选股代码(Variable 而非 Secret 亦可) | ✅ |
完整 Secrets 列表参考
.env.example
daily_stock_analysis/
├── api/ # FastAPI 路由层
│ └── v1/
│ ├── endpoints/
│ │ ├── agent.py # Agent 问股 + R1 深度分析 SSE
│ │ ├── stocks.py # 股票搜索/行情/历史
│ │ ├── portfolio.py # 持仓管理 CRUD
│ │ ├── signals.py # 扫描信号(SSE扫描触发+市场状态+历史)
│ │ ├── analysis.py # 分析任务提交
│ │ └── history.py # 分析历史查询
│ └── schemas/ # Pydantic 模型
├── apps/dsa-web/ # React 前端
│ └── src/
│ ├── pages/
│ │ ├── HomePage.tsx # 首页(搜索+分析+历史)
│ │ ├── PortfolioPage.tsx # 持仓管理页
│ │ └── SignalsPage.tsx # 扫描信号页(SSE进度+一键扫描+加入持仓)
│ ├── components/portfolio/ # 持仓组件
│ │ ├── PositionTable.tsx # 持仓表格
│ │ ├── AnalysisPanel.tsx # R1 分析面板 + useDeepAnalysis hook
│ │ └── ...
│ └── stores/ # Zustand 状态管理
├── src/
│ ├── services/
│ │ ├── deep_analysis_service.py # R1 深度分析(数据采集+推理)
│ │ ├── portfolio_service.py # 持仓业务逻辑
│ │ └── stock_service.py # 行情服务
│ ├── scanner/
│ │ ├── limitup_scanner.py # 涨停预警扫描器
│ │ └── tail_scanner.py # 尾盘选股扫描器
│ ├── agent/ # Agent 框架(ReAct 循环)
│ │ ├── executor.py # Agent 执行器
│ │ └── tools/ # 工具函数
│ └── storage.py # SQLAlchemy ORM + 数据库操作
├── server.py # FastAPI 入口
├── main.py # CLI 入口
├── .env.example # 环境变量模板
└── requirements.txt # Python 依赖
# 仅启动 Web 服务
python main.py --webui-only
# Web 服务 + 定时分析
python main.py --webui
# 手动执行一次全量分析
python main.py
# 手动执行尾盘选股
python main.py --tail-scan
# 手动执行涨停预警
python main.py --limitup-scan
# 仅启动 API 服务(不含前端)
python -m uvicorn server:app --host 127.0.0.1 --port 8000 --reload本项目仅供学习和研究使用,不构成任何投资建议。股市有风险,投资需谨慎。作者不对使用本项目产生的任何损失负责。
基于 ZhuLinsen/daily_stock_analysis 二次开发。