Back to skills
SKILL.md
Daily Review
ASecurityA股每日复盘(专业版)— 基于 QuantDB 本地数据 + 当日新闻情绪 + 模型推理信号 + L1/L2 因子截面 + 板块资金流的盘后复盘:指数、涨跌结构与涨停梯队、量能、行业/概念轮动、资金面、L2 微观结构、当日有新闻股票匹配、模型推理信号复盘(昨日推理命中率 + 明日信号Top5)、次日走势方向研判(六维信号加权 → 明确方向+置信度)。用户说「复盘」「每日复盘」「复盘某天」时使用:跑取数脚本(daily_review + news_review)→ 按模板写复盘报告 → 转 PDF → 落盘股票报告目录 → 聊天回复速览。触发词:复盘、每日复盘、今日复盘、盘后复盘、复盘20260814
- 1,703 stars
- 0 votes
- 0 copies
- 0 views
- Added October 5, 2026
Works with
Security analysis
100/100Pro scans all 14 files and shows the line behind each finding
npx -y skills add qusong0627/QuantMind --skill daily-review --agent claude-codeAre you the author of Daily Review?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/qusong0627-daily-review)---
name: daily-review
description: "A股每日复盘(专业版)— 基于 QuantDB 本地数据 + 当日新闻情绪 + 模型推理信号 + L1/L2 因子截面 + 板块资金流的盘后复盘:指数、涨跌结构与涨停梯队、量能、行业/概念轮动、资金面、L2 微观结构、当日有新闻股票匹配、模型推理信号复盘(昨日推理命中率 + 明日信号Top5)、次日走势方向研判(六维信号加权 → 明确方向+置信度)。用户说「复盘」「每日复盘」「复盘某天」时使用:跑取数脚本(daily_review + news_review)→ 按模板写复盘报告 → 转 PDF → 落盘股票报告目录 → 聊天回复速览。触发词:复盘、每日复盘、今日复盘、盘后复盘、复盘20260814"
---
> ⚙️ 本技能遵循公共运行环境契约(最高优先级,先于本文其余内容执行):
> 详见 [_shared/env-contract.md](../_shared/env-contract.md),执行前先读它。
# daily-review — A股每日复盘(专业版)
盘后固定动作:把 QuantDB 当天数据 + 当日新闻情绪 + L1/L2 因子截面变成一份结构固定的复盘报告(Markdown + PDF),落盘到前端「股票报告」页可见目录,并在聊天里回复速览。**报告末必含「次日走势研判」——给出明确方向(强烈看多/看多/震荡/看空/强烈看空)+ 置信度星级 + 每维依据。**
## ⚠️ 单位铁律(先查 [[quantdb-fields]],最高优先级)
| 陷阱 | 正确口径 |
|---|---|
| 个股 volume=**股**、amount=**万元** | 指数 volume=**手**、amount=万元 |
| 复盘报告里金额一律换算为**亿元**(万元÷1e4) | 脚本输出的 `*_yi` 字段单位已是亿元 |
| `technical_indicators.pct_change` = **%**;未来收益用 `future_return_*`(标签,勿当历史动量);历史动量用 pct_change / mom_ret | 涨跌家数/涨停/连板全用它 |
| `index_daily.preClose` **全 NULL** | 指数涨跌幅用 close 序列自算(脚本已处理) |
| l2_factors 已恢复日更(202608+ 当日有数据,L1 主力资金可用);两融通常滞后 1 日(偶与当日对齐,以 facts 为准);北向只有季度快照 | 必须带「数据滞后声明」,滞后数据集禁止当当日数据写 |
## 执行流程(每次复盘固定 5 步)
### 第 1 步:跑取数脚本(两条:daily_review 取 L1/L2/方向 + 模型推理信号,news_review 取当日新闻情绪)
```bash
# ① 宿主机:daily_review.py 出 指数/广度/板块/资金面 + L1/L2 因子透视 + 板块资金流 + 模型推理信号 + 次日方向
cd <repo>/skills/daily-review/scripts
python3 daily_review.py --date 20260814 # 指定日;不带 --date 则取最新交易日
python3 daily_review.py --watch 601138.SH,600519.SH # 可选:自选/持仓股必带
python3 daily_review.py --model mdl_cn_train_xxx # 可选:指定推理模型,默认每日推理模型(5eea5418)
# ↑ 模型推理信号自动查询 PG:昨日推理→今日信号命中率复盘 + 今日推理→明日信号 Top5;
# 无推理 run 时脚本**自动补跑**(docker exec trigger_inference.py,10-30 秒),
# 补跑失败原因如实写入 facts(常见:特征 parquet 滞后——先跑
# `docker exec quantmind python3 /app/backend/scripts/update_feature_parquet.py` 补特征再复盘)
# 无 PG / PG 挂时该章节降级为缺失(facts 无「十一、模型推理信号」)
# ② 容器内:news_review.py 聚合当日新闻情绪(有新闻股票匹配 + 板块聚焦 + 来源/时段质量)
# .claude 目录未挂载进容器,须先 docker cp 到容器 /tmp 再跑
docker cp <repo>/skills/daily-review/scripts/news_review.py quantmind:/tmp/
docker exec quantmind python3 /tmp/news_review.py --date 20260814
```
**顺序:先跑 ② 再跑 ①** —— daily_review.py 读到 `data/reports/daily_review/{YYYY-MM-DD}_news.json` 后,「新闻情绪」维度才加权、方向置信度提到 **★★★★★**;只跑 ① 时新闻维度中性、置信度降到 ★★★(facts「六、新闻情绪」会提示补跑 news_review)。
输出 `data/reports/daily_review/{YYYY-MM-DD}_stats.json` + `{YYYY-MM-DD}_facts.md`(宿主机 ①);`{YYYY-MM-DD}_news.json`(容器 ②,写同一共享目录)。
脚本兼容宿主机与容器内(数据目录自动探测;容器内 QuantDB 路径 `/data/quantdb`、报告路径 `/data/reports/daily_review`,宿主机 `data/quantdb`、`data/reports/daily_review`)。
### 第 2 步:读 facts.md 写复盘报告(Markdown 模板)
**报告 = facts.md 的事实 + 你的解读。facts.md 没有的数字禁止出现在报告里。**
```markdown
# A股每日复盘 2026-08-14(周五)
> **报告日期**:2026-08-14
> **数据截至**:2026-08-14
## 一、盘面速览(结论先行)
2-4 句:指数表现 → 涨跌结构 → 量能 → 主线板块 → 一句话定性(强势/震荡/弱势 + 依据)→ **一句话次日方向**(引自 facts 十,如「六维合成:强烈看空 -4.6/11,置信 ★★★★★」)
## 二、指数与量能
指数表(facts 一、)+ 两市成交额解读(环比/5 日均对照,放量 or 缩量)
## 三、涨跌结构与情绪
涨停/跌停/炸板数量、最高连板与连板梯队、涨跌分布表(facts 二、四)
情绪读数 + 解读:买压/卖压对比、早盘上涨占比 → 追高意愿强还是弱
## 四、板块与主线
行业一级 Top/Bottom(facts 三)、概念 Top;指出当日主线与杀跌方向;
涨停个股聚集在哪些板块(从涨幅榜的 industry 列归纳)
## 五、资金面
两融(注明截至日与滞后天数)、北向季度快照(注明季度口径);L2 主力净额见七
## 六、新闻情绪(当日有新闻的股票匹配)
当日新闻总数/涉及股票数、利好/利空/中性、净情绪;来源质量(高质量源 vs 反向源);
黄金时段利好占比;新闻聚焦板块(哪些行业消息面热);有新闻个股 Top(篇数/净情绪/事件标签)。
结论:今日消息面是偏多/偏空/中性 + 焦点板块。
## 七、L1/L2 因子透视(facts 七)
L1 换手/动量/波动均值对照前日;L2 微观结构:正向因子强信号股占比(越高=知情资金越扩散)、
VPIN 家族分位、量价背离、超级大单净额及前日对比;板块超级大单净额表(净流入 vs 净流出)。
结论:微观结构是扩散/收敛 + 资金流入/流出方向。
## 八、模型推理信号(对应 facts 十一,模型预测复盘)
两块:
1. **昨日推理 → 今日验证**:昨日模型推理(推理{data}→信号{pred})对今日的 Top10 信号对照今日实际涨跌——
命中率/平均涨幅/相对全市场超额/涨停跌停数。写清信号平均涨幅跑赢还是跑输市场。
2. **明日信号 Top5**:今日推理(基于{data})预测明日最强 5 只(名称/代码/信号分/方向);若今日推理未跑,标注「取最近一次推理」。
结论句点明模型风格:信号股是否集中强势板块、与当日主线是否一致、与次日方向研判是否呼应。
推理信号来自 PG(`engine_signal_scores` fusion_score 降序),数字必须照抄 facts 十一,禁止臆造。
## 九、个股榜
涨幅/跌幅/成交额/换手榜解读(facts 八),挑 3-5 只有代表性的说原因判断(无新闻佐证时只描述数据,不编原因)
## 十、自选/持仓复盘(自带 --watch 时才有)
逐只:涨跌幅、量能、技术位(MA20 上下)、当日状态(涨停/炸板/大涨/异动)
## 十一、昨日复盘回顾(复盘闭环,连续性的核心)
读上一份复盘(同目录 {上一交易日}.md 或 PDF 前的 md)的「要点与明日关注」,
逐条对照今日实际:命中几条 / 未命中几条 / 打脸的原因是什么(禁止含糊带过)
**若上一份复盘有「次日走势研判」,先对照它给出的方向是否兑现**,再对照要点。
## 十二、次日走势研判(六维方向表,直接引用 facts 十)
方向(强烈看多/看多/震荡/看空/强烈看空)+ 得分 + 置信度星级 = 六维(趋势/量能、情绪/结构、L2 微观、新闻情绪、板块/资金流)评分。
逐维解读:哪些维度在看多/看空/中性;多空矛盾点在哪;结合「有新闻股票 + L2 强信号股」交集给 2-4 条可验证的次日明确预期。
**禁止把方向当承诺**——沿 facts 口径:方向只是六维信号的可解释合成,明日以指数/广度/涨停数验证。
## 十三、要点与明日关注
- 要点:今日市场最重要的 3 条事实
- 明日关注:从「次日走势研判」的可验证预期里挑 2-4 条(明天能判断对错的才算,禁止「关注成交量变化」这类废话)
## 数据说明
滞后数据集声明 + 单位说明(从 facts 的数据说明复制)
```
**写作铁律**:每个数字带单位;涨停梯队/连板高度以脚本 stats 的 `market.streaks` 为准;涨跌停判定规则见 REFERENCES/review-methods.md;ST 涨跌幅与新股规则别记错(主板 ST 2026-07-06 起 ±10%)。
### 第 3 步:Markdown → PDF(研报风,复用 stock-market-analysis §7.4 管线)
转换脚本 `backend/scripts/md_to_pdf_report.py`(reportlab,封面/红涨绿跌语义着色/斑马纹表格自动生效)。
**环境分支**(先探测:容器内 `test -d /app/backend` 为真):
```bash
# —— 宿主机(Claude Code)——
docker cp /tmp/复盘.md quantmind:/tmp/review.md
docker exec quantmind bash -lc "cd /app && python3 backend/scripts/md_to_pdf_report.py /tmp/review.md /tmp/review.pdf"
docker cp quantmind:/tmp/review.pdf /tmp/复盘.pdf
# —— 容器内(QuantBot / QwenPaw)——
python3 /app/backend/scripts/md_to_pdf_report.py /tmp/review.md /tmp/review.pdf
```
### 第 4 步:落盘股票报告目录(必做,只发 /tmp = 未交付)
文件名固定:`每日复盘_{YYYY-MM-DD}.md` / `.pdf`,放 `data/reports/stock_reports/每日复盘/`。
```bash
# —— 宿主机:宿主机直接 cp 会 EACCES(目录 owner 是容器 root),必须 docker cp ——
docker cp 复盘.md quantmind:/data/reports/stock_reports/每日复盘/每日复盘_2026-08-14.md
docker cp 复盘.pdf quantmind:/data/reports/stock_reports/每日复盘/每日复盘_2026-08-14.pdf
# —— 容器内:直接 cp ——
cp 复盘.md /data/reports/stock_reports/每日复盘/每日复盘_2026-08-14.md
cp 复盘.pdf /data/reports/stock_reports/每日复盘/每日复盘_2026-08-14.pdf
```
落盘后 `ls` 确认 md + pdf 都在(前端「股票报告」页 → 每日复盘 文件夹)。
### 第 5 步:聊天回复速览(QuantBot/Claude 直接回答用户用这个格式)
```markdown
**A股复盘 2026-08-14(周五)**
一句话总结:…
指数:上证 +0.01% / 深成 +0.45% / 创业板 +1.12% / 科创50 -0.00% / 北证50 -0.94%
广度:涨 2400 / 跌 2970(涨跌比 0.81);涨停 64 / 跌停 14 / 炸板 22;最高 5 连板
量能:两市成交额 21,565.76 亿元(环比上一交易日 1.04x;5 日均 21,xxx 亿,量比 x.xx)
主线:行业 Top3 …;概念 Top3 …
资金:两融 xxx 亿(截至 08-13,+xx 亿);北向 2026Q2 持仓市值 30,685.68 亿元;超级大单 ±xx 亿
情绪:买压 0.49 / 卖压 0.51;早盘上涨占比 40.68%
新闻:命中 xxx 篇 / 有新闻股票 xxx 只;净情绪 ±xx%;聚焦板块 …
L2:强信号股占比 xx%;VPIN 分位 xx;超级大单 ±xx 亿
模型推理:昨日 TopN 信号今日命中率 xx%(平均 ±xx%,超额 ±xx%);明日信号 Top5:新易盛/兆易创新/…
自选:…(有 --watch 才有)
**次日方向:看空/看多…(得分 xx/11.0,置信 ★★☆)**
→ 完整复盘报告已落盘「股票报告 → 每日复盘」目录
```
## 复盘日期标注规则
- 用户说「复盘」不带日期 → 最新交易日(脚本默认行为)
- 「复盘 20260814」/「复盘 8月14日」 → `--date 20260814`;非交易日脚本自动取 ≤ 该日期的最近交易日并在报告封面注明**实际复盘日**
- 报告文件名、封面`报告日期/数据截至`、聊天速览标题三处日期必须一致
## 维护
- 单测:`cd scripts && python3 -m pytest tests/ -q -c tests/pytest.ini`(覆盖涨跌停判定/连板/分布/板块加权/单位换算/除权检测/方向引擎/模型推理命中率与 run 选择)
- 核心脚本:
- `daily_review.py` — 攻全市场基本面/技术/资金/L1/L2/方向 + 模型推理信号(含 `direction_engine.py` 六维评分)
- `news_review.py` — 当日新闻情绪聚合(**须在容器内跑**:`.claude` 未挂载进容器,先 `docker cp` 脚本到 `/tmp`;输出写到共享的 `/data/reports/daily_review/`);PG 富集表是活数据,同一日重跑结果可能因 enrichment 继续更新而略有变化
- `inference_signals.py` — 模型推理信号 PG 查询(`engine_signal_scores` + `qm_model_inference_runs`):昨日推理→今日验证 / 今日推理→明日 Top5;默认每日推理模型 `5eea5418`,可用 `--model` 覆盖;PG 挂则降级缺失
- `direction_engine.py` — 纯函数六维评分器,无 I/O;方向只是信号的可解释合成,**不是预测承诺**
- 涨跌停规则**复用** `backend/services/trade/simulation/services/local_market_data.py`(经 ZTPrice/DTPrice 交叉验证 99.71%),禁止在本 skill 里另写一套
## 相关技能
- **[[quantdb-fields]]** — 必读:单位/口径速查(本 skill 计算正确性前提)
- **[[news-sentiment-research]]** — 新闻情绪研究方法论(来源白/黑名单、时段质量、事件标签的来源;六维里的「新闻情绪」维度据此加权)
- **[[stock-market-analysis]]** — 盘后想对某只股票深挖时用(复盘是广度,它是深度)
- **[[quantdb-sdk]]** — QuantDB 数据源背景Files in this skill
- REFERENCES/review-methods.md
- SKILL.md
- scripts/daily_review.py
- scripts/direction_engine.py
- scripts/inference_signals.py
- scripts/news_review.py
- scripts/review_stats.py
- scripts/tests/pytest.ini
- scripts/tests/test_direction_engine.py
- scripts/tests/test_inference_signals.py
- scripts/tests/test_inference_stats.py
- scripts/tests/test_review_stats.py
- scripts/tests/test_tech_fallback.py
- scripts/trigger_inference.py
Attribution
Comments
Loading comments…