Plan & Review — 盘前计划与盘中/盘后复盘
这是一个只读的市场研究与复盘流程。三类报告分别回答:开盘前需要观察什么、午间哪些假设得到验证、收盘后全天结构如何演变。午间和盘后市场复盘可以独立运行;只有“复核既有假设”部分需要对应的前置报告。
技能协同与工作流衔接
- 盘前准备阶段:在运行
prepare --phase pre之前,推荐优先调用market-intel技能提取隔夜外盘、宏观与要闻事实,作为盘前计划的定性背景输入。 - 盘后复盘阶段:在进行题材生命周期划分与次日观察清单制定时,推荐结合
risk-guard的大势环境定义(Regime)确定当前市场的整体风险系数。
不可违反的规则
- 先运行
workflow.py prepare,返回status: ready后才能创建对应报告。 - 任一必需数据缺失、过期、日期不一致、字段变化或覆盖率不达标时,停止生成;向用户列出错误和建议的下一次采集窗口。
- 只使用数据包内的数值。每条量化陈述在同一行用
[E01]形式引用证据。 - 区分事实、解释、假设和反证;不把实时值写成收盘值,不用当前截面回填历史截面。
- 报告完成后必须运行
workflow.py validate。验证失败不交付报告。 - 不调用任何委托或执行层工具;本技能只采集市场数据、形成研究计划和复盘结论。
market只提供数据。报告中的市场定性、题材阶段、假设与反证必须由你读取数据包后完成,不能期待数据脚本返回结论。- 必须实际使用数据包中的全市场涨跌分布与排行、指数历史、连板梯队、行业分布及行业/概念 1/3/5 日资金流;不能只摘录汇总家数。
- 盘中比较前一交易日收盘与午间原始数据;盘后比较午间与收盘原始数据,不从前置报告文本反推数值。
- 午间和盘后报告必须包含市场概览、恐慌贪婪指数和商品行情三个模块;数据不足时明确阻断或标记不可计算,不填默认中性值。
- 报告只能使用模板规定的章节和字段,不复述用户任务、工具调用或执行边界;正式报告通过脚本校验后才能交付。
环境
所有命令从项目根目录运行。数据采集使用 market 技能自己的环境;工作流脚本只依赖 Python 标准库。
uv venv market/.venv
uv pip install --python market/.venv -r market/requirements.txt
数据生命周期
实时全市场、资金流和龙虎榜接口不能可靠重建任意历史时点,因此必须在业务窗口内采集带时间戳的原子快照:
| 快照 | 允许时间(Asia/Shanghai) | 内容 |
|---|---|---|
| 午间 | 交易日 11:30-13:00 | 全市场宽度与成交额、资金流、涨跌停活动、指数 |
| 收盘 | 交易日 15:05 后 | 全市场收盘结构、资金流、涨跌停活动、指数 |
| 龙虎榜 | 交易日 16:30 后 | 当日龙虎榜明细与机构统计 |
plan-review/.venv/bin/python plan-review/scripts/workflow.py capture --phase noon --date YYYYMMDD
plan-review/.venv/bin/python plan-review/scripts/workflow.py capture --phase close --date YYYYMMDD
plan-review/.venv/bin/python plan-review/scripts/workflow.py capture --phase lhb --date YYYYMMDD
如果 plan-review/.venv 尚未建立,可用系统 Python 运行 workflow.py;它会通过子进程调用 market/.venv。
盘前准备
目标是给当日建立可证伪的观察框架,不预测无法验证的确定结果。
必需数据:
- AKShare 交易日历;
- 前一交易日收盘全市场快照;
- 前一交易日指数历史与收盘行业/概念 1/3/5 日资金流快照;
- 前五个交易日涨停、炸板和跌停活动;
- 已结束交易日的美股指数,以及采集时点的 A50、美元人民币;
- 自选股历史(仅在用户配置自选股时必需)。
自选股未配置时正常忽略;部分标的可用时数据包返回 warning;全部不可用时阻断盘前报告。
plan-review/.venv/bin/python plan-review/scripts/workflow.py prepare --phase pre --date YYYYMMDD
成功后读取返回的数据包和 templates/pre_market.md,创建 report/daily/YYYYMMDD_盘前计划.md。必须检查指数多周期数据、市场宽度与涨跌分布、异动排行、连板梯队和行业分布、1/3/5 日资金排行及自选股 K 线/指标。重点说明隔夜背景、前日结构、最多三条今日假设及其失效条件。
盘中复盘
目标是用午间截面复盘市场并逐条核对盘前假设。没有同日盘前报告时仍可生成独立市场复盘;没有午间快照时不能生成。
先在午间窗口执行 capture --phase noon,再运行:
plan-review/.venv/bin/python plan-review/scripts/workflow.py prepare --phase noon --date YYYYMMDD
成功后读取数据包和 templates/intraday_review.md,如存在则读取同日盘前报告,创建 report/daily/YYYYMMDD_盘中复盘.md。报告必须先给出市场概览、恐慌贪婪指数、商品行情,再写上午事实;有盘前假设时逐条判为“确认、部分确认、失效、证据不足”之一,并写出下午需验证的收盘数据。
盘后复盘
目标是复核全天判断、识别结构演变并形成次日研究清单。盘后市场复盘可独立运行;若要比较午后变化,必须有完整午间快照;若要复核既有判断,则读取可验证的前置报告。
15:05 后执行 capture --phase close 保存收盘市场快照;16:30 后执行 capture --phase lhb 补充龙虎榜。两者都成功后再运行:
plan-review/.venv/bin/python plan-review/scripts/workflow.py prepare --phase post --date YYYYMMDD
成功后读取数据包和 templates/post_market.md,如存在则读取前两份报告,创建 report/daily/YYYYMMDD_盘后复盘.md。报告必须先给出市场概览、恐慌贪婪指数、商品行情,再写收盘事实与结构判断。
题材生命周期使用六类,而不是把不同维度混在同一分类中:
- 观察:首次出现,持续性证据不足;
- 启动:广度与强度同步改善,资金开始一致;
- 扩散:参与面继续扩大,核心和跟随增强;
- 高潮:绝对强度高但边际改善放缓,拥挤风险上升;
- 分歧:内部明显分化,仍有核心承接;
- 退潮:广度、强度、持续性和资金多数转弱。
每次分类同时列出广度、强度、持续性、资金一致性和反证。若证据冲突,选择“分歧”或“观察”,不得强行归类。
报告验证
plan-review/.venv/bin/python plan-review/scripts/workflow.py validate --phase pre --date YYYYMMDD
plan-review/.venv/bin/python plan-review/scripts/workflow.py validate --phase noon --date YYYYMMDD
plan-review/.venv/bin/python plan-review/scripts/workflow.py validate --phase post --date YYYYMMDD
验证器检查:数据包状态和日期、必需章节、bundle_id、证据编号、量化陈述的同行引用,以及禁止进入报告的执行层内容。
数据文件
- 原始报告快照:
market/data/report_snapshots/YYYYMMDD/ - 阶段数据包:
plan-review/data/YYYYMMDD/ - 报告:
report/daily/YYYYMMDD_{盘前计划,盘中复盘,盘后复盘}.md - 自选股(可选):
data/watchlist.json
plan-review/scripts/derived_metrics.py 提供版本化的恐慌贪婪指数(fg-v1)和商品行情行校验;午间和盘后 prepare 会从已校验的市场快照、前一交易日基线和指数历史自动计算指数,分项缺失时阻断。它不依赖其他 Skill,可在独立安装的 plan-review 目录中调用。商品行情由 market commodities 数据命令采集后写入阶段数据包。
快照和数据包是审计证据,不要手工修改。需要重新采集时重新运行 capture,并重新执行后续 prepare 与 validate。
