Back to skills
SKILL.md
Stock Daily
BSecurity投资笔记 v3 的唯一日更技能——复盘。当用户要求回顾最新交易日的盘面、主线、持仓或操作时使用,触发表达包括“复盘”“今日复盘”“收盘复盘”“看下今天”“今天盘面怎么样”,以及**不点名具体主线**的泛问“主线还活着吗”。在 A 股真实交易日收盘后,判定盘面环境、更新活跃主线状态、提名新主线候选、按纪律卡做持仓对照,写回当日盘面日志并留 git 快照。仅询问流程或讨论规则时不执行。不用于盘中分析、选股、买卖判断或定时任务。
- 2 stars
- 0 votes
- 0 copies
- 1 view
- Added September 6, 2026
Works with
Security analysis
75/100- Modifies startup scripts or system services for persistence
Pro scans all 7 files and shows the line behind each finding
npx -y skills add Taosheng777/a-share-mainline-os --skill stock-daily --agent claude-codeAre you the author of Stock Daily?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/taosheng777-stock-daily)---
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-选股池跟踪/`。**
Files in this skill
- SKILL.md
- agents/openai.yaml
- scripts/board_fund_flow_cache.py
- scripts/mainline_validation.py
- tests/fixtures/mainline_cases.json
- tests/test_board_fund_flow_cache.py
- tests/test_mainline_validation.py
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.