投资笔记 v3 的唯一日更技能——复盘。当用户要求回顾最新交易日的盘面、主线、持仓或操作时使用,触发表达包括“复盘”“今日复盘”“收盘复盘”“看下今天”“今天盘面怎么样”,以及**不点名具体主线**的泛问“主线还活着吗”。在 A 股真实交易日收盘后,判定盘面环境、更新活跃主线状态、提名新主线候选、按纪律卡做持仓对照,写回当日盘面日志并留 git 快照。仅询问流程或讨论规则时不执行。不用于盘中分析、选股、买卖判断或定时任务。
Scanned 9/6/2026
Install to Claude Code
npx -y skills add Taosheng777/a-share-mainline-os --skill stock-daily --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Stock Daily?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/taosheng777-stock-daily)More formats (shields.io, HTML) on the badges page.
---
name: stock-daily
description: 投资笔记 v3 的唯一日更技能——复盘。当用户要求回顾最新交易日的盘面、主线、持仓或操作时使用,触发表达包括“复盘”“今日复盘”“收盘复盘”“看下今天”“今天盘面怎么样”,以及**不点名具体主线**的泛问“主线还活着吗”。在 A 股真实交易日收盘后,判定盘面环境、更新活跃主线状态、提名新主线候选、按纪律卡做持仓对照,写回当日盘面日志并留 git 快照。仅询问流程或讨论规则时不执行。不用于盘中分析、选股、买卖判断或定时任务。
---
# 复盘(v3 唯一日更)
一次交互回答三个问题:**今天盘面什么环境 · 哪些主线活着/新生/垂死 · 我的机动仓和主线状态对不对得上。**
产品设计与决策合同见仓库 `docs/`;本文件只保存运行时必需流程。
**v3 与 v2 的根本差别**:绩效永久交给同花顺,本地不算净值、TWR、回撤、仓位、集中度;不维护逐笔账本;不做券商截图算术核对。**断更零债务**——复盘结论本身无状态依赖,哪天跑哪天新,不需要把过去的复盘补齐。唯一的例外是板块逐日缓存:它是逐日累积的,断更期间的缺行大概率补不回来,缺了就按下文降级为「本项未验证」,**不因此拒绝出复盘**。
## 运行时配置与固定相对路径
运行前读取环境变量 `ASM_CONFIG` 指向的 JSON;未设置时读取 `~/.config/a-share-mainline/config.json`。文件不存在、JSON 非对象或缺 `vault_root` 时立即停止,列出缺失项与配置方法,**不得猜测路径或沿用记忆**。
- Vault:配置键 `vault_root`;下列路径都从它派生。
- 问财 CLI:优先用可选配置键 `wencai_cli`,否则按当前 skills 根目录下的同级 `hithink-market-query/scripts/cli.py` 自动发现。找不到时标记该适配器不可用并按三源规则降级。
- commit 前缀:从 `git_identity` 取当前平台 adapter 键(`claude` / `codex`),其次取 `default`,均无则使用中性 `[ai]`。下文以 `<git_identity>` 表示解析结果。
- 硬护栏:`00-系统/AI操作规则.md`(数据熔断六条,v3 全文有效)
- **纪律卡**:`01-纪律卡.md`(三条线的唯一事实源,**每次重读,阈值绝不固化在本文件**)
- **持仓卡**:`03-持仓跟踪/持仓.md`(标的 / 角色 / 所属主线 / 止损位)
- **主线目录**:`05-主线追踪/`(活跃主线页;`归档/` 为已退潮)
- 主线页模板:`05-主线追踪/_主线页模板.md`
- **输出目录**:`02-盘面日志/`
- 首页:`投资笔记.md`
- **板块逐日缓存**:本 Skill 自带 `scripts/board_fund_flow_cache.py`(本仓库自有代码,**不属于上游 `a-stock-data`**)。库文件默认在 `A_STOCK_DATA_HOME` 指向的目录下,未设置时回落到该脚本内置的用户级数据目录。缓存不存在或覆盖不足时按下文一律降级为「本项未验证」,**不阻断其余复盘区**。
- **判定器**:本 Skill 自带 `scripts/mainline_validation.py`,提供退潮判定真值表与提名影子观察的确定性实现;行为回归入口见文末「行为回归与研究复跑」。
- 取数通道(三条,调用顺序见下「数据源:调用顺序与权威性」):
- `a-stock-data` skill(东财 / 腾讯 / 通达信 / 百度,零鉴权、无额度)
- `hithink-finance` CLI(同花顺 iFinD,额度独立于问财)
- 问财 CLI:运行时解析出的 `wencai_cli`(每日额度有限、三个 skill 共用,**仅限正面清单四类场景**)
## 硬边界
- 只在人在场时手动触发;不做定时、不创建 automation、cron 或后台监控。
- 不下单、不碰委托、不动钱,不替用户作买卖决定。纪律只产生提示,**不冻结、不自动卖出**。
- 不编数据。每个行情数字必须带来源和数据日;缺失写 `未取得`,不猜。
- 不写未来行情。次日日期与待观察项可以写,不得附带未来价格、涨跌幅或资金数据。
- **不建主线页**。提名只写进当日复盘等用户拍板;用户说「跟」才建页,那是另一轮的事。
- **不算账户绩效**:净值、TWR、回撤序列、仓位、集中度一律不碰。
- **白名单只有四类**:`02-盘面日志/` 当日复盘、`05-主线追踪/` 活跃主线页的证据流增量、`03-持仓跟踪/持仓.md`(仅当用户本轮报了成交或改了止损位)、`投资笔记.md`(仅当首页 callout 事实变化)。超出立即停止并说明。
- **写 `未取得` 之前必须先走完下面的调用顺序三条通道**。**单一通道失败或额度耗尽 ≠ 熔断**:
- 三条通道都拿不到该数据项 → **该数据项熔断**,写 `未取得(三源均失败:<逐条列出>)`,**任务其余部分照常完成**。
- **整轮任务停止**只在两种情况:① 关键数据项全部熔断致结论无依据;② 数据日异常或晚于系统当天。
- 涨跌家数以问财为写入源、并**必跑东财影子对账**(见下 §1「涨跌家数:问财为写入源 + 东财影子强制校验」);问财耗尽时改用影子值写入并标注,不再熔断该项。
## 数据源:调用顺序与权威性(两条独立规则)
三条通道**额度与鉴权互相独立**,任一条能取到就不许写「未取得」。
> **问财额度纪律的唯一事实源:`00-系统/AI操作规则.md` §问财额度纪律**(三个投资 skill 共用一个额度池,运行时读那里,本节只是本 skill 的调用顺序)。摘要:**问财正面清单**只有 ETF 主题检索 / ETF 技术指标与资金流 / 复合条件筛股问句 / 涨跌家数四问句这四类,清单外一律走前两条通道;额度耗尽先降级,按上面的两分判该项熔断,而非整轮停止。
### 调用顺序(为省问财额度,从上往下试)
| 调用顺位 | 通道 | 覆盖 | 额度 / 鉴权 |
|---|---|---|---|
| 1 | **`a-stock-data`**(东财 / 腾讯 / 通达信 / 百度) | 指数与个股行情(腾讯批量)、行业涨跌排名(§3.7)、板块资金流 行业×今日/5日/10日(§3.8)、涨停四池(§8)、个股资金流、龙虎榜、K线 | **零鉴权、无额度**,只有东财限流(`em_get` 已内置) |
| 2 | **`hithink-finance` CLI**(同花顺 iFinD) | 行情快照 / 日线历史 / 交易日历 / 指数目录与成分 / 涨停池等特色榜 / 财务 | **额度独立于问财**;Key 由用户按 `hithink-finance` 官方方式配置,`hithink-finance auth status` 应为 `configured:true` |
| 3 | **`hithink-market-query`**(问财 `openapi.iwencai.com`) | **仅限正面清单四类**:ETF 主题检索 · ETF 技术指标与资金流 · 复合条件筛股问句 · 涨跌家数四问句(`code_count`) | **每日次数有限、三个 skill 共用,会耗尽**;Key 在环境变量 `IWENCAI_API_KEY`(本机环境变量) |
### 权威性(同一数字多源冲突时以谁为准)
`hithink-finance`(T1 官方结构化) > 问财(T2) > `a-stock-data`(T3 公开爬取)。写入 vault 的数字,若 T1 取得到则以 T1 为准并标注来源。
> **这两条不是同一个排序。** 调用顺序管的是「先问谁省钱」,权威性管的是「打架听谁的」。**不得把 `a-stock-data` 说成比 `hithink-finance` 更权威,也不得把问财说成应该优先调用。**
**判定口径必须与历史一致**:涨跌家数用问财全池口径写入,并按 §1 跑东财影子对账(口径已实测逐位一致;问财耗尽时用影子值写入并标注);其余数据跨通道补数时,若分类口径不同(如东财行业 vs 同花顺行业),在页面上标明来源与口径差异,不混算。
> **认证检查**:以 `hithink-finance auth status` 的 `configured` 字段或一次只读请求为准;不得仅凭某个环境变量缺失就推断服务不可用。
> **⚠️ 沙箱网络**:Bash 环境设了 `HTTPS_PROXY`,Python `requests` 走代理连东财会 `ProxyError`/`RemoteDisconnected`,**但 `curl` 直连正常**。取东财数据时用 `curl` 拉 JSON 再交 Python 解析,或给 session 设 `trust_env = False`。
## 运行前检查
1. `cd` 到 vault,**读真实文件**:纪律卡、持仓卡、`05-主线追踪/` 全部活跃主线页、`02-盘面日志/` 最近一篇。不沿用会话摘要。
2. 用系统时间确认当前日期。数据日默认「今天」;用户明确要补跑历史交易日时才用指定日期。
3. `source ~/.zshrc`,只检查 `IWENCAI_API_KEY` 是否存在,**绝不打印密钥**。
4. 查上证指数、深证成指、创业板指、沪深300、科创50 的收盘价与涨跌幅,核对返回字段的数据日。**指数收盘价不在问财正面清单内**,走 `hithink-finance market snapshot`(T1,优先作为写入值)或 `a-stock-data` 的腾讯批量行情,**不得为此消耗问财额度**。
5. 拿不到「今天」的完整收盘数据时,停止所有写入,回复 `未跑(今日非交易日、尚未收盘或当日收盘数据不可验证)`。**不得把上一交易日数据冒充今天。**
6. 确认收盘后,跑一次 `scripts/board_fund_flow_cache.py snapshot --trade-date YYYY-MM-DD` 续接全板块逐日缓存;只有返回的行业/概念/地域分页都完整且数据日一致,才进入主线判定。失败则记录具体类型,**不得用残页覆盖缓存**;其余不依赖该项的复盘区照常完成。
> 该命令**幂等且自带交易日守卫**,同日重复跑直接走幂等分支。用户可以自行在系统里加定时任务提前跑,本 Skill 只调用、**永不替用户创建定时任务或后台监控**(见「硬边界」)。
> **缺行大概率补不回来**:公开逐日历史端点已不稳定,Tushare 补洞需要用户自备 token,当日快照端点只给当日值。补不回就在当日复盘写明「板块逐日缓存缺 YYYY-MM-DD」,后续凡依赖连续序列的判定(连续 N 日 / MA20 / 误报回测)一律写「本项未验证」,**不得默认判「未触发」**。
## 编排
### 0. git 快照(前)
```bash
git status --short
git add -A
git commit --allow-empty -m "<git_identity> 复盘前快照 YYYY-MM-DD"
git rev-parse --short HEAD
```
这是 vault 规则里唯一允许 `git add -A` 的场合。提交失败即停止所有写入——没有回滚点不继续。
### 1. 盘面十行
采集并核对:主要指数收盘与涨跌幅 · 上涨/下跌家数 · 涨停/跌停家数 · 两市成交额及较前一日变化 · 行业涨跌前三与后三 · 主力资金方向。
> **家数口径固定:沪深A股全池、含 ST,不加「非ST」过滤。**问句固定为 `沪深A股 今日涨跌幅大于0` / `沪深A股 今日涨跌幅小于0` / `沪深A股 今日涨停` / `沪深A股 今日跌停`,取各自的 `code_count`。
> 加 `非ST` 会改变样本池与历史可比性。**五档矩阵与全部历史记录都用全池口径,不要改问法。**
> **额度预算与取数分工**:按调用顺序收敛后,复盘正常**只需 4 次问财查询——就是涨跌家数四问句**。指数收盘、行业涨跌榜、板块资金流(`a-stock-data` §3.7 / §3.8,零鉴权无额度,还多给 5 日/10 日周期)、个股行情与资金流全部走 `a-stock-data` / `hithink-finance`,**不占问财额度**。只有当日确需 ETF 主题检索、ETF 技术指标与资金流或复合条件筛股问句时才追加,且仍限在正面清单内。
> 清单外的数据项某条通道失败时,按调用顺序走完三条通道再判**该项熔断**,**不是直接写「未取得」**,也不整轮停止。真要取舍时的优先级:④ 持仓对照(纪律执法)> ① 盘面判定 > ③ 提名的资金佐证。
> **涨跌家数:问财为写入源 + 东财影子强制校验**(2026-08-07 起,取代旧的「只认问财、不许换源」)。
> 四问句仍是唯一写入源、口径不动,但**本步必须同时跑一次影子值并对账**——`a-stock-data` §3.11 `market_breadth()` + `breadth_reconcile()`,零额度、约 60–80 秒。对账结果**写进当日复盘脚注**(这是「⑤ 是否已双源校验」的唯一证据,缺了后段复核会退回)。
> - **一致** → 照常写问财值,正文不占版面,脚注注明「涨跌家数已双源校验」;
> - **涨跌家数差 ≠ 0** → **报「口径异常」,不得静默写入**:先查当日新股 / 停牌 / 分类调整,查不清则两个值都写并标注冲突,环境判定**取更保守一档**;
> - **涨停家数差 ≠ 0** → 逐股核对 `detail.limit_up` 与腾讯字段 47/48,未定位原因就按上一条处理;`limit_up_st` 仅为描述字段,不再自动放行差异;跌停差 >1 同样按上一条处理;
> - **问财额度耗尽** → **改用影子值写入**并标注 `来源:a-stock-data §3.11 影子口径(问财额度耗尽)`,**不再写「未取得」、不再因此降档**;
> - 完整条款与 2026-08-11 纠偏记录(「问财涨停不含 ST」假设已证伪)见 `00-系统/AI操作规则.md` §问财额度纪律 ⑤——**该节是唯一事实源**。
>
> 影子源用于发现口径漂移;任何差异都必须逐项解释,不能静默吸收。
按五档矩阵判定当日环境(**信号冲突时取风险更高、条件更保守的一档**):
| 环境 | 识别线 |
|---|---|
| 强势扩量 | 多数主要指数上涨,涨/跌家数比 ≥ 约 1.5,成交额较前日增加约 10% 以上 |
| 震荡轮动 | 主要指数大致在 ±1% 内,行业分化明显,资金集中流入少数板块 |
| 超跌修复 | 连续下跌后市场宽度转正,指数或主线重新站上短期均线 |
| 缩量弱势 | 下跌家数明显占优、成交缩量、无清晰资金主线 |
| 大跌或恐慌 | 主要指数约跌 1.5% 以上,或下跌家数超过上涨家数约 3 倍 |
不能只按上证指数单一涨跌定档。
### 2. 主线动态
对 `05-主线追踪/` 每条活跃主线:
1. 读该页的**死亡条件**与载体清单,取载体当日表现、所属行业涨幅排名、资金方向。
**若某条死亡条件依赖逐日连续序列而当日无法判定**(例如断更后缺中间交易日),**不得默认判为「未触发」**——先查本地缓存:`python3 scripts/board_fund_flow_cache.py history <板块代码> --limit 120 --end-date <数据日> --provider cache`;仍取不到才如实写「该条件本日不可判定(原因)」并提示用户,建议用 `stock-buddy` 复核或把该条件改写成聚合窗口口径(如改看 5 日聚合是否转负)。凡涉及指数或价格阈值的条件,主线页状态头缺**基线三要素**(标的/指数代码 · 基线点位 · 基线数据日)中任一项,同样按「不可判定」处理,不猜基线。
> **板块逐日史的事实源是本地缓存,不是远端端点。**缓存存逐日主力净额、四档资金与板块收盘点位,每日收盘后由全板块当日快照增量续接。**必须传 `--end-date` 锁定判定交易日**——行数够但末日不是判定日,等于拿旧数据冒充当日判定。指定数据日未精确覆盖、行数不足或跨源冲突时一律写「本项未验证」。**不同分类口径的板块序列不得互相拼接**(换口径等于改死亡条件本身)。
2. 判定阶段:`启动 / 发酵 / 分歧 / 警戒 / 退潮`,并给出依据(带数据日与来源)。
3. **触发清仓级死亡条件才判退潮**——这是纪律①的触发信号,必须在复盘的持仓对照区置顶红字,并联动第 4 步。红字**固定附一句**:「本判定为单源机械触发,建议先用 `stock-buddy` 做退潮复核再决定处理。」复核结论为**虚警**时,须回改该主线页 frontmatter 的 `阶段` 字段并在证据流补记一行轨迹 + 一个折叠明细块,不得让页面停在错误的退潮状态。
**机械判定先走确定性真值表**:读主线页 frontmatter 的 `判定规则版本`;写着 `double_key_v1` 的按双钥匙判,没有该字段的旧页按 `legacy_any` 与页面原文执行,**不得代为升级或降级**。实现与回归入口是 `scripts/mainline_validation.py::classify_retreat`。任一必需键缺数据必须返回 `unverified / data_block`,**不得把缺失静默当成 `false`**。`double_key_v1` 中:资金键单独成立 = `warning`,资金键与价格键同时成立 = `retreat_review_required`;已预注册的纯价格单键仍可独立触发。
**双钥匙与警戒态**:清仓级死亡条件是「**资金键 + 价格键**」双钥匙。**只有资金键成立、价格键(当日收盘 < MA20 或 < 基线触发线)未落下时,判的是 `警戒` 不是 `退潮`**——写橙字(`warning` callout)、**不写退潮红字、不联动纪律①**,动作限于「本主线冻结加仓 + AI 给上移止损建议(待用户确认)」。警戒解除(连续 2 个交易日资金键反向且收盘 > 触发日收盘)或升级(任一日价格键落下 → 转退潮)都要回改 `阶段` 并补记证据流。纯价格条件可单键,它本身就是价格键。
> **为什么要加这一档**:纯资金符号条件(连续 N 日净流出、聚合窗口转负)在板块逐日史上的**底率极高**——作者自己按预注册 Gate 跑过一次 120 日全池回放,这类条件既没通过与基线的区分门槛,触发后的前向收益也与不触发几乎无差别。警戒态不是给「留仓」找豁免票,而是**防止低特异度的单源传感器直连不可逆动作**:一个隔几天就误响一次的清仓信号,迟早会教会人在关键时刻不信任触发器。**任何条件都不因叙事被豁免**,双钥匙只改结构、不改现役阈值。回放方法见文末「行为回归与研究复跑」,可用自己的缓存复现。
**复活哨(本区强制项)**:对 `05-主线追踪/归档/` 里已退潮的主线,若**判定日后 15 个交易日内**锚板块**连续 2 个交易日主力净流入且收盘高于判定日收盘**,本区必须**置顶「疑似误杀提示」**,列出两日资金、当前收盘与判定日收盘之差、该主线在 `05-主线追踪/归档/_退潮判定台账.md` 里的暂定分类。提示的动作是**请用户决定是否重新评估**,**不是买回信号**,不得据此给开仓建议;重评走新立项流程(新页、新死亡条件、新基线)。断更期间漏发的提示,用上面的缓存回填补发,不因断更作废。
**T+N 台账回填(本区顺手做)**:`_退潮判定台账.md` 里未终裁的每一行,按其写死的检查点日期填当日读数;到 T+7 按该页**预注册**的分类判据机械归类,**不得为了归类另换指标**。归为「误杀」不改变任何已执行的纪律动作,只进样本池。
4. 写回该主线页「证据流」——**双层,两样都写才算完成**:上层轨迹表**插一行在最上面**(固定 4 列 `数据日 / 阶段 / 死亡条件锚点当日值 / 一句话结论`,锚点 ①②③ 与该页死亡条件逐条对应、**未触发也要写当日值**),下层加一个**默认折叠**块 `> [!note]- YYYY-MM-DD 明细 · 〈阶段〉`(按 资金 / 涨幅 / 宽度 / 载体 / 来源 分行,结尾的 `-` 是折叠开关不要漏)。折叠块**只写本主线自己的判定依据**,全市场指数、涨跌家数、行业总榜、成交额留链接指回当日复盘,**不转录**。阶段变化时同步改 frontmatter 的 `阶段` 字段(首页状态灯靠它)。
5. 复盘正文里,无变化的主线只写「延续」一行,有变化才展开细节。
活跃主线为 0 条时,本区写「当前无活跃主线」,不占篇幅。
### 3. 主线提名(**分角色:前段出候选池、后段出提名**)
本区按 `AGENTS.md` §Codex ↔ Claude 分工协议**拆成两步**,两段各写各的,不得互相覆盖:
**前段(Codex)—— 写「③ 候选池(机械扫描,未取舍)」**
只做机械筛,**不做取舍、不写反方、不叫「提名」**。筛法:行业板块与概念板块各扫一遍,取三周期(今日/5日/10日)主力净流入全正且今日排名靠前者,上限 5 条。每条固定给:
- 板块名与层级(东财行业 / 概念,标明口径)
- 三周期**金额与排名一起给**(缺一不可)
- 涨跌家数宽度
- 加速度:`前5日 = 10日 − 5日`,标「加速 / 减速」
**候选池不是提名,用户不得据此拍板;只跑了前段的日子,本区停在候选池状态并显式标注「未提名」。**
**后段(Claude)—— 写「③ 主线提名」,替换候选池**
1. **先独立扫一遍再看候选池**(防锚定,同 §分工协议的取数顺序);
2. 与候选池合并去重,取并集——两边各自漏的都要捞回来;
3. **催化剂核查是提名的必做前置**,零额度三源全走:`a-stock-data` §8.2 同花顺涨停揭秘(涨停原因题材词频)· §5.2 财联社电报(**拉满整个交易日,不能只拉收盘后那几十条**)· §3.8 概念板块 `t:3` 三周期资金。**三源都核不到行业级催化 → 该候选降为观察,不得提名**;
4. 输出 **0–3 条**,每条必须写全:一句话叙事逻辑 · 证据(带数据日与来源)· **反方理由**(没有反方的提名无效)· 死亡条件雏形(必须断更可判定)· 第 N 次提名。
5. 每条正式提名再强制写四项 `shadow_only` 观察,缺失写 `未验证`,不得省略:
- **涨停梯队映射**:映射到该主线的涨停股数量与名单;0 只标 `zero_limit_up_mapping`。
- **A 股催化落点**:是否落到具体 A 股上市主体、订单、产品验证或业绩事件;否标 `no_a_share_catalyst_landing`。
- **锚板块名次稳定性**:锚板块成分数;成分 `<50` 且死亡条件使用全市场绝对名次时标 `narrow_absolute_rank_anchor`。
- **次日证伪条件**:提名当轮预写一条下一交易日可机械核对的反向条件;次日填 `未证伪 / 已证伪并退回观察 / 未验证`。
四项**不自动阻断现役提名,也不改死亡条件或退潮阈值**——它们是修订窗口内的采样,不是门禁。但 `zero_limit_up_mapping` 与 `no_a_share_catalyst_landing` 同时出现时,必须醒目标注 **「A 股执行链未验证,证据高风险」**,不得包装成「A 股承接已成立」。判定语义见 `scripts/mainline_validation.py::assess_nomination_shadow`,行为样例见 `tests/fixtures/mainline_cases.json`。
**没有合格候选就提 0 条**,不为凑数硬提。提名只是候选——**用户说「跟」才建页**,复盘本身不写 `05-主线追踪/`。
### 4. 持仓对照(三条纪律唯一的日常执法点)
先从 `01-纪律卡.md` 读当前三条线的定义与数值,**不使用本文件或会话记忆里的任何旧阈值**。再从持仓卡读角色与止损位。
1. **机动仓逐只**:收盘价 · 止损位 · 距止损位 `(收盘价 / 止损位 - 1) × 100%` · 所属主线当前阶段。
2. **纪律②**:收盘价 ≤ 止损位即触发 → 置顶红字,要求用户次日给处理决定。读上一篇复盘,若同一标的**连续两日破位未处理**,每次复盘继续置顶重复。
3. **纪律①**:所属主线被判**退潮** → 该主线全部机动仓置顶红字,红字**固定附一句**:「本判定为单源机械触发,建议先用 `stock-buddy` 做退潮复核再决定处理。」
**所属主线被判 `警戒`(只有资金键成立)→ 不触发纪律①、不置顶红字**,改用橙字(`warning` callout)写:本主线冻结加仓 + AI 给上移止损建议(待用户确认);未确认前纪律②仍按**原止损位**执行,AI 不自动移动止损位。
4. **纪律③**:读纪律卡的触发线金额。用户本轮提供当日总资产时直接比对;**未提供就写 `未核对(需你报当日总资产)`,绝不用持仓市值估算总资产**。
5. **底仓一行带过**:只写整体涨跌与是否出现异常,不逐只展开、不做纪律判定(纪律②③只约束机动仓与账户整体)。
6. 止损位为「未生效」或空缺的机动仓,如实写「止损位未生效,纪律②对该仓不执行」。
全程只写 `触发 / 未触发 / 无法核对`,不写买卖指令。
### 5. 次日关注
≤3 条,只写**可验证的观察点**(某价位能否站上、某资金方向能否延续、某待你确认的事项)。不写未来价格预测,不写买卖建议。
### 6. 写盘面日志
创建或更新 `02-盘面日志/YYYY-MM-DD 复盘.md`。自动内容包在 `<!-- stock-daily:auto:start -->` 与 `<!-- stock-daily:auto:end -->` 之间。
frontmatter 必须含(首页 dataview 靠这两个字段取最新一篇):
```yaml
---
type: market-log
数据日: YYYY-MM-DD
created: YYYY-MM-DD
updated: YYYY-MM-DD
环境: 强势扩量 / 震荡轮动 / 超跌修复 / 缩量弱势 / 大跌或恐慌
tags:
- 投资/盘面日志
---
```
正文固定五区,**目标 ≤40 行、5–10 分钟读完**:
1. 页首 `abstract` callout:一句话环境结论 + 今天最需要你处理的一件事(没有就写「无待处理」)。
2. `## ① 盘面` —— 关键数字紧凑表 + 环境判定与依据。
3. `## ② 主线动态` —— 每条一行;有阶段变化才展开。**已归档主线触发复活哨时,「疑似误杀提示」置顶本区**(`info` callout,不是 `danger`——它不是纪律事件);`_退潮判定台账.md` 有未终裁的行时,本区末尾用一行带过回填结果。
4. `## ③ 主线提名` —— 0–3 条,每条含证据、反方理由与一行 `shadow_only` 四项观察;0 条时一行写明。前段只跑到候选池时不补定性影子字段。
5. `## ④ 持仓对照` —— 机动仓表(标的/收盘/止损位/距止损位/主线阶段/状态)+ 底仓一行 + 纪律③一行。**任何触发项用 `danger` callout 置顶到页首 abstract 下方。**
6. `## ⑤ 次日关注` —— ≤3 条。
7. 末尾固定一行:`本工具仅用于研究与决策支持;提供方非持牌证券投资咨询机构,本工具及其输出不构成投资建议,不代下单,使用者风险自担。数据来源:<本轮实际使用的数据源>;数据日:YYYY-MM-DD,均以本次运行输出为准。` **数据边界不再另写长文,必要缺口直接标 `未取得`。**
版式只用 Obsidian 原生 Markdown、callout、表格;不依赖 CSS 或新插件,移动端优先,表格尽量不超过 6 列,不堆装饰性 emoji。
同一数据日重复触发时**更新原文件的自动块**,保留块外的人工批注,不追加第二篇、不整篇覆盖。
### 7. 首页与 git 快照(后)
1. 仅当首页 callout 陈述的事实发生变化(活跃主线数量、持仓角色/止损位、纪律状态)时才改 `投资笔记.md`;两条 dataview 会自动取最新复盘,**不需要手改链接**。
2. 只暂存本轮白名单文件:
```bash
git add -- '02-盘面日志' '05-主线追踪' '03-持仓跟踪/持仓.md' '投资笔记.md'
git commit -m "<git_identity> 复盘 YYYY-MM-DD"
git rev-parse --short HEAD
```
3. `git status --short` 必须为空;白名单外还有未提交内容时,在回告里逐条列出交给用户决定,不自行提交也不自行丢弃。
4. 提交失败即视为未完成,报告 git 阻塞,**不得声称复盘已完成**。
回告给出:数据日、环境判定、各区完成/未取得状态、纪律触发摘要、提名条数、变更文件、前后 commit hash、所有缺口。结尾固定写:`本工具仅用于研究与决策支持;提供方非持牌证券投资咨询机构,本工具及其输出不构成投资建议,不代下单,使用者风险自担。数据来源:<本轮实际用到的通道,逐条列出,如 a-stock-data(东财/腾讯)、hithink-finance、同花顺问财>及投资笔记已验证记录;数据日:YYYY-MM-DD,均以本次运行输出为准。`(不得把没用到的源写进来)
## 熔断与幂等
- **单一通道额度耗尽 / 认证失败 / 网络错误 / 空数据 ≠ 熔断**:先按调用顺序走完三条通道;三条都拿不到该数据项,才判**该数据项熔断**,写 `未取得(三源均失败:<逐条列出>)`,绝不改用猜测值,**任务其余部分照常完成**。涨跌家数按 §1 的双源规则处理(问财为写入源,必跑影子对账;额度耗尽改用影子值写入并标注,不写「未取得」)。
- **整轮停止**只在两种情况:① 关键数据项全部熔断致结论无依据;② 数据日异常或晚于系统当天(含「运行前检查」第 5 条的今日收盘数据不可验证)。
- 同一数据日重复触发:查重复盘文件、主线页证据流的轨迹行与同日折叠块、首页 callout;更新而不重复追加。
- 运行结束后用 `git diff HEAD^ --name-only` 核对实际变更;出现白名单外文件即判定失败并报告,不自行删除用户文件。
## 行为回归与研究复跑
涉及双钥匙、警戒、正式提名证据字段或次日证伪语义的改动,必须先跑:
```bash
python3 -m unittest discover -s tests -p 'test_*.py'
python3 scripts/mainline_validation.py cases --fixtures tests/fixtures/mainline_cases.json
```
`cases` 用一组结构化合成案例覆盖:资金键单独成立(旧规则会清仓、双钥匙只进警戒)· 聚合窗口口径的同类读数 · 双键同日成立 · 未预注册的价格半边单独落下 · 已预注册的纯价格单键 · 提名影子三旗全亮 · 次日证伪成立。**改判定语义就要同轮补案例**,不许改案例迁就实现。
想用自己的数据复核双钥匙的立论,先把缓存养到足够长的历史,再跑:
```bash
python3 scripts/mainline_validation.py study --db <缓存库路径> --output-dir <输出目录>
```
它输出板块历史回放报告与预注册验收 Gate。**Gate 一旦预注册就不得按结果改门槛**;失败后追加的切片只能标 `post_gate_diagnostic_only`,不得反过来当成立论证据。这条命令只用于系统验收,**不是日常复盘步骤**。
## 明确不做的事(v2 遗留,已停用)
净值 / TWR / 最大回撤 / 月内回撤计算 · 券商截图算术核对 · 持仓账本(数量/成本/市值/盈亏)刷新 · 账户快照表 · 绩效状态表 · 基金账户跟踪 · 逐笔交易记录 · `07-交易决策/` 建页 · `08-下个交易日/` 单独建页 · 数据边界长文。
**策略选股批次 T+N 不在复盘内运行**:v3 只跟踪「主线载体名单」,记录写回对应主线页。**复盘不写 `09-选股池跟踪/`。**
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!