← 归档索引 · 2026-11-05 11:33 · 引爆点扫描-11:30
# Cron Job: 引爆点扫描-11:30
**Job ID:** c2ff68dc9d8a
**Run Time:** 2026-11-05 11:33:54
**Schedule:** 30 11 * * 1-5
**Prompt Characters:** 52871
## Prompt
[IMPORTANT: The user has invoked the "pan-gan-signals" skill, indicating they want you to follow its instructions. The full skill content is loaded below.]
---
name: pan-gan-signals
description: 盘感落地+量价结合 — ★市场第一铁律已注入:大盘重于板块>个股>热点>游资。承接判断/空方动能衰竭/建仓三型/洗盘三型/出货三型/黄金分割/仓位映射
category: fugui
trigger: 当用户提到「盘感」「承接」「空方动能」「建仓」「沉淀异动」「休息异动」「洗盘」「出货」「黄金分割时」自动加载
---
# 盘感落地+量价结合 (pan-gan-signals)
> **★ 市场第一铁律(永久):**
> 大盘重于板块,板块重于个股,主线重于热点,机构重于游资。
> 不能从个股出发看主力→必须从市场出发看趋势。
> 大盘退潮或大瀑布→无论个股多好都不做。
> 分析流程:市→主线→个股→战法→仓位。
## 来源
- 代码: `pan_gan_signals.py` (682行, stock_workspace/)
- 原始文档: 林酉秋《盘感落地+量价结合》PDF(股道小灶课)
- 量化模块: 6个类
## 四层深度学习
### ① WHY — 这套体系的系统定位
林酉秋的盘感落地体系解决的是**"什么是承接"这个核心问题**。系统已有无为盘感体系(弧度/中继/休息回调)和主力三问,但盘感落地提供了更细粒度的量价分类:
- **承接三态**(有承接/无承接/中枢承接)→ 决定是否继续持有
- **空方动能衰竭三信号** → 决定是否可以抄底
- **建仓/洗盘/出货三型** → 每个阶段有明确量化特征
- **黄金分割关键位** → 精准支撑/压力位
核心逻辑链:结构位是理由 → 空方动能衰竭是逻辑 → 多方信号是确认
### ② Transfer — 与现有系统的衔接
| 盘感模块 | 对应现有系统 | 衔接方式 |
|---------|------------|---------|
| 承接判断(SupportDetector) | 无为中继·休息判断 | 补充量化标准 |
| 空方衰竭(MomentumExhaustion) | 无为内弧+整轮衰竭 | 多一个验证角度 |
| 建仓三型(AccumulationDetector) | 主力三问·吸筹阶段 | 细化主力建仓类型 |
| 洗盘三型(WashAndDistribute) | 洗盘Phase检测 | 补充形态分类 |
| 出货三型(WashAndDistribute) | 主力三问·出货阶段 | 细化出货类型 |
| 仓位映射(MarketScorePosition) | env_agent仓位 | 林酉秋仓位公式覆盖 |
### ③ Self-improvement — 系统的盲点
现有系统做了洗盘检测但缺**三型分类**(中枢盘整/阴线群/诱空陷阱)。
现有系统做了出货检测但缺**三型分类**(隐形/横盘/高位放量滞涨)。
黄金分割位做了初版但没有盘感的用法规则("下杀动能有过衰竭痕迹才能使用")。
### ④ Market verification — 验证方法论
```bash
# 记录承接判断
python3 market_validator.py record --code $code --signal "有承接-底部爆量" --confidence 高 --price $price --reason "量比>1.5+5日均跌>-0.5%"
# 记录空方衰竭判断
python3 market_validator.py record --code $code --signal "空方衰竭-可介入" --confidence 中 --price $price
# 批量验证
python3 market_validator.py verify
python3 market_validator.py stats
```
## ★ 八月复盘认知升级(2026-08-30 固化·永久生效)
> 来源:八月市场系统性复盘,从8/19暴跌-5%、8/24恐慌26%涨、8/25放量爆发76%涨中提炼。
### 铁律A:位置定性+主力定方向(最高优先级)
```
旧路径:位置→信号→决策(错:"位置高=看空")
新路径:位置定性→主力行为定方向→信号确认(对)
```
**为什么?** 位置只是坐标,主力行为才是方向:
- 位置高 + 主力在场 + 缩量 = 洗盘(不看空)
- 位置高 + 主力出货 + 放量 = 出货(看空)
- 位置低 + 主力进场 = 建仓(可做)
- 位置低 + 主力没来 = 无庄(不碰)
⛔ #46教训:位置100%分位+主力在场(flow=concentrated)被错误判断为看空,实际涨56%。
位置≠方向。主力行为=方向。
**执行检查(每次分析前强制):**
```
□ 先定位置:MA60分位 >65高位 / 20-65中位 / <20低位(仅定性;规范口径 position_layer.LOW_PCT=20/HIGH_PCT=65,2026-10-10 从35/65对齐)
□ 再看主力:来没来?什么阶段?(决定方向)
□ 联合判断:位置×主力行为 → 看多/看空/观望
□ 交叉验证:量+价+K线+主力四维是否一致?
```
### 铁律B:风险识别=对应操作(逻辑一致性)
```
识别风险 → 必须对应降仓/观望
不能"识别出逃命波风险"却仍给"跟"的操作基调
```
**八月案例:** 8/23全量分析写了"逃命波风险",但操作基调是"跟"。逻辑矛盾=判断无效。
**执行检查(每次分析后强制):**
```
□ 我识别了什么风险?→ 对应什么操作?
□ 风险等级和操作激进度是否匹配?
□ 如果不匹配,修正操作建议
```
### 铁律C:恐慌后二次确认(提高胜率)——⚠️ 仅适用于"超跌恐慌反弹"
```
恐慌→第一次反弹 ≠ 买点
恐慌→第一次反弹→回踩→第二次确认 = 买点
```
**八月验证:** 8/19暴跌→8/20反弹(74%涨)→8/24又探底(26%涨)→8/25才真正修复。第一次反弹不可靠,二次确认更安全。
**⛔ 适用边界(2026-09-09 老板纠正·永久生效):铁律C只对"超跌恐慌反弹"生效。**
结构性主线启动 ≠ 恐慌反弹 → 不套用"等二次确认":
- 恐慌反弹(大盘暴跌后的情绪修复):无主线逻辑,需二次确认 → 铁律C适用
- 主线启动(心法第一+主力显性流入+板块共振):有产业逻辑+主力行为 → 铁律J(要信早信)适用
- 把铁律C套在主线启动上 = 系统性踏空主升段(等回踩时强势票惜售跌不回来)
### 铁律J:要信早信(主线启动首买点 = 启动当日,2026-09-09 老板纠正·永久生效)
```
信 = 前置研究的信任:心法第一(跌少涨多=有人管=主力在)+ 主线产业逻辑硬 → 选出来就要敢信
早 = 主力显性流入+板块共振+首次放量启动当天 = 首买点,不要求指数闸门全过/回踩企稳
```
**为什么:** 强势主线惜售=没人卖=跌不回来,等回踩=等一个不来的买点。机会成本是真成本——等"确定性"是用主升段涨幅换的。
**双轨操作(替代单轨"等回踩"):**
```
早信轨(主策略):主线心法好 + 主力显性流入 + 板块共振启动
→ 首买点 = 启动当日,试错仓 ≤2成
→ 3日内不破启动点/逻辑没坏 → 加仓
→ 破启动点 → 走(亏损有限,错了代价小)
回踩轨(补票):只用于没在启动上车的补救
→ 回踩 MA5/MA10 缩量企稳 = 加仓点,不是首买点
```
**"不追高"重新定义(2026-09-09):**
- 不追 = 末期高位 + 无主力行为确认(接盘)
- 启动初期 + 主力在场 + 心法第一 = **可以信,不是追高**
- 禁止用"不追高"一票否决有主力确认的启动买点
**每日输出强制检查:**
```
□ 机会轨写了没?(哪条主线在启动、早信买点在哪、试错仓几成)——先机会后风险
□ 如果说不追/等回踩,同时写"错过什么"(机会成本显式化)
□ 说持有,写清证伪条件(破什么位/什么逻辑坏了才走)——拿得住
□ 回踩三档写清是"补票加仓点"不是"唯一买点"
```
### 铁律D:恐慌信号量比门槛(过滤弱信号)
```
恐慌反弹必须同时满足:
① 量比 > 1.1(确认增量)
② 涨幅 > 3%(非弱反)
③ 不破前低(结构完整)
缺一 → 降级为观察信号,不作为启动候选
```
**数据支撑:** 能力蒸腾24次恐慌信号中,量比<1.1的全部是弱信号。
### 铁律E:强逻辑=真基本面(所有股票通用)
```
科技股强逻辑 = 第一因刚性 × 因果链闭环 × 业绩能见度 × 共识可形成 × 自我强化
五项乘积,缺一项就不是强逻辑。
```
**因果链五步法:**
1. 找第一因:驱动源是否刚性(不可停、不可逆转)
2. 推因果链:驱动源→供需缺口→业绩兑现→资金共识→主线确立
3. 验持续性:能跑多久?能否自我强化(戴维斯双击)
4. 验主线资格:全市场同时刻有几条链闭环?仅1-2条=真主线
5. 定操作:主线=可重仓;反弹=不追;有叙事无主力=诱多
**叙事真伪三问(过滤90%故事):**
① 是否新增量市场?(空间打开 vs 存量替代)
② 是否价值量提升?(单位价值跃迁 vs 量增价跌)
③ 利润是否再投入闭环?(自我强化 vs 一次性订单)
三问全过=真叙事;过一缺二=反弹;全不过=诱多。
**硬数据锚(把叙事钉死在事实上):**
Capex递增/招投标流拍/单机价值量跃迁/BD授权/财报连续性
铁律:凡只能用"未来空间"描述、拿不出硬锚的,叙事存疑。
### 铁律F:两碗面分工(持有权vs择时权)
```
基本面(强逻辑)= 持有权:决定"能不能拿得住、敢不敢重仓"
资金面(主力行为)= 择时权:决定"现在买不买、什么时候买卖"
```
双否决持有:资金面否决→立即减仓;基本面否决→永久回避;两者皆过=持有。
### 铁律G:主力五阶段+定性动态修正
```
五阶段坐标:建仓→试盘→洗盘→拉升→出货
定性动态修正:每次新K线/资金数据出现,重跑五阶段定位
证据逆转(如洗盘区突现出货六信号)→ 立即改判,不僵化
```
**新老合力四层S50:**
老主力(长期驻扎)+ 新主力(近期流入)= 最强
决策优先级:新老合力 > 单一老主力 > 单一新主力 > 量化游资 > 散户主导
**建仓三标准S47:**
①价格移动 ②量放大 ③密集多头订单流
三条件同时满足=真建仓;防游资打板假流入。
**量的参照物S04:**
放量/缩量必须与"上涨途中健康阳线量"对比,禁止与底部最小量对比。参照物错=判断全错。
### 铁律H:见顶三级信号+隐性派发
**见顶三级信号S51:**
1. 主观不适(盘感警示)→ 仅刹车不加仓
2. 客观乏力(增量资金减弱)→ 减仓30-50%
3. 客观逃跑(高位巨量+长实体+龙虎榜机构净卖)→ 清仓
主观不适≠行动,客观标准=行动,禁止混用。
**隐性派发S46:**
涨一涨卖一点,小阳小阴爬升中节奏性减仓,有条件拉升却不拉=派发。
最隐蔽,勿等大跌才认。
**高位二维S48:**
见顶=放量×实体长度。两维同触发=强见顶(逃字);仅放量无长实体=分歧非出货。
### 铁律I:三种跌法(应对完全不同)
| 跌法 | 应对 |
|:-----|:-----|
| 杀估值(基本面未变,估值偏高) | 可持有,等修复 |
| 杀预期(共识转向) | 警惕,趋势可能终结 |
| 杀业绩(价值毁灭) | 永久回避 |
区分:暴跌后资金是否回流因果链闭环的方向。回流=杀估值;背离=杀预期。
## 核心模块速查
### 承接判断 (SupportDetector)
```python
from pan_gan_signals import SupportDetector
sd = SupportDetector()
r = sd.check_support("300308")
# r.support_type: "有承接"/"无承接"/"中枢承接"
# r.volume_check: {倍量反弹, 3-5倍反转, 量比}
```
### 空方动能衰竭 (MomentumExhaustion)
```python
from pan_gan_signals import MomentumExhaustion
me = MomentumExhaustion()
r = me.check("300308")
# r.exhaustion: {跌速放缓, 缩量止跌, 下影线承接}
# r.exhausted: >=2个衰竭信号
# r.entry_ready: 衰竭+多方确认
```
### 建仓识别 (AccumulationDetector)
```python
from pan_gan_signals import AccumulationDetector
ad = AccumulationDetector()
r = ad.check("300308")
# r.accumulation_type: "显性建仓"/"平台建仓"/"打压吸筹(隐性)"
# r.沉淀异动: True/False
# r.休息异动: True/False
```
### 洗盘/出货识别 (WashAndDistribute)
```python
from pan_gan_signals import WashAndDistribute
wd = WashAndDistribute()
wash = wd.check_wash("300308")
# wash.wash_type: "阴线群洗盘"/"诱空陷阱"/"中枢盘整"
dist = wd.check_distribute("300308")
# dist.distribute_type: "高位放量滞涨"/"横盘出货"/"隐形出货"
```
### 黄金分割 (GoldenRatio)
```python
from pan_gan_signals import GoldenRatio
gr = GoldenRatio()
levels = gr.calc_levels("300308")
# levels: {high, low, 38.2%, 50%, 61.8%, current, current_at}
```
### 仓位映射 (MarketScorePosition)
```python
from pan_gan_signals import MarketScorePosition
pos = MarketScorePosition.get_position(market_score=5.0, xiaopubu=True)
# pos: {level, score, position_band, position_short, position_fixed}
```
## 关键阈值
| 参数 | 值 | 含义 |
|------|:--:|:----|
| 底部爆量阈值 | 量比>1.5 | 放量但不过度 |
| 中枢承接阳/阴量比 | >1.3x | 阳放量阴缩量=吸筹 |
| 跌速放缓条件 | 后2日<前3日*0.5 | 空方衰竭信号 |
| 缩量止跌条件 | 后2日<前3日*0.7 | 空方衰竭信号 |
| 建仓阳阴比 | >1.5x | 阳盛阴衰 |
| 洗盘连续阴线 | ≥4天跌>1% | 阴线群洗盘 |
| 出货放量滞涨 | 量比>1.5+涨幅<2% | 高位危险信号 |
| 大盘≥5分仓位 | 波段80%+短线10%+固定10% | 林酉秋仓位公式 |
| 大盘≤0分仓位 | 波段30%+短线30%+固定40% | 防守仓位 |
## ★ 涛哥速度判断法量化补充(2026-09-16 吸收)
> 与空方衰竭(MomentumExhaustion)互补:空方衰竭看"跌速放缓",速度判断法看"绝对速度分级"。
```
速度分级(量化):
急速下跌 = 同级别跌幅÷用时 > 1.5%/日 → 空头极强,不做
中速下跌 = 0.5-1.5%/日 → 观察,等衰减
缓速下跌 = < 0.5%/日 → 空头衰竭,关注反转
速度变化(动态):
速度衰减 = 近5日速度 < 前10日速度×0.5 → 空头衰竭信号
速度加快 = 近5日速度 > 前10日速度×1.3 → 空头增强信号
与MomentumExhaustion的"后2日<前3日*0.5"判据一致,
但速度判断法增加了"绝对速度分级"维度。
```
## 集成到系统
- 被 `method_matcher.py` 注册(盘感引擎路由)
- CLI: `python3 pan_gan_signals.py support <code>`
- CLI: `python3 pan_gan_signals.py phase <code>`(四周期综合诊断)
## 盘感训练体系(2026-08-11 落地)
老板盘感提升方案执行后固化的训练资产与自动化,任何"盘感训练/速查/复盘"类对话先查这里:
**资产(重建于 `~/stock_workspace/outputs/wuwei_study/`,2026-08-11):**
- `Z_融合_盘感速查手册.md` — 每日盘前3分钟卡片(五问+五铁律+预期三分类+中继/摸顶探底速查+龙凤呈祥参数+三振+仓位映射)
- `Z_融合_盘感方法论.md` — 双公理+五层决策漏斗+五大洞见(位置优先/信号累加/五层过滤/13:30硬规则/反者道之动)
- `Z_融合_盘感案例精讲.md` — 3个真实案例(取自牧马人8.10全市场扫描)+每周练习题
**自动化 cron:**
| cron | 时间 | 类型 |
|:-----|:-----|:-----|
| 盘前速查卡 bae09ad18968 | 交易日9:05 | no_agent零token(pan_gan_morning_card.sh) |
| 每周案例判断回放 27a4ab827eb6 | 周五19:00 | LLM推理(牧马人/爱马仕流选2份) |
| 月度评估报告 d353c4aa5a0c | 每月1号19:30 | LLM推理(判断速度/准确率/盲区/跨库四指标) |
**方案存档:** `~/.hermes/knowledge/wiki/复盘/Z_盘感提升方案_2026-08-11.md`(引用路径已修正为真实路径)。
**教训:** 外部方案引用的资产路径常是幻觉——落地前先 find 验证,缺失用知识库真实素材重建,不凭空编造。
## 场景化输出触发映射(方案维度4,2026-08-11 固化)
老板交互中以下场景**自动用盘感五连/速查手册**,不等提示:
| 老板触发语 | 自动动作 | 输出结构 |
|:----------|:---------|:---------|
| "这只股票怎么样" | ★先看大盘→再六连(大盘→板块→位置→主力→量→信号) | 大盘状态+板块主线+位置%+主力三问+信号条数+结论+证伪 |
| "持仓怎么办" | ★先看大盘→信号累加清单(0/1/2/3+条四档操作) | 大盘状态+信号枚举+对应操作+风控触发没 |
| "怎么看大盘/板块" | ★市场第一(全市场定位→涨跌比→资金方向→主线识别) | 大盘趋势+情绪周期+主线板块+候选板块+操作建议 |
| "扫盘/扫描" | ★全市场定位→聚焦,13:30硬规则提醒 | 涨幅前十+资金流向前五+候选 |
**盘感六连(30秒结论模板·市场级重构版):**
```
大盘?→ 板块?→ 位置?→ 主力?→ 量?→ 信号几条?
大盘退潮=不做 | 大盘能做→板块主线→个股位置→主力阶段→量价→信号条数
0条=不动 / 1条=观察 / 2条=轻仓 / 3条+=可做
说不出信号条数=没想透,先查速查手册再答
```
**五铁律越线检查(任何个股结论前强制过):**
1. 位置优先(先定MA60分位)
2. 信号累加(单一信号不可信)
3. 四维交叉(量+价+K线+位置缺一=陷阱)
4. 反数据主义(不信资金流数据结论,只看价格行为)
5. 等待信号清单(四维不全不动+看不懂不动)
## 市场级时间维度(开盘形态感知)
用户 2026-08-02 需求:「感知要包括每天第一个半小时/一小时对当天的影响,四分类,同比/环比」。
已落地 `open_pattern_sense.py` + 10:00 cron(71467236d8b1)。方法论、数据源组合、判断层铁律、踩坑 → `references/open-pattern-sense.md`。
## 2026-08-18 牧马人盘感量化增量(代码已落地 wuwei_signals.py + pan_gan_check.py)
**⑥ 集中vs分散流入(ConcentrationFlow)** — 判断主力行为性质:
- 集中流入(真主力逆势):低开/平开反包收阳+放量 → 权重1.0
- 分散流入(散户游资跟风):高开≥0.5%+冲高回落(上影>实体0.8)→ 权重0.3
- 用法:`cf = ConcentrationFlow(df); r = cf.judge(idx)` → concentrated/dispersed/neutral
- 实战:8/5低开反包=集中流入(真主力);8/17高开上涨=分散流入(边涨边卖)
**⑦ 顶部周期分级(TopSignalGrading)** — 顶部周期只有两个:
- 30分钟信号(10点钟半小时的逃)→ 减半仓位(权重0.5,置信中)
- 日线信号 → 全走(权重1.0,置信高)
- 用法:`tg = TopSignalGrading(); r = tg.grade(m30_escape, daily_escape)`
**调整时间维度(ContinuationVsDistribution.judge 增强)**:
- 短暂停顿 → ≤1周(5交易日);简单调整 → 2-3周(10-15交易日);复杂调整 → 月-季度(20-60交易日);反转 → 长期
**四查表(pan_gan_check.py 输出,每次个股判断必写)**:
①建仓痕迹(集中/分散) ②逃跑定量(S03+日线出逃) ③老新主力(position_guard) ④量的参照物(S18早盘基准)
**S18 量基准(open_pattern_sense.py)**:早盘30分钟/10点量=全天最大量基准;放量对比必须用此基准,**禁与下午小量比**(参照物错=永远"放量恐慌"误判)
**台账闭环**:`pan_gan_check.py <code> --cost X --save` → judgment_ledger(judgments.db)→ 22:45/23:05 自动回测命中率
## 《主力之道》四维体系判据库
般若《主力之道》(牧马人量价+爱马仕盘感)全部量化判据的5994字提炼版,每条含触发条件+阈值+结论+原文行号,并标注★未代码化项(弧度锚线/三档休息/四象限/九维矩阵/环境策略表/三振共振/两池公式/五把尺/5维判定等) → `references/zhuli-zhidao-vol2-3.md`。
洗盘vs出货九维矩阵、承接五档、出货六信号与本技能的洗盘/出货三型、SupportDetector 直接对应,编码前先查该文件。
[IMPORTANT: The user has invoked the "market-discipline" skill, indicating they want you to follow its instructions. The full skill content is loaded below.]
---
name: market-discipline
description: 市场分析纪律协议 — 任何市场/板块/个股分析前强制执行。★市场第一铁律:大盘重于板块>个股>热点>游资。站在市场之上看全局,先看趋势方向再找资金规律。不通过这扇门,不分析。
domain: discipline
tags: [市场, 纪律, 客观, 风控, 前置门, 对抗自我, 市场第一]
references:
- references/user-three-layer-framework.md: 用户亲授的三层客观性框架全文(制度→认知→方法论)。每次分析前读第零步:检查框架是否覆盖当前问题。
- references/2026-07-28-report-quality-metrics.md: 2026-07-28固化的报告输出质量标准(六段式、兵家禁令、双源数据、超越层深度分析)
- references/2026-07-31-three-scenario-analysis.md: 牧马人三情景分析实战模板(含涛哥7/31案例+关键规则)
- references/2026-08-04-taoge-capital-system.md: 涛哥资金面操作系统(8/4直播深读,9验8中:两碗面/吸售+回流/高开比价/风险报酬比五层链)
- references/closing-analysis-cron-workflow-20260804.md: 收盘分析cron完整命令序列(vault降级对照/管道拦截规避/IMA归档/干净版预测覆盖)
- references/morning-briefing-cron-workflow-20260805.md: 盘前简报cron完整命令序列(prediction_vault JSON直读/日期校准/dotfile拦截规避/IMA归档)
- references/midday-scan-cron-workflow-20260810.md: 午间扫描cron数据工具链(定稿vs实时双轨、DataHub签名速查、五类扫描工具可用性实测、7段报告骨架)
- references/buy-sell-standards-20260814.md: 买卖标准完整清单(S1校长铁律~S8参考 + 买入六维/13否决/四大买点/S16;含标准来源铁律——自创阈值禁止当标准)
- references/a-share-winrate-backtest-20260814.md: A股判据5日胜率回测(13只投资池:缩量洗盘70%/高位强势71%/单日大单50%抛硬币 + 三个反直觉发现 + 复现方法)
scripts: []
---
# 🚧 市场分析纪律协议
> **★ 市场第一铁律(永久):**
> 大盘重于板块,板块重于个股,主线重于热点,机构重于游资。
> 不能从个股出发看主力→必须从市场出发看趋势。
> 大盘在退潮或大瀑布→无论个股多好都不做。
>
> 用户亲授的三层框架。任何市场分析前强制执行。
> 不通过,不开口。
---
## ⚡ 触发条件(精确场景定义)
### 正向触发(以下任一激活本协议)
```text
□ 用户要求分析市场/板块/个股走势
□ 用户分享市场数据并要求解读
□ 你要输出任何带方向性判断的陈述
□ 用户发来外部分析/文章需要吸收
```
### 反向触发(以下任一**不激活**,直接跳过)
```text
□ 纯数据采集/脚本执行请求("拉一下XX数据")
□ 账户操作/交易执行("买入XX")
□ 系统运维/技术排查
□ 知识库查询("查一下XX概念")
```
### 场景边界
```text
模糊场景 → 按「可能触发」处理:
"看看XX" → 如果是看数据不判断 → 不触发
"分析XX" → 明确有判断 → 必须触发
"XX怎么样" → 需要先确认意图 → 问清再决定
```
### ★ 输出三态显式化(2026-10-31 ResearchOS蓝图吸收·B4)
任何市场/板块/个股分析的收尾必须落三态之一,禁沉默弃权:
- **ACT**:给买点/建仓(须闸门开+战法匹配+仓位)
- **DEFER**:观察——附复验条件+复验时点("等X,若Y则Z")
- **ABSTAIN**:弃权——附原因(数据不足/闸门关/谱系判据弱/体制不符)
弃权是正常决策输出不是能力缺陷;报告里写"今日弃权:因为X"而非省略结论。
### ★ 买入判断铁律(2026-08-31 老板纠正·永久生效)
```
有主力在 = 正面信号 = 可以进
有买入标准触发 = 进
没有出货标准 = 拿着
百分位置、涨幅大小、"感觉高了" → 全部不是买卖依据
只有标准有关系:有买入标准→进,有卖出标准→出
强势股没有顶,除非符合顶的标准
弱势股没有底,除非符合底的标准
不做预测顶底的事情,走一步说一步
```
### ★ 主力识别方法(2026-08-31 实战固化)
```
量价异常 = 主力行为的物理痕迹(钱多→进出必然冲击价格和成交量)
判断有无主力(四个维度):
维度1·量比:今日量 vs 近5日均量
量比>1.2 = 有人在动
量比>1.5 = 动作不小
量比>2.0 = 大动作
维度2·价格配合:量变了,价格跟不跟
放量+涨 = 有人在买(建仓/拉升)
放量+跌 = 有人在卖(出货/砸盘)
放量+不涨不跌 = 换手(可能是洗盘)
维度3·位置:在哪发生的
波段低点放量涨 = 主力建仓(好事)
波段高点放量滞涨 = 主力出货(坏事)
维度4·连续性:一天是噪音,连续3天以上才是信号
下跌中找主力(额外信号):
跌幅收窄(-5%→-3%→-1%)= 卖压衰竭
缩量下跌 = 抛压在减少
长下影线/大阳线 = 有人在低位接
低点不再创新低 = 有人在托
关键位置 = 价格历史上大量交易的地方(前高/前低/成交密集区/整数关口/缺口)
```
### ★ 同比环比分析方法(2026-08-31 实战固化)
```
同比 = 跟别人比(强弱)
★时刻对齐铁律(2026-10-20 老板令): 同比必须【每天同一时刻】比; 一天内不同时刻互比无价值
(实证: 收盘扫描"首30min vs 末30min成交量分布"被判无意义 → 该cron已删 aba5c65c8c1e;
日内两段比只有配上【同一时段的历史基线】才有参照系, 否则只是形状描述不是判断依据)
★执行窗铁律(2026-10-20 数据固化, 69日深成指分时): 买点判定与下单集中【9:45–10:30】(修正完成+10点方向已选), 禁开盘前5分钟动作(修正段泡沫)
三道时间闸: 首根5分钟(9:35, 发现层: 涨≥1.5%且量≥前5根均量2倍) → 9:45的15分钟(决策层: 收>开且未回落破开盘价) → 10:00方向选择(确认层: 首半小时只消化不作数)
依据: 首半小时量占33.5%[P25=32.5,P75=35.1]/首小时48%/尾盘半小时11.5%(前重后轻3:1); 早盘方向→全天65%先验(非确定); Gao日内动量已证伪(corr=0.06)
接线: 09:30闸门声明三闸待验条件 → 10:00形态感知核对(数据粒度不足须标「降级近似」禁冒充精确)
个股 vs 板块 → 比板块强=主力偏好
个股 vs 大盘 → 比大盘强=逆势资金
板块 vs 板块 → 哪个板块更强
环比 = 跟自己的过去比(变化)
今天 vs 昨天 → 趋势在变好还是变差
本周 vs 上周 → 动能在增强还是减弱
这轮下跌 vs 上轮下跌 → 跌得更快还是更慢
两个一起用:
同比强+环比改善 = 有主力在护(可关注)
同比弱+环比恶化 = 主力在跑(回避)
★ 点名即结构(老板纠正「要运用同比、环比分析法」):
老板点名用某分析方法(同比/环比/…)→ 该方法必须成为报告的组织结构
(同比专章 + 环比专章 + 两者交叉矩阵),不许降级为特征表里的两三行;
同比强弱 × 环比改善/恶化 的四格交叉矩阵本身往往就是结论所在。
```
---
## ★ 第零步:从自己的框架出发(2026-07-30 认证 · 2026-08-22 修正)
> **任何市场分析前,先锚定自己的框架,不以任何外部skill作为思考起点。**
> 框架是校验器,不是思考起点。
```
第0公理:价格由机构资金流决定
→ 分析第一问:钱在哪?去哪了?(量/资金流向/板块成交)
→ 只看K线不看量=只看果不看因
第1公理:位置决定含义(2026-08-22 修正:因果优先)
→ 分析第二问:在什么位置?用五维综合判断(不迷信均线分位数)
→ 位置是结果,同比环比是原因。先看"为什么在那个位置"
→ 高位+同比好=主力在推 | 高位+同比差=无人接盘
→ 低位+同比好=有机会 | 低位+同比差=无人问津
→ 60日分位只作定位坐标参考,均线是价格的影子(滞后)
→ 位置是第一筛,过了再看别的
★ 百分位置铁律(2026-08-31 老板纠正·永久生效):
百分位置(60日/20日分位)= 历史坐标,不是风险指标
→ 93%分位+主力在=可以继续涨,不是"危险"
→ 1%分位+主力跑了=可以继续跌,不是"便宜"
→ 百分位置和买卖没有因果关系,只有主力在不在有关系
→ 只跟标准有关系:有买入标准→进,有卖出标准→出
两公理联合:
钱去低位→建仓,钱去高位→出货
钱去+低位→跟,钱去+高位→警惕
钱没去+低位→等,钱没去+高位→不碰
★ 修正说明(2026-08-31):
"钱没去+高位→不碰"的原因是"没有主力",不是因为"高位"。
如果"钱没去+低位"→ 也没有主力 → 同样不碰。
所以核心判断是"钱去不去",不是"高位低位"。高位低位只是坐标参考。
```
**外部框架在本体系中的位置(只是验证手段,不是起点):**
```
涛哥吸收/注入 → 第0公理具体化(如何监测钱流)
无为盘感三度 → 第1公理具体化(如何判定位置)
牧马人三漏斗 → 两公理联合应用(选板块流程)
陈江挺六原则 → 两公理风控层(错了怎么办)
```
**自检:** 当前分析是从公理出发还是从外部框架出发?
```
□ 从公理出发:钱在哪?→ 位置在哪?→ 联合判断 → 调外部skill验证
□ 从外部skill出发:加载无为/牧马人/涛哥 → 套用框架 → 填充数据
→ 如果选了第二个 → STOP。退回公理起点。
```
## 第零步·双轴交叉验证(2026-08-22 般若范式 · 2026-08-30 基本面认知跃迁升级)
> 参考录音贯通(16份独立录音),**仅作分析框架补充,不照搬外部结论。**
> 基本面=天花板(能不能做),资金面=主力动向(什么时候做、做多久)。
> **2026-08-30升级:基本面不再看PE/ROE,改为看因果链闭环程度。**
```
双轴分析流程(任何标的/板块分析时强制执行):
第一步:资金面扫描(第0公理)
→ 主力在哪个阶段?建仓/洗盘/拉升/出货/砸盘
→ 量价行为说了什么?
第二步:基本面验证(天花板检查)← 2026-08-30升级
→ 主力建仓的理由是什么?因果链闭不闭环?
→ 第一因刚不刚性?(不可停、不可逆转)
→ 业绩能见度到什么时候?
→ 全市场同时刻有几条链闭环?仅1-2条=真主线
→ 基本面支撑的级别:趋势(重仓)vs 反弹(快进快出)
→ ⚠️ 禁止用PE/ROE/营收增速判断科技股基本面
第三步:双轴交叉
基本面好 + 资金面好 = 趋势(重仓持有)
基本面好 + 资金面出逃 = 先回避,等回流信号
资金面好 + 基本面差 = 反弹(快进快出,不恋战)
都差 = 不做
第四步:叙事真伪三问(科技股专项过滤)
① 是否新增量市场?(空间打开 vs 存量替代)
② 是否价值量提升?(单位价值跃迁 vs 量增价跌)
③ 利润是否再投入闭环?(自我强化 vs 一次性订单)
三问全过=真叙事可重仓;过一缺二=反弹不追;全不过=诱多不碰
```
**核心口诀**:基本面定"能不能做"(因果链),资金面定"什么时候做、做多久"(主力行为)。双轴共振才持仓,分离先回避。
**抛弃旧基本面**:PE低≠安全(银行套三年)。PE高≠会跌(算力链PE70主升)。财报好≠能涨(CXO 2021见顶)。科技股基本面=因果链闭环程度,不是财务指标。
### 比价表(外围→A股开盘定量校准,待滚动更新)
```
外围→A股高开预期:
纳指涨0.8% → 深成指正常高开0.3-0.5%,竞价90-100亿
竞价破110亿 → 机构参与(非散户情绪)
外围大跌低开<1%+放量 → 护盘(非恐慌)
低开做空阈值:
纳指-1.3%(半导体主跌)→ 正常低开1.3-1.5%,量110-120亿
实测低开2%+144亿 → 机构砸盘(禁止加仓)
注意:
- 这些阈值是特定阶段经验值,需随成交环境滚动校准
- 纳指涨≠A股科技利好——看涨的是谁(七姐妹/硬件/存储)
- 高开≥1.5%+缩量=虚开,高开低走风险
```
### 牛种分类(赛道选择框架)
```
业绩牛:有预期有业绩正循环(如AI硬件逐季财报正交)
→ 持续性最强,适合重仓持有
水牛:政策流动性人造(不持续)
→ 反弹为主,不恋战
结构牛:板块分化(部分强部分弱)
→ 只做主线,不做杂毛
系统牛:全面普涨(少见)
→ 优先选低位补涨标的
万物皆周期:房地产30年、科技2-3年、白酒消费周期已逝
→ 周期定位决定持续性
```
---
## 第零步A:全市场扫描优先 — 不预设热点
> 用户纠正(2026-07-21):「你不应该只看到科技板块,眼光应该放到整个市场。」
在开始任何分析之前,**必须先做全市场定位**,而非从预设热点(如科技/AI/半导体)切入。
```
□ 全市场板块扫描:今天最强/最弱各有哪几个板块?上涨率/涨幅/涨跌比
□ 资金方向:资金在流入哪些板块?从哪些板块流出?
□ 市场结构:是普涨/普跌/分化/极端分化?涨跌比多少?
□ 你的持仓/关注标的位置:它在全市场地图里哪个坐标?
自检:我是不是下意识先看科技板块?
→ 是 → STOP。先扫全市场再定位。
→ 收到任何分析请求 → 第一步跑全市场扫描
```
**实际操作指引(富贵系统具体命令):**
```python
# ① 拉四大指数日线(get_daily_with_realtime 可用)
from data_hub import DataHub
hub = DataHub()
indices = {'上证综指':'000001.SH','深证成指':'399001.SZ','创业板指':'399006.SZ','科创50':'000688.SH'}
for name, code in indices.items():
df = hub.get_daily_with_realtime(code, days=15)
# 看最后3天的 close + pct_chg,判断趋势方向
# ② 板块/概念日线(注意:get_blocks()返回的TI编码不支持get_daily_with_realtime)
# 如 '881121.TI'(半导体) → get_daily_with_realtime返回空DataFrame
# 不要花时间尝试逐板块跑数据
# 替代方案:
# a) 用 index 数据 + 近期涨幅排序做定性判断
# b) 跑 sector_scan.py(可能超时,设长timeout)
# c) 用 sector_scanner.py 扫潜伏板块
# d) 基于关键个股的表现 proxy 板块强度
# ③ 如果无法获取板块级数据 → 降级为指数级分析 + 知识库已知热点
# 在报告中说明数据范围:「基于四大指数数据,板块分析为定性判断」
```
> **2026-07-26 实战验证:** sector/block TI编码(881121.TI等)通过 get_daily_with_realtime() 返回空DataFrame,不是临时故障而是分类数据不走日线接口。sector_scan.py 超时(>180s)。当工具链不支持细粒度板块扫描时,指数级分析+定性判断是可行降级方案。
### 持仓/个股诊断数据链(2026-08-14 实弹固化)
个股/持仓分析的标准数据链(5步,全用 data_hub + 现成脚本,完整命令见 references/position-holding-diagnosis-20260814.md):
```text
① 60日定位 → get_daily_with_realtime(code, days=70) → 60日分位/量比/MA5/MA20/MA60
② 年度定位 → get_daily_with_realtime(code, days=250) → 250日分位 + 20日/60日区间涨幅
③ 板块验证 → market_breadth_pro.py --industry → 持仓所属行业是否在TOP5(逆势领涨=板块共振)
④ 主力三问 → from mainforce_scan import analyze; analyze(code, name) → 个股主力阶段/量能对称/大典滤网
⑤ 资金验证 → python3 moneyflow_trend.py <code>(多日持续性:连续吸筹/持续出货/资金背离/方向不明)
→ 或 hub.get_moneyflow(code) 原始大单净流入 = (buy_lg_amount - sell_lg_amount)/10000 亿元
⚠️ 单日大单≈抛硬币(回测50%),必须看多日持续性≥3天+方向一致性——moneyflow_trend.py 已代码化该判定,bss 全引擎已集成
```
**关键坑(本session实测):**
- `get_moneyflow(ts_code)` **不接受 days 参数**(传 days=5 报 unexpected keyword)——返回全量自己 sort+tail(3)
- mainforce_scan.analyze() 可对任意个股跑主力三问(不只指数),输出 dict 含 pos/vr/sym/stage/v43/veto/philo/life/db 全字段
- **位置双视角必做**:百分位置只是历史坐标,不是风险指标。60日分位100%+主力在=可以继续涨;1%分位+主力跑了=继续跌。判断依据是主力行为,不是百分位置。拉250日分位是为了看"相对于更长历史的位置坐标",不是为了判断风险。
- 大单净流入隔日剧烈翻向(如 -5.1亿→+3.6亿)= 资金分歧,不是主力行为
- 高位+缩量上涨(量比<1)= 逃命波嫌疑;高位+放量 = 诱多出货嫌疑;**同是高位放量,60日涨幅小的(<10%)是突破、涨幅大的(>50%)是出货**——量陷阱判定要结合涨幅看
## ★ 决策节点A:全市场扫描后的路径选择
```text
全市场扫描完成 → 现在你必须做选择:
IF 全市场普涨/普跌(涨跌比>2:1或<1:2)
→ 走路径A:「市场有明确方向」→ 聚焦主线板块分析
IF 全市场分化(涨跌比在1:2~2:1之间)
→ 走路径B:「市场无共识」→ 聚焦结构性机会/风险
IF 全市场散乱(涨跌比≈1:1且无突出板块)
→ 走路径C:「市场无方向」→ 给出"方向不明"结论,不强行分析
判断标准:
路径A → 产出方向性判断 + 主线确认
路径B → 产出结构性发现 + 分化逻辑
路径C → 产出"看不清" + 等待条件
```
只有完成全市场扫描后,才能进入具体分析。
---
## 第零步B:自我质疑——「这个问题适合由我来分析吗?」
```
如果满足以下任一条件 → 不分析,只说「我不知道」:
□ 地缘政治/多国博弈/新成立的组织 → 变量不可控,超出框架
□ 单一事件驱动但缺乏足够数据 → wire 框架没有处理对象
□ 我自己的框架里没有这个事件的对应模块 → 强行翻译=编造
如果上述都不满足 → 进入第一步
```
**用户原话:** *「WAICO在我的框架里没有位置,所以框架强行把它翻译了。框架的盲区 = 我分析中的系统性错误。真正的独立思考 = 不断质疑自己的框架本身。」*
---
## 第零步C:引用昨日偏差(2026-08-30 三层闭环改进·永久生效)
> **每次分析前,强制读取昨日验证结果,不重复犯同样的错。**
```bash
# 读取最新corrections(昨日错误预测)
python3 -c "
import sqlite3
from pathlib import Path
db = sqlite3.connect(str(Path.home() / '.hermes/predictions.db'))
rows = db.execute('SELECT stock_code, rule_category, error_summary, created_at FROM corrections WHERE created_at >= date(\"now\", \"-2 days\") ORDER BY created_at DESC LIMIT 5').fetchall()
if rows:
print('⚠️ 昨日偏差提醒(不重复犯同样的错):')
for r in rows:
print(f' {r[0]}: {r[2][:80]}')
else:
print('✅ 无近期偏差')
db.close()
"
# 读取market_validator最新验证结果
python3 -c "
import json
from pathlib import Path
vf = Path('/tmp/analysis/market_validator/records.jsonl')
if vf.exists():
records = [json.loads(l) for l in vf.read_text().splitlines() if l.strip()]
recent = [r for r in records if r.get('verified') and r.get('outcome') == False][-3:]
if recent:
print('❌ 近期信号失败记录:')
for r in recent:
print(f' {r[\"code\"]} {r[\"signal\"]} 预测{r[\"expected_direction\"]}但反向 {r.get(\"outcome_detail\",\"\")}')
"
```
**执行规则:**
- 输出分析报告时,必须在开头引用上述偏差提醒(如有)
- 如果今天的分析涉及偏差中的同一只票/同一个信号 → 必须说明"已知偏差,本次判断依据不同"
- 不引用 = 分析不完整
---
## 第一步:制度层 — 物理规则(五关前置门)
> 人没法靠"自觉"客观。意志力在亏损面前不堪一击。
## ★ 决策节点B:五关检查结果决定输出类型
```text
五关通过后 → 现在你必须做选择:
IF 全部5关通过(✅✅✅✅✅)
→ 输出完整分析(含判断+证伪+条件)
IF ≥1关不通过(任一❌)
→ 不输出方向性判断,仅输出数据描述 + 说明哪关没过
IF 关卡5未通过("我在解释市场为什么错")
→ STOP。删掉当前所有分析,重来。禁止继续输出。
判断标准:
关卡5是硬闸门。没过关5 = 分析有毒,整份重写。
关卡1-4有任何一项❌ → 降级为「数据描述+待确认」模式
```
### 关卡1:持仓偏见声明
```
当前分析对象是否有我之前的判断记录?
是 → 我是否在维护旧观点而不是重新看数据?
否 → 无偏见,继续
即使没有持仓,也要声明:
"这个判断没有成本,我不为它的对错负责。"
```
### 关卡2:前置否定
> 在写第一行分析之前,先写反向条件。
```
「这个判断在以下情况下是错的:
① ...
② ...
③ ...」
```
### 关卡3:止损条件
> 每份分析必须附带证伪条件。
```
「什么价格/信号出现 → 我的逻辑不成立:
① 价格条件:XX跌破X → 逻辑证伪
② 信号条件:XXX出现 → 市场否定了我」
```
### 关卡4:独立审视者
> 如果我没分析过这个票/板块,现在看到这个价格和这个事件,我会怎么做?
```
当前的「持仓偏见检查」结果:
如果我没有之前的判断 → 结果和现在一样吗?
如果不一样 → 哪个是真实的?
```
### 关卡5:市场对错检查
> 我接下来的分析是否在「解释市场为什么错了」?
```
□ 是 → 删掉重来。市场永远不会错。会错的只有人。
□ 否 → 继续
用户原话:
"市场涨了 → 我之前的看空判断错了
市场跌了 → 我之前的看多判断错了
市场横盘 → 方向未定,不要猜
没有'市场反应过度'
没有'情绪杀不是逻辑杀'
没有'市场还没理解这个利好'
没有'主力在洗盘所以跌了反而是机会'"
```
---
## 第二步:认知层 — 接受市场永远对
> 《炒股的智慧》:股市从来都不会错。它总是走自己要走的路。会错的只有人自己。
```
市场暴跌 + 我分析是利好 → 市场在告诉我它不认为这是利好
市场暴涨 + 我分析是利空 → 市场在告诉我它不认为这是利空
不解释。不争辩。只做出反应。
```
---
## 第三步:方法论层 — 框架自查
> 独立思考不是"和别人想得不一样"。是你的结论来源于自己的数据加工过程。
```
□ 我的框架能处理当前的问题吗?
→ 如果不能 → 不分析,说「我不知道」
→ 如果能 → 是否有盲区?
□ 我的框架里少了什么?
→ 每次遇到框架外的事件 → 记录下来 → 下次改进
用户原话:
"真正的独立思考 = 不断质疑自己的框架本身。
不只是在框架内思考'这个判断对吗',
还要跳出框架问'这个框架能处理当前的问题吗'。
以及'我的框架里少了什么'。"
```
---
## 看盘三层(统计 ≠ 盘感 · 老板令「要学会看盘方法,复盘方法,思维」)
```
看 = 观察现象 (今天谁涨、量多大、哪个板块动)
比 = 统计对比 (回测、CI、对照组、显著性)
想 = 主力意图 (如果我是主力,在这个位置,面对这些信息,我会怎么做)
★ 我默认停在前两层,缺的是第三层。
实证代价:拿回测去「证伪」外部判据,同日连犯两次定类错误(见 stats-rule-audit 第①门)
—— 根因不是统计不会,是我在【比数字】,没在想【他这句话在说哪一层】。
每次市场分析输出前强制自问:
□ 这个结论,能不能用一句主力意图解释?("因为谁在买/卖,所以…")
□ 我是在看、在比,还是在想?
→ 说不出意图句 = 还停在「比」,把它标成统计描述,不当盘感结论发。
```
---
## 第四步:三条铁律(输出层强制)
```
铁律一:先说市场在做什么,再说什么可能发生了
正确:「创业板-7.1%,连跌18天。WAICO消息没挡住抛压。」
禁止:「WAICO是大利好,暴跌是因为非理性。」
铁律二:分析必须附带「如果价格走了对面,我就错了」
正确:「如果逻辑成立,存储应该止跌。继续跌→逻辑证伪。」
禁止:「坚定看好。」「聪明钱在接。」
铁律三:不写时间表
正确:「我不知道什么时候企稳。」
禁止:「2-4周企稳。」「6-18个月兑现。」
```
---
## 第四步A:数据先行断言(P0-3 代码化,2026-08-10)
> 铁律二从「prompt 软约束」升级为「机器硬断言」。8 个 LLM cron 的报告每份都要过 4 条检查,不合格自动告警(cron `ebdeb9314d94` 23:10 watchdog)。
**工具**:`~/stock_workspace/data_first_assert.py`
```bash
# 扫描最近1天所有 LLM cron 报告,--fail-hard 供 cron 用
python3 data_first_assert.py --days 1 --fail-hard
# 检查指定报告
python3 data_first_assert.py --check <file>
# 只输出扫描窗口内结果
python3 data_first_assert.py --days 1 --json
```
**4 条断言**(缺一即不合格报告):
1. **数字引用 ≥3 个**:判断层引用 ≥3 个数据摘要中的具体数字(涨跌幅%/量比/分位/点位/家数/分数)
2. **反向剧本/证伪声明**:含「证伪/即错/走对面/如果…错」类关键词(= 铁律二)
3. **来源标注**:结论标数据来源(数据摘要/主力三问/收盘全景…),缺失标"不可用"
4. **日期透明**:报告开头声明数据日期,或标题含日期(W33 · 2026-08-10 也算)
**watchdog 语义**(`data_first_assert_wrapper.sh`):
- 全过 → stdout 空 + exit 0 → no_agent cron 静默
- FAIL → 输出告警 + exit 1 → 触发错误 alert
**踩坑(正则误报教训)**:
- 断言4 初版要求「数据/今日/最新交易日 + 日期」前缀,导致晨报/周一复盘标题含 `2026-08-10` 被误报 FAIL
- 修正:标题/开头 40 行内含日期(YYYY-MM-DD / YYYY年M月D日 / W33 · 2026-08-10)即通过;显式「数据日期」声明全文可查
- 教训:**先读实际报告确认是误报还是真缺,再改断言**——不要为了"通过"放宽,也不要为了"抓问题"死守正则
---
## 第五步:输出质量标准(2026-07-28 用户多次纠正后固化)
### 核心原则
```
① 结论先行,数据在后
正确:「资金在尾盘向芯片集中 → 芯片尾盘成交占比52.2%,首段仅27.2%」
禁止:「芯片首段27.2%,尾段52.2%」→ 用户自己猜结论
② 发现驱动,不是数据驱动
正确:「不是纯恐慌抛售—芯片尾盘放量是主力尾段抢筹」
禁止:「半导体-5.56%,元器件-3.45%」→ 这叫粘贴数据
③ 有操作约束,不只是观察
正确:「❌ 不接半导体飞刀(均值-5.6%,未见止跌)」「🟡 关注芯片尾盘放量能否持续」
禁止:「建议观望」→ 太模糊
④ 有明日可验证条件
正确:「明日看芯片开盘30分钟是否继续放量→放量则结构性机会确认」
禁止:没有明日条件 → 分析无法被实证
⑤ 不编兵家/兵法叙事
正确:用数据和逻辑说话
禁止:「主力在围城」「形人无形」「朝气暮气」「围魏救赵」
兵家语言是用比喻替代分析。当你说「围城」时,你停止了思考。
```
### 输出格式六段式
```text
① 【总览】— 一句话定性(涨跌/结构分化/资金方向)
② 【数据】— 关键数字支撑判断
③ 【证伪】— 什么情况下这个判断是错的
④ 【发现】— 从数据中挖出的结构性信号
⑤ 【操作】— 明确的约束(不做什么+关注什么)
⑥ 【明日】— 2-4条可验证的观察条件
```
### 第七段:三情景分析(2026-07-31 牧马人标准引入)
在六段式之外,当分析涉及方向性判断(反弹/反转/拐点)时,必须追加三情景分析:
```text
情景A(乐观)— 概率X%
触发条件:XXX
应对:XXX
情景B(中性/基准)— 概率Y%
触发条件:XXX
应对:XXX
情景C(悲观)— 概率Z%
触发条件:XXX
应对:XXX
概率不是猜的,是基于数据给出的条件密度。
X+Y+Z=100%。如果加起来不是100%,说明你没想清楚。
```
> 牧马人三情景=把每个"可能性"量化成触发条件和应对方案。不填概率不是分析,是感慨。
### 自检清单
```
□ 第一句是判断还是数据罗列?→ 判断
□ 有发现(从数据中挖出的信号)吗?→ 有
□ 有操作约束(不做什么)吗?→ 有
□ 有明日观察条件吗?→ 有
□ 有没有兵家/兵法语言?→ 没有
□ 数据都真实可验证吗?→ 是
□ 三情景分析做了吗?(方向性判断必做)→ 已量化三情景,概率加总是100%
```
---
## ⚠️ 禁区规则(含代价锚)
### 禁区1:加载skill ≠ 执行门禁
```text
规则:加载market-discipline后,必须显式写出五关答案,不能跳过。
代价(2026-07-18):
用户给了11只股票数据,我读完skill后直接扔了一句观感。
→ 用户反问「你过五关了吗?」
→ 损失:信任。需要多轮对话才能重建。
教训:
「技能加载」≠「门禁完成」。
门禁是独立步骤——需要主动做一次五关检查并写出答案。
```
### 禁区2:吸收外部分析时不验证数据
```text
规则:收到外部分析 → 先跑自己数据验证 → 再分析对方方法论。
代价(2026-07-28):
收到涛哥直播稿,第一反应是分析内容而不是先验证数据。
→ 如果他的数据是错的,我分析的是空气。
→ 损失:3小时无用分析 + 用户纠正。
教训:
外部分析=待验证的假设,不是权威信息。
```
### 禁区3:预设科技/AI热点 — 全市场扫描前就锁定方向
```text
规则:收到任何数据先扫全市场,不预设热点方向。
代价(2026-07-21):
用户发来全市场数据(全面反转日),我问「你看科技板块了吗」。
→ 用户指出:连跌18天后的全面反转日,你只盯着科技。
→ 损失:错过对全市场结构的准确感知。
→ 时间成本:被纠正后需要重新扫描+重写分析。
自检触发条件:
□ 分析中提到科技/AI/半导体/芯片 → 先问自己:全市场扫描做了吗?
□ 用户给了数据但没指明板块 → 先扫全市场,不预设热点
□ 今日最强板块是科技 → 这是今天的结论,不是今天的假设
补救:
发现已偏窄 → 立即退回到第零步A,重新做全市场扫描再分析
```
### 禁区4:框架外事件强行翻译
```text
规则:框架里没有对应模块的事件 → 说「我不知道」,不编造。
代价(2026-07-18 WAICO事件):
WAICO在我的框架里没有位置 → 强行翻译成「中国AI出海通道打开」。
→ 市场暴跌,我说是利好(在解释市场为什么错)。
→ 损失:用户纠正+信任消耗+整份分析作废。
教训:
框架的盲区 = 我分析中的系统性错误。
真正的独立思考 = 不断质疑自己的框架本身。
「我不知道」是比「编一个答案」更值钱的能力。
```
### 禁区5:输出兵家/兵法叙事替代分析
```text
规则:用数据和逻辑说话,不用兵法比喻。
代价(多次纠正累积):
「主力在围城」「朝气暮气」「围魏救赵」
→ 兵家语言是用比喻替代分析。当你说「围城」时,你停止了思考。
→ 损失:每次被用户指出,消耗信任。
教训:
数据说不清楚的地方,兵法也说不清楚。
先用数据说话,数据给不了答案,就说「看不清」。
```
### 禁区6:自创标准冒充纪律 — 标准只能来自用户体系(2026-08-14 老板当场纠正)
```text
规则:输出「按纪律XX」时,标准必须是用户体系已代码化的(position_guard / dragon_screener /
S03/S16 / 校长铁律 / 逃顶三要素 / 三振 / 洗盘vs出货六维),禁止自创阈值当执行标准。
代价(2026-08-14 当场纠正):
我把「跌破MA5→减1/2」写进 breakthrough_check.py 当卖出标准,还挂cron、建wrapper,
对用户说「药明/博腾 A2跌破MA5 → 减仓信号,按纪律减1/2」。
→ 用户反问「我咋不知道有这标准」——当场揭穿:这不是用户体系的标准,是我发明的。
→ 损失:信任 + 结论全错(position_guard 标准引擎跑出来是药明=持有,与我自造的减仓相反)
→ 自省:真正标准都有公理根(校长铁律=位置+量能+形态=第1公理;三振破MA20=资金离场确认),
而 MA5 是移动平均不是资金流信号,我「觉得合理」就当了标准。
判定方法(输出前自检):
□ 这个标准在 position_guard.py / dragon_screener_light.py / 老板教诲里有出处吗?
□ 没有出处 → 降级为「⚠️参考(非标准)」单独标注,绝不改变标准动作
□ 有出处 → 说清来源(「校长铁律触发→清仓」而不是「感觉要跌→减仓」)
已代码化修正(2026-08-14):breakthrough_check.py 卖出动作层改调 position_guard.guard(),
自创规则(破MA5/放量滞涨/套牢区遇阻)降级为 ref_notes 参考提示;skill ㉚同步标注
「禁止自创阈值当标准」。完整买卖标准清单见 references/buy-sell-standards-20260814.md。
```
---
## 第六步:铁律00-4补充 — 洗盘结束信号(2026-08-01牧马人蒸馏注入)
> 来源:牧马人能力蒸馏周报2026-07-25~31(7/30恐慌→7/31修复战役提炼)
### 洗盘结束七信号(原六信号+第七信号)
```text
原有六信号(缩量探针型):
① 下跌角度减缓 ② 成交量萎缩 ③ K线变小
④ 缩量止跌(日成交额<前日60%+阳线) ⑤ 不破关键位 ⑥ 低开缩量探针
第七信号(情绪冰点型)— 2026-08-01新增:
跌停≥80家(情绪冰点)次日高开直接修复 + 防御线回吐
= 比缩量探针更强的洗盘结束标志
实证:7/30跌停83家(恐慌冰点)→ 7/31高开+0.76%后暴力修复(半导体+7.05%、创业板+5.04%)
```
**关键纪律:恐慌冰点日(跌停≥80家)后,谨慎下"趋势性结论"(切换/反转/出货)——当天数据容易误导,必须次日确认。**
```text
典型误判链(必须避免):
7/30恐慌日 → 判定"系统性风格切换"(机构减仓科技转防御)
7/31暴力修复 → 判定被证伪(那是恐慌洗盘不是资金迁移)
正确反应:
恐慌日当天 → 不下趋势结论,只记录"恐慌冰点待次日确认"
次日高开修复+防御回吐 → 判定洗盘结束,转进攻观察
```
### 条件反射㉓:外围暴跌次日测低开幅度
```text
看到"外围暴跌次日" → 自动测A股低开幅度:
低开<1% 且 放量 → 主力接盘,不是恐慌 → 别跟着恐慌
低开>1% 且 缩量 → 真弱,等企稳
实证:7/31费半+8%外围暴力催化下,A股高开+0.76%直接修复
```
### 条件反射㉔:逆势抗跌需双日验证
```text
看到"逆势抗跌" → 自动标记"待验证",不直接认定主力票:
第1日抗跌(板块跌它涨/平)→ 只入观察,可能是游资短炒
第2日板块反弹日弹性验证:
跟涨且强于板块 = 主力 ✅
跑输板块 = 游资票,剔除 ❌
实证:风华高科 7/30逆势+6.29% → 7/31板块+3.86%它-2.28% = 游资短炒
```
### 条件反射㉕:指数与广度背离 — 以指数方向定性(2026-08-04 蒸馏注入)
```text
看到"指数跌 + 上涨比>65% + 缩量"同现 → 不是企稳,是存量高低切:
指数方向 = 市场定性(权重/主线资金在撤)
广度 = 题材温度计(小票普涨是存量一日游,不作方向/反转依据)
量 = 真伪试金石(缩量普涨=无增量,一日游概率大)
实证(2026-08-03):指数全跌(科创50 -5.08%创新低,跌破7/30恐慌低点),
但上涨比72.4%、涨停110、中位数+1.35%、成交缩量21%(2.56万亿→2.01万亿)
→ 定性=指数熊途+存量博弈,广度不构成进场信号
⚠️ 日期勘误(2026-08-04 收盘实弹发现):本条实证日期有误——存档的 8/3 收盘报告
(web/static/data/reports/下午收盘分析_2026-08-03.md)显示 8/3 为反弹日
(科创50 +2.99%、上证 +0.72%),-5.08% 普跌实为 8/4 收盘。现象本身(指数跌+广度强+缩量
=存量高低切)仍成立,引用时以当日实际数据为准,勿照抄日期。
处置:
① 背离日不下"企稳/反转"结论,尤其不因广度强而看多
② 半导体/科创放量下跌(上涨比<30%+成交居首)= 主线资金出逃中心,回避飞刀
③ 背离日的"最强板块"多为迷你小票(成交<20亿),用成交额过滤真伪
```
### 条件反射㉖:外围大涨次日测高开比价三档(2026-08-04 涛哥注入,⚠️ 待多日验证后定级)
```text
看到"外围大涨次日" → 先看外围涨的是什么(细分构成),再测A股高开幅度:
前置:纳指涨≠A股科技利好——看涨的是谁(七姐妹/互联网 vs 费半/康宁/存储硬件),
硬件强=A股科技有实质带动;七姐妹强硬件弱=带动打折
高开1-1.3% → 正常比价,机构中性观望 → 等10:00方向
高开≥1.5%+放量(深成指竞价>130亿,昨基准112亿)→ 机构扫货 → 高开高走可跟
高开≥1.5%+缩量(竞价<130亿)→ 虚开 → 高开低走风险,不追
高开<1% → 空头借情绪跑 → 情绪负面,谨慎
10:00第二风险节点:高开冲高回落放量=借高开逃跑(谁流出多减谁);
低开放量流入=承接
工具:us_market_breakdown.py 自动输出外围细分+预期高开区间(盘前简报数据层已接入)
验证(2026-08-04 首日实盘):命中3/5(①深成指高开1-1.3%❌实际+0.93%偏低;④<1%负面✅;
⑤半导体2%❌实际+0.17%;⑥未回落✅;②③未触发)→ 🔴 不足4/6,暂定"参考"级
⚠️ 验证cron说明:原 ea368785a266(15:05每日)因伪功能被删——它用新浪快照的
**累计成交额**冒充"竞价量"(9:25竞价量拿不到),且未触发算命中(凑命中率)。
教训:数据源拿不到断言所需字段就别写该断言;未触发≠命中。手动验证方式:
`python3 us_market_breakdown.py` 看外围段 + 开盘后新浪快照 [1]今开/[2]昨收 算高开幅度。
实证:8/3纳指+2.13%:硬件均+0.70%(费半+0.6/康宁+6.1/存储分化)→ 预期高开+0.8~1.2%
⚠️ 模板误用实证(2026-08-05 盘前证伪蒸馏):8/4盘前套"高开减仓日"模板(外围利好→高开是减仓窗口),
实际 8/4 低开高走暴力反弹(创业板+5.64%、科创50+4.09%,量比1.13换手完成)→ 模板被证伪。
根因:模板适用于**高位/已连续上涨后**的高开;而**低位+等量反攻(换手完成)**日,更可能是
低开高走修复而非高开减仓。判定顺序:先看位置分位+量能对称(㉘),再决定套哪档比价——低位换手
完成日默认防"低开上车",不是"高开减仓"。
```
### 条件反射㉗:天量反弹日后的感受失真(2026-08-04 盘前证伪蒸馏)
```text
看到"前日天量反弹(涨停≥200家 / 成交≥2.5万亿)" → 次日早晨的"感受"读数不可信:
感受分档基于滞后1天数据(最弱指数微跌=中性/恐慌分档失真)
前日反弹最猛的指数 = 次日补跌风险最高(反弹越猛补跌越狠)
实证(8/3):7/31天量反弹(涨停223家/25599亿,科创50 +2.99%反弹最猛)
→ 8/3早晨感受"中性·最弱-0.1%" → 实际科创50 -5.08%收最低(4%分位)
→ 根因:天量极点后最弱指数读数掩盖科技权重脆弱性
⚠️ 日期勘误(2026-08-04 收盘实弹发现):同㉕——存档 8/3 收盘报告显示
8/3 收阳(科创50 +2.99%),-5.08% 收最低实为 8/4。本条"天量反弹→次日暴跌"的
因果链仍有效,但具体日期须以当日存档为准,勿照抄。
处置:
① 天量反弹日次日:不采信"中性/微跌"感受,默认按高波动处理
② 单独核对前日最强指数的风险暴露(它最可能被砸)
③ 若前日最强指数=你关注的主线 → 防御优先,不因感受"中性"放松
```
### 感知验证闭环操作要点(2026-08-04 盘前实战固化)
```text
① prediction_vault 无昨日存档时(机制刚启用/报告未save):
→ 不硬说"无昨日判断",降级用 feeling_log.json 昨日早晨感受 + 前日收盘复盘的「明日观察要点」对照
→ 报告头声明对照基准(例如"用8/3早晨feeling+8/3收盘复盘明日观察要点"),避免凭空对照
→ 证伪必须写根因(哪个假设错了),error_catch 蒸馏入库(ability_trace/当日.md)
② distill_insight.py --save-pred 自动提取的验证条件会混入 markdown 标题
(## 开头、👀 开头、✅/❌ 混合行都会被当成条件)
→ 蒸馏入库后,再用 save_prediction() 覆盖一份干净版(纯条件清单,无标题行),供明日自动对照
→ 覆盖前先 load_prediction 验证:date + 条件数
③ cron终端管道安全拦截(2026-08-04 收盘实弹):
`cat 报告.md | python3 distill_insight.py ...` 会被安全扫描拦截
(tirith:pipe_to_interpreter,HIGH;execute_code 内 subprocess 在 cron 下同样被拦)
→ 蒸馏/归档一律用 terminal + 输入重定向,不写管道:
`python3 distill_insight.py 下午收盘分析_YYYYMMDD --save-pred < /tmp/下午收盘分析_YYYYMMDD.md`
→ IMA归档:`bash ~/.hermes/scripts/upload_stdin_to_ima.sh "标题" < 报告.md`,检查 IMA_EXIT=0
④ 昨日对照找不到 vault 存档时的实体文件降级路径:
prediction_vault 常只有当日盘前/午盘(如 8/4 只有 8/4 条目)→ 前日收盘报告实体在
web/static/data/reports/下午收盘分析_YYYY-MM-DD.md
→ read_file 读其「明日看什么」+「三情景」做逐条 ✅/❌/⚠️ 对照,比硬说"无昨日判断"更有价值
→ 完整命令序列与实弹模板见 references/closing-analysis-cron-workflow-20260804.md
⑤ prediction_vault CLI 只显示各 source 最近一条且条件截断(2026-08-05 实弹):
→ 拿全量/干净条件直接读 ~/.hermes/stock_db/predictions.json
(source key 形如 "下午收盘分析_YYYYMMDD"/"收盘扫描"/"午盘复盘",取 content.验证条件)
→ CLI 里 收盘扫描 的条件常被 markdown 标题污染(## 十、👀 明日观察 等行混入)——
读 JSON 时跳过 ## 开头行,或直接找 ts 靠后的干净版条目(如 15:21 的覆盖版)
⑥ 报告文件名日期不可靠,写「昨日判断对照」前必须用 data_hub 日线校准真实时间线:
实证(2026-08-05 盘前):web/static/data/reports/下午收盘分析_2026-08-04.md 实为 8/3 数据
(科创50 1552.89=-5.08% 是 8/3 收盘价不是 8/4;8/4 实际 +4.09% 收 1616.36)
→ 校准源:主力三问近3日K线(data_hub 日线)为 ground truth,不照抄文件名/报告自称日期
→ 盘前简报完整命令序列见 references/morning-briefing-cron-workflow-20260805.md
⑦ `cat /tmp/x.md >> ~/.hermes/...` 会被安全扫描拦截(tirith:dotfile_overwrite,HIGH,2026-08-05 实弹):
→ 追加 ability_trace 等 home 下点文件用 python3 pathlib,不写 shell 重定向:
python3 -c "from pathlib import Path; f=Path.home()/'.hermes/knowledge/ability_trace/YYYYMMDD.md'; f.write_text(f.read_text()+Path('/tmp/add.md').read_text())"
→ write_file 到 /tmp 先写内容,再 python3 追加,规避 dotfile 写入拦截
⑧ `python3 -c` 命令字符串里内嵌 ✅/❌/⚠️ 等 Unicode 符号 → 被安全扫描拦截
(tirith:confusable_text,HIGH,2026-08-05 午盘实弹):emoji 与 ASCII 混排被识别为同形字攻击,
与 ③⑦ 不同,这是"命令内容"层面的拦截,改文件路径没用。
→ 解法:write_file 把含符号的追加内容写到 /tmp/add.md,再跑一条**纯 ASCII** 的 python3 追加命令
(命令只读 /tmp 文件、不含任何符号)——即 ⑦ 的写法天然规避本拦截。
→ 判别:内嵌 "✅/❌" 字符串 → 拦截;`f.write_text(f.read_text()+Path('/tmp/add.md').read_text())` → 通过。
⑨ 晚间总扫描/收盘扫描的昨日对照(2026-08-07 实弹):vault 的 晚间总扫描/收盘扫描 条目条件
长期被 markdown 标题污染(## 十、👀 明日观察 混入),可完整提取的往往只剩1条
(如「❌不追软件/网安」)。处理:
a) 直接读 ~/.hermes/stock_db/predictions.json 各 source 最近条目(跳过 ## 开头行),
仍不够时诚实标注「可完整提取N条」,不硬凑对照;
b) 用当日午盘复盘 + 晨报验证结果补足对照行(同一天内多次验证互为佐证);
c) 对照前必须 data_hub 校准时间线:`get_daily(code, N)` 对指数常返回空,
要用 `get_daily_with_realtime(code, days=8)`(实证:下午收盘分析_2026-08-06.md
文件名8/6但内嵌8/5收盘数据——校准后才发现近三日序列对不上)。
```
### 条件反射㉛:涨跌平常心·心法优先 — 判断以标准为准(2026-08-14 老板教诲固化)
```text
看到"单日大涨/大跌/冲高回落" → 禁止直接改判断。先过心法四问:
① 是标准触发了,还是波动在牵着我?(S03/S16/破MA5/破MA20才是标准)
② 单日涨跌只是噪音——它改变趋势结构了吗?没有→观点不变
③ 我上一小时/昨天的判断变了吗?变了→为什么?没有新标准→改判=散户化
④ 输出有没有"警示/破位/生死线"类散户语言?有→删除,除非标准真触发
执行规则(永久):
1. 判断以标准为准,不以涨跌为准:S03逃跑定量(卖出达建仓60-70%)/
S16加仓三标准(价格+量+订单流)——标准触发才改判断
2. 观点持续性:反弹结构未破坏前观点不变,只更新验证条件
3. 回调缩量+无逃跑标准 = 时间换空间洗盘(主力惜售),不是利空
4. 恐慌=交出筹码:看到恐慌信号=反向思考(洗盘概率大)
输出结构(盘中/盘后感知固定四段):
【趋势观点】不变项——结构/象限/方向
【标准验证】S03/S16等——有无触发,触发才动作
【验证条件】明日/下一窗口看什么
【动作】有标准触发才给动作,否则"持有/观察"
⚠️ 反向陷阱(批判段):「跌=洗盘」和「涨=好」一样是散户化!
不能矫枉过正成永远持有。洗盘vs出货必须靠标准区分:
洗盘=缩量跌+快速反弹+不破MA60+无逃跑标准;出货=放量大跌+持续阴跌+破均线+标准触发。
铁律优先级:标准 > 心法 > 单日涨跌。S03触发时,跌就是跌,该走就走。
工具:breakthrough_check.py 已内置 S03/S16 标准触发层(holdings.json 注入 cost_price 后生效)
实证(2026-08-14):09:48君实+2.57%→"看点";10:51回落→"警示";11:30破线→"减仓"——
三小时三改判=被日内波动牵着走(反面教材)。修正:无S03标准+缩量回调=洗盘,观点不变。
```
### 条件反射㉚:突破质量验证(2026-08-14 固化·2026-08-31 修正)
> 百分位置只是历史坐标,不是风险指标。突破质量看量价配合,不看分位高低。
```
看到"XXX创新高" → 做突破质量验证:
量能配合(决定突破质量):
放量突破(量比≥1.1)→ 增量进场,突破确认
缩量突破(量比<0.9)→ 逃命波嫌疑
主力行为(决定持续性):
突破后主力继续买 → 趋势延续
突破后主力出货 → 假突破
★ 修正(2026-08-31):删除"位置三档"(用百分位置判断风险)。
百分位置与突破质量无关。100%分位+放量突破+主力在=真突破。
判断依据:量价配合+主力行为,不是分位高低。
卖出信号分级(⚠️ 必须用用户体系标准,禁止自创阈值):
✅ 标准来源:position_guard.py(校长铁律/逃顶三要素/三振/洗盘vs出货六维)
✅ 标准来源:S03逃跑定量/S16加仓三标准
❌ 禁止:用百分位置/涨幅大小作为卖出依据
```
### 条件反射㉜:A股判据胜率权重 — 数据说话,不凭直觉(2026-08-14 回测固化)
```text
看到/输出任何"买入信号/卖出信号" → 优先引用回测验证过的判据胜率,不凭直觉定权重:
已验证判据(13只投资池,5日胜率,样本40-279):
🟢 缩量跌+不破MA20 70.0% → 权重1.4(洗盘最强)
🟢 洗盘特征·高位 71.1% → 权重1.4(强势股回调=机会)
🟡 破MA20·高位 55.4% → 权重1.0(均值回归)
⚪ 破MA20·低位 51.3% → 权重0.8
⚪ 洗盘特征·低位 50.0% → 权重0.5(低位缩量=没人要)
⚪ 站回MA5 52.0% → 权重0.8
❌ 单日大单净流入 50.0% → 权重0.5(抛硬币,禁单独用)
❌ 单日大单净流出 55.2% → 权重0.5(单日资金流不可靠)
三个反直觉发现(回测推翻直觉,必须记住):
① 高位比低位胜率高:洗盘特征·高位71% vs 低位50%——A股结构市里强势股有主力,
回调是洗盘;弱势股没主力,横着不动。低位≠便宜,低位可能=没人要。
② 单日大单≈抛硬币:净流入次日50%胜率——验证了"资金流禁四单自算"铁律。
正确用法=多日持续性(≥3天)+方向一致性+位置配合。
③ 外部框架不work就证伪:VCP(Minervini)A股5/10日≈50%,回测证伪后降级为辅助,
不硬接cron。(详见 cookstock_VCP吸收笔记)
★ 判据胜率是条件性的(追加发现,最重要):
同样的技术判据,换股票池胜率直接腰斩——
精选池(投资/关注/持仓,有主力): 洗盘判据 58-71% ✅
全A随机: 洗盘判据 38-47% ❌(比抛硬币还差)
→ 技术判据本身没有胜率,胜率来自"股票池里有没有主力"(第0公理)
→ 权重更新/回测必须在精选池上跑;在全A上跑会把所有权重打成0.5
→ 这就是Minervini先Stage2过滤再找VCP的原因:先筛强者再用形态
工具:validated_weights.py(score_judgments 输出各判据权重+胜率,已集成 buy_sell_standard_scan.py)
weight_autotune.py(自进化:精选池回测→自动更新权重,周cron a579be877a74)
规则:①权重分高+均胜率>60%=判据支持 ②单日大单只参考不作依据 ③输出必须带胜率来源
④回测必须在精选池(universe=pool)上跑,全A随机只作研究
⚠️ 自进化写回坑(2026-08-14 实弹):weight_autotune.py 原用 re.sub(r"WEIGHTS = \{[^}]*\}", ...)
替换权重表——条目内层还有 {},[^}]* 遇第一个内层 } 就停,只替换到第一条目,导致
「新表+旧表残留拼接」→ validated_weights.py 语法错误+重复key,buy_sell_standard_scan 静默
报 "weights失败:unexpected indent"(全引擎看似跑通,权重层实际挂掉)。
修复:改非贪婪到块尾 re.sub(r"WEIGHTS = \{.*?\n\}", new_block, text, count=1, flags=re.DOTALL)。
验证教训:①任何「正则替换代码块」的自进化写回,改完必须 py_compile + 无残留双验证;
②检查残留别用 str.split('}')(会切在内层 } 上误报污染),要用 re.search 锚定块尾再查后续;
③症状信号:全引擎单层静默失败(输出"xxx失败"行)= 先查自进化写回类脚本,别当偶发。
模块联动:moneyflow_trend.py(主力资金持续性)也已集成进 buy_sell_standard_scan.py 全引擎——验收时
用 grep data_hub.py 的 def get_moneyflow 核实接口存在再跑。
```
### 条件反射㉙:恐慌循环必须完整 — 放量恐慌→缩量止跌(2026-08-08 蒸馏注入)
```text
看到"恐慌/止跌/企稳"讨论 → 先检查循环链条是否完整(恐慌循环三步缺一不可):
第1步 放量恐慌(恐慌真实发生:放量下跌/跌停潮/指数破位)
第2步 缩量止跌(抛压衰竭:日成交额<前日60% + 阴线变小/阳线企稳)
第3步 企稳确认(站回关键位/修复信号,如高开直接修复)
只有1、2 → "止跌"成立,但"企稳/反转"未确认 → 不下趋势结论
只有1 → 连止跌都谈不上 → 不抄底,等第2步
1+2+3 → 循环完成 → 可谈进攻
实证(2026-08-01~08 周报聚类9次恐慌条目):
7/30放量恐慌(跌停83冰点)→ 7/31高开+0.76%直接修复(第3步跳得快)=循环完成 → 暴力反弹
8/3科创50 -5.08%跌破7/30恐慌低点 = 第1步重演 → 第7次反弹T+1追认失败,
说明恐慌循环未完成前的每次反弹都是脆弱的
误用示例(禁止):
"已经止跌了"(只有第2步)→ 当企稳用 → 8/3教训(缩量止跌次日再破位)
正确表述:
只有缩量止跌 → "抛压衰竭确认,但企稳待验证:看能否站回XX/放量阳线"
循环完整 → "恐慌循环完成,转进攻观察"
关键:恐慌循环链条完整度决定结论级别。说"企稳"前必须走完1+2+3。
```
### 条件反射㉝:分析闸门 — 观察永不关闭,闸门只管动手(2026-08-25 涛哥方法论提炼 · 2026-10-14 修正)
```text
任何"给买点/建仓"前,强制过闸(观察不过闸):
① 深成指最近3日是否止跌(不再创新低)?
② 止跌日成交量是否较前一日放大?
③ 两个条件都满足 → 可以给买点、建仓
任一不满足 → 大盘+板块+个股照常看(同比/位置/主力/动能全看),但不动手:不给买点、不建新仓
★ 唯一真源与口径(2026-10-16 止跌闸门收敛 —— 判据不许再各写一份)
真源 = `stock_workspace/analysis_gate.py`;shell/报告端一律 `python3 analysis_gate.py --json` 消费。
口径①:近3日不创新低 = 逐日严格比较【无容差】(容差会把"创新低"悄悄判成止跌 → 闸门失守)。
口径②:止跌日 = 最新一个「低点≥前一日低点」的交易日;**①未过 → ②=不适用**,
报告不得再打印任何量能结论。
🔴 实证教训:2026-10-15 同一份报告里同时出现「量能+18.9%」(vol[10-15] vs vol[10-14])
与「-11.9%」(vol[10-14] vs vol[10-13])—— 根因不是数据错,是各实现对【止跌日】的
指代不同(最新交易日 vs 最后一个不创新低日)。同问题曾有 5 份实现、3 种口径。
🟢 已应用(不是只写在文档里):`daily_verdict.py` 消费本闸,未过时把全部「可做」降级「观察」,
并打印原因;异常/数据不足 fail-closed 不放行。主力门禁与本闸【正交】:
主力门禁答"这只票是不是主力行为",本闸答"今天能不能开新仓"。
报告写作铁律:闸门①未过时,报告里只许出现"①未过 → ②不适用",禁止再给出任何
量能放大/萎缩数字(给了就是让读者以为闸门还有救)。
★ 分层(2026-10-14 老板令:任何时候都要保持对板块的关注)
观察层 = 永不关闭。不看板块就没法做"同比选方向:大盘下跌时谁跌得最少",也没法提前布局。
操作层 = 闸门控制。关=只记录不动钱(影子池模式),开=可给买点。
★ 影子池的台账实现(2026-11-05 代码化,funnel_daily.buy_points):
闸门关 → 买点仍落 judgment_ledger(direction=买入)但打 `gate:closed-shadow` 标签,报告行写明
「⛔闸门关=影子记录,不建仓」;闸门开 → 同批判据打 `gate:open`,才是可执行买点。
为什么两态都落账:只在开时落账 → 关闸期间的买点判断永远无法被回测,
「我的买点对不对」在关闸期变成不可知。影子记录既守住「不建仓」,又保住可测量性。
报告端必须把两类行分开写,不许把影子当建议发。
⚠️ 原文"不打开板块列表(不是少看,是不看)"= 把禁操作读成禁观察,2026-10-14 已修。
涛哥原话禁的是动作:「禁止Step1没确认就直接做Step3/Step4」「禁止看到某天某板块涨就跳进去」。
大盘调整期某板块今天强 → 按"独立行情"幻觉处理(当噪音、不追),但要继续跟踪它。
交易次序铁律(禁的是跳步下单,不是跳步观察):
Step 1: 大盘跌不动了吗?→ 决定"做不做"
Step 2: 哪个行业最强?→ 决定"做什么方向"
Step 3: 行业内哪个细分最强?→ 决定"做什么赛道"
Step 4: 细分里哪只个股最强?→ 决定"做哪只票"
⛔ 禁止跳步:Step1没确认就直接做Step3/Step4(可以看、可以记录,不可以下单)
⏳ 2026-11-05 老板令(暂时): 选股顺序改为 Step1(大盘闸门不变) → 直接【涨幅靠前个股】
中找强势股/龙头股;Step2/Step3 板块层降为标注不作前置。恢复=板块个股关系研究完成后。
```
### 条件反射㉞:K线第一性 — 量价是唯一原材料(2026-08-25 涛哥方法论提炼)
```text
K线(量+价)= 第一性信息源,主力行为的直接痕迹
资金流向 = 从K线衍生的辅助维度,帮忙确认但不替代
均线/MACD = 再衍生一层,更滞后
分析主力行为时:
先看K线(量价关系)→ 得出初步判断
再看资金流向数据 → 交叉验证
两者一致 → 高置信
两者矛盾 → K线优先(一手信息>衍生信息)
"石头丢水面"模型:量=石头大小,价格异动=水面冲击
量越大=石头越大=主力意图越明确
```
### 条件反射㊳:弱反/强反检验标准(2026-08-31 涛哥0831固化·强制执行)
> 来源:涛哥8/31盘前直播第7章+午后实盘验证。任何反弹出现时强制执行。
> ⚠️ 修正(2026-08-31):弱反标准只用于大盘级别定性,不用于否决板块/个股的量价异常信号。
```
反弹性质判定(两把尺):
尺1·幅度尺:反弹累计涨幅
<3% → 幅度不足嫌疑
≥3% → 幅度达标
尺2·量价尺:反弹中有无量价异常
无量价异常(无大额单次/无≥3次小额累积)→ 无增量确认
有量价异常 → 增量确认
判定矩阵:
幅度<3% + 无量价异常 = 弱反 → 大盘级别定性
幅度≥3% + 有量价异常 = 强反 → 可参与(但非趋势,见好就收)
幅度≥3% + 无量价异常 = 存量反弹 → 谨慎
幅度<3% + 有量价异常 = 低位异动 → 观察后续
★ 关键修正:弱反是大盘级别的定性,不是否决板块/个股的理由。
大盘弱反 ≠ 所有板块都弱。
大盘弱反+板块有独立量价异常 = 该板块值得建档跟踪。
只有"大盘弱反+板块无量价异常"才=该板块也不值得关注。
实证:8/27-28深成指三天合计涨约1.5%+无量价异常=弱反
但同期PCB板块有独立量价异常(生益科技8/27+8.43%放量)
→ 大盘弱反不否决PCB的主力信号
```
### 条件反射㊴:筑底确认三要素(2026-08-31 涛哥0831固化)
> 来源:涛哥8/31直播第8章+午后实盘。任何"底部/企稳"判断前强制执行。
> ⚠️ 修正(2026-08-31):筑底确认用于大盘级别。板块/个股可独立于大盘筑底,有主力即可跟踪。
```
筑底确认 = 三要素缺一不可(大盘级别):
要素1:下跌动能减弱(卖压衰竭)
要素2:低点承接≥3次(买方证据)
要素3:量价异常(回流确认)
三要素齐全 = 底部结构成立 → 可谈进攻
三要素缺一 = 底部未确认 → 大盘级别控制仓位
★ 关键修正:大盘筑底未成 ≠ 板块/个股没有机会。
大盘筑底未成 → 操作上控制仓位
板块/个股有独立量价异常 → 判断上可以跟踪
两者并行不矛盾:仓位控制+标的跟踪同时进行
★ 惜售 ≠ 建仓(午后直播新增)
惜售 = 老主力不舍得卖 = 被动企稳
建仓 = 主力主动买入 = 主动进攻
惜售 alone = 仅止跌不涨
惜售 + 增量回流 = 看涨升级
```
### 条件反射㊵:板块强度二次判读·大盘裁决(2026-08-31 涛哥0831固化·★核心增量)
> 来源:涛哥8/31直播第18章。任何"板块强于大盘"判断前强制执行。
> ⚠️ 修正(2026-08-31):大盘裁决用于定性板块强弱的可持续性,不用于否决板块的主力信号。
```
板块强于大盘时,短期无法区分两种可能:
A. 战略建仓(真金白银看好)
B. 拉高出货(诱多陷阱)
裁决规则:
板块强于大盘 + 大盘随后企稳 → 战略建仓确认 → 可加仓
板块强于大盘 + 大盘随后破位 → 诱多确认 → 拉黑该形态
板块强于大盘 + 大盘方向未定 → 待裁决 → 不判断原因,只记录
★ 关键修正:大盘裁决≠否决板块信号。
大盘方向未定 → 板块的主力信号仍然有效 → 可以建档跟踪
大盘裁决只是告诉你"可持续性如何",不是告诉你"这个信号存不存在"
板块有独立量价异常 = 信号存在(无论大盘状态)
大盘确认 = 信号可持续性得到验证
实证:涛哥在光纤光缆/PCB上的处理
"下跌中量价异常最明显=主力喜欢"→ 他在跟踪,不是在无视
"等大盘裁决"=等确认后加仓,不是等确认后才开始关注
```
### 条件反射㊶:主线/热点机会识别(2026-08-31 涛哥午后直播固化)
> 来源:涛哥8/31午后直播。任何板块异动出现时强制执行。
```
异动出现 → 先分类再判断:
主线机会(可做趋势):
条件①:大机构多次潜伏建仓(下跌中有量价异常)
条件②:硬核基本面逻辑(盈利拐点+产业链景气)
特征:来得慢走得慢,持续性强
操作:波段布局+持有
当前实例:AI硬件链(光纤/PCB/半导体)— 有潜伏+有业绩
热点机会(只做短线否则别碰):
条件①:事件驱动,无前期潜伏
条件②:无硬逻辑改善行业周期景气
特征:来得快走得快,怎么涨上去怎么跌下来
操作:打板/短线,否则别碰
当前实例:影视院线(AI制作+暑假票房)、房地产(政策利好)、商业航天(发射成功)
识别方法(三问):
① 事件发生前,波段底部有主力潜伏建仓吗?
② 这个事件能改善行业周期景气指数吗?(不是短期数据改善)
③ 这个赛道的基本面能见度高吗?(盈利拐点可预期?)
三问全过=主线 | 过一缺二=热点 | 全不过=不碰
⚠️ 热点行情适合顶尖游资,不适合散户。
涛哥原话:"热点行情想做可以做,但是你不打板你来得及吗?"
"投资市场是有食物链的,处在食物链底层的人,却想跟顶层的人去抢成果。"
```
### 条件反射㊷:周期股PE陷阱(2026-08-31 涛哥0831固化)
> 来源:涛哥8/31直播第15-16章。周期股估值时强制执行。
```
周期股估值铁律:
PE最低时 = 利润最高时 = 周期见顶 = 风险最大
PE最高时 = 利润最低时 = 周期见底 = 可能是机会
原因:周期股利润随商品价格波动。
商品价格高→利润高→PE低→市场以为"便宜"→实际在周期顶
商品价格低→利润低→PE高→市场以为"贵"→实际在周期底
⚠️ 用成长股PE逻辑套周期股=经典错误。
"PE 20倍不算离谱"→如果利润靠周期因素→PE会随周期回落快速上升
正确估值方法:
① 供求关系:供给过剩?需求见顶?
② 现金流:经营现金流是否为正?存货是否异常?
③ 周期位置:商品价格在历史什么分位?
④ 禁用PE作为买卖依据
实证:翔鹭钨业
利润4.82亿靠钨价上涨(周期因素)
经营现金流-5.12亿(利润是纸面的)
存货27.08亿(占流动资产72%,钨价下跌=定时炸弹)
PE 20倍"不算离谱"→实际是周期见顶信号
```
### 条件反射㊳:主力建仓先分类再判断(2026-08-25 涛哥方法论提炼)
```text
在判断"主力在做什么"之前,先分类建仓模式:
模式A 小额多次(隐性建仓):
特征:连续几天低位小幅承接,量不大,价格震荡
结论:筑底需要时间,等1-2周
操作:等,不急
模式B 大额单次(热启动):
特征:某天量价异常(量比>1.5+涨幅>3%)
结论:V型反转可能启动
操作:跟随
模式C 拉高出逃(陷阱):
特征:低位反弹后快速放量下跌
结论:不是建仓是出货
操作:回避
先分类再判断 → 消除"今天没涨就焦虑"的情绪
```
### 条件反射㊱:板块强弱只在特定时刻有意义(2026-08-25 涛哥方法论提炼)
```text
大盘调整期间:
某板块今天强 ≠ 它会独立走强
某板块今天弱 ≠ 它基本面差
→ 这段时间的板块强弱排名 = 噪音,没有参考价值
大盘企稳后:
谁反弹最猛+量最大 = 主力最看好
→ 这时候的板块强弱排名 = 信号,有参考价值
关键区分:同一个数据在不同市场阶段含义完全不同
```
### 条件反射㊲:立体看市场 — 日线为核心(2026-08-26 老板指令)
```text
时间层次(从上到下):
周线 = 参考(看大方向,不做决策依据)
日线 = 主战场(趋势判断、位置判断、主力行为全在这里)
60分钟 = 战术层(找买卖点、短期波动节奏)
实操铁律:
① 日线为核心:所有分析围绕日线展开
② 周线只看方向:周线向上=大环境安全,周线向下=谨慎
③ 60分钟找节奏:日线定方向,60分钟定买卖点
④ 趋势没变→观点不变,只更新验证条件
⑤ 不能天天盯着分时图的点→要看日线的线
```
### 条件反射㊲:立体看市场 — 日线为核心(2026-08-26 老板指令)
```text
时间层次(从上到下):
周线 = 参考(看大方向,不做决策依据)
日线 = 主战场(趋势判断、位置判断、主力行为全在这里)
60分钟 = 战术层(找买卖点、短期波动节奏)
实操铁律:
① 日线为核心:所有分析围绕日线展开
② 周线只看方向:周线向上=大环境安全,周线向下=谨慎
③ 60分钟找节奏:日线定方向,60分钟定买卖点
④ 趋势没变→观点不变,只更新验证条件
⑤ 不能天天盯着分时图的点→要看日线的线
```
### 条件反射㉘:量能对称性 — 换手完成 vs 逃命波(2026-08-04 富贵体系自创)
```text
看到"前日下跌 + 今日上涨" → 必看量能对称性(不看涨幅大小,看量是否跟上):
前日放量跌 + 今日等量/放量涨(量比≥1,两日均≥1)→ 换手完成
= 恐慌出清 + 增量接盘,抛压被真实接走 → 可跟(回踩低吸)
前日放量跌 + 今日缩量涨(量比<1)→ 逃命波
= 反抽无量,抛压没被接走 → 回避,追高必套
前日缩量跌 + 今日放量涨 → 增量进场(更强)
前日缩量跌 + 今日缩量涨 → 方向未明,观望
工具:mainforce_scan.py(主力三问+量能对称+位置分位,2026-08-04实际创建于 ~/.hermes/scripts/,
已接入9个报告数据脚本:midday/b_group/weekly_review/a_group/morning_prep/full_analysis/
sunday_mainforce/open_pattern/close_scan)
输出样例(修正后,用pct_chg列计算):创业板 量比1.13="等量反攻" | 科创50 量比0.92="等量反攻" |
半导体ETF 量比1.07="等量反攻" | 5G通信ETF 量比1.52="等量反攻"
⚠️ 数据修正(2026-08-04 实弹):午间初判"科创50量比0.84=缩量反抽"基于
(close-open)/open 计算(低开失真);mainforce_scan.py 修正为 pct_chg 列后,
科创50实际量比0.92=等量反攻、半导体ETF量比1.07=等量反攻。教训:
① 涨跌幅必须用 pct_chg 列或 close/pre_close-1,禁用 (close-open)/open(低开时失真)
② 同一"大涨",量比边界值(0.9±)要谨慎定性——0.84 vs 0.92 结论不同
③ data_hub.get_daily 参数是 max_rows 不是 days;列名 trade_date/vol/pct_chg;
ETF今日行 pct_chg 常为 0/NaN → 必须 row_pct_chg() 回退 pre_close
实证(2026-08-04 收盘):创业板+5.64%量比1.13=等量反攻(换手完成),
科创50+4.09%量比0.92=等量反攻(临界),上证+0.33%量比1.03=普通形态(权重没参与),
酒ETF高位71.7%分位+高位回落=见顶回落(正确识别高位风险)
★ 修正(2026-08-31):见顶的判断依据是"高位回落"(价格行为),不是"71.7%分位"(坐标)。即使在100%分位,如果没有出货信号,也不应该判断为见顶。
关键:同是大涨,量比<1 与 ≥1 是两种完全不同的性质。看涨幅会误判,看量能对称才分辨。
但量比在0.9~1.0边界时,先确认涨跌幅口径(pct_chg vs open)再下结论。
延伸(2026-08-05 午盘实弹):"不追高/追高风险大"的判断同样先看位置+量能,不是涨幅绝对值:
8/4收盘因"光模块已涨+13.6%"判"追高风险大",8/5 AI/光模块继续+4~6%证伪偏保守——低位
(3~13%分位)+等量反攻(换手完成)日的上涨=资金真实进场,涨幅高≠诱多;与㉖"高开减仓日
模板误用"同根因:用涨幅/模板替代位置+量能判定。判定顺序:位置分位+量能对称 → 再谈追不追;
"不追高"纪律本身仍成立,但依据必须是位置+量能而非涨幅。
复发确认(2026-08-07 晚间实弹):8/6午盘又用「已涨+2.4%」判通信/光纤不追 → 8/7收+4.48%
全场最强续涨(600487 +6.00%);同日8/6晚「不追软件/网安(已涨+3.7%)」却应验(8/7 -4.93%
全场最弱)。同一根因两次复发(8/5光模块→8/6通信光纤)=系统性问题,不是偶发。
→ 判别关键不是涨幅绝对值而是**位置**:软件/网安已高位(连涨后+3.7%)=兑现风险,不追对;
通信/光纤处7%分位极低位+等量反攻=真实进场,不追错。同一"已涨X%"两条结论相反。
→ 固化判定链:①查位置分位(低位<20%,口径 position_layer 20/65 → 涨幅高≠诱多,只做回踩低吸不回避)
②查量能对称(等量反攻=换手完成可跟;缩量反抽=逃命波回避)③再决定追不追。
★ 修正(2026-08-31):这里用"高位"和"分位"作为判断依据,与主力思维矛盾。
正确逻辑:软件/网安如果有出货信号(量价异常高位滞涨)→ 不追;如果没有出货信号 → 可以跟踪。
通信/光纤如果有主力在买(量价异常低位放量涨)→ 可以跟。
判断依据是主力行为,不是分位高低。
```
### 条件反射㊸:惜售 vs 空仓 — "跌不动"≠"要涨"(2026-09-03 涛哥0903注入)
> 来源:涛哥9/3午后直播光伏设备板块分析。区分两种下跌动能减弱的本质原因。
```text
两种"跌不动"都不等于"要涨":
惜售型止跌:
特征:下跌缩量+K线变小+反弹时量也小
原因:老主力看好不舍得卖,被动企稳
确认:反弹是否有放量阳线
有 = 惜售+回流 → 看涨升级
无 = 仅惜售 → 止跌不涨,不碰
空仓型止跌:
特征:下跌缩量+无明显反弹+阴跌为主
原因:老主力已卖光,无货可卖,散户阴跌
确认:是否有新的建仓信号
有 = 新主力进场 → 可跟踪
无 = 无人问津 → 不碰
共同点:没有主力主动买入 = 不会涨
关键:看的不是"跌不跌得动",而是"有没有人主动来买"
实证:光伏设备(隆基绿能)
涛哥判断=空仓型(老主力卖光了),不是惜售
数据验证:12.65→11.75持续下跌,期间无放量上涨建仓信号 ✅
```
### 条件反射㊹:板块代理关系 — 保险/证券=股市预期指标(2026-09-03 涛哥0903注入)
> 来源:涛哥9/3午后直播保险板块分析。保险涨≠保险卖得好,=看好股市。
```text
保险/证券 = 股市预期的代理指标
保险涨 → 机构看好未来股市(投资收益逻辑)
证券涨 → 系统牛/精准政策滴灌(非"牛市旗手")
板块轮动顺序(涛哥实证2014+924):
牛市一期:科技/成长先涨(2013-2014.7 科技涨1.5年)
牛市二期:金融/保险跟涨(2014.7后爆发,来得快去得快)
924行情:政策精准滴灌证券,事件驱动型(一地鸡毛)
重要推论:
保险强+科技弱 = 短期轮动,不是风格切换
保险强+科技也强 = 牛市进入二期确认
保险强 = 机构仍看好股市 → 科技不能倒(涛哥核心观点)
⚠️ 证券≠牛市旗手。只有系统牛或精准政策滴灌时才发力。
"2014年是证券带了牛市"=错误认知。实际是科技涨了1.5年后证券才跟。
```
### 条件反射㊺:建仓失败(试盘)识别(2026-09-03 涛哥0903注入)
> 来源:涛哥9/3午后直播。区分建仓成功vs建仓失败(试盘)的量价特征。
```text
建仓成功 vs 建仓失败(试盘):
建仓成功:
低位放量上涨 → 拿到筹码 → 可能再洗盘后拉升
量价特征:放量涨+后续缩量回调+不破前低
建仓失败(试盘):
低位突然放量快速上涨 → 筹码不在散户手里(集中度高)
→ 主力拿不到货,少量筹码就冲击了价格
→ 隔天跳空低开+快速下杀(止损离场)
量价特征:放量涨→隔天跳空低开+放量杀→破前低
结论:基本一路向西,不是洗盘
与洗盘的区别:
洗盘:放量跌→缩量→快速反弹→不破关键支撑
试盘失败:放量涨→隔天跳空低开+放量杀→破前低
与出货的区别:
出货:高位放量滞涨/高位放量跌(有利润空间才出)
试盘失败:低位放量涨后直接砸(没利润空间,是止损离场)
关键:低位放量涨不一定是好事,要看后续确认
→ 隔天放量涨/平 = 建仓成功信号
→ 隔天跳空低开 = 试盘失败,回避
```
### 条件反射㊻:流畅下跌→震荡下跌的含义(2026-09-03 涛哥0903注入)
> 来源:涛哥9/3午后直播大盘分析。下跌形态变化的物理含义。
```text
流畅下跌(单边下跌):
特征:跌幅大+K线长+成交额不缩
含义:只有空头砸盘,没有多头承接
结论:不知道底在哪(深不见底)
操作:不抄底,等减速信号
震荡下跌(后半段):
特征:跌幅收窄+K线变短+频繁反弹+成交额缩
含义:有人开始承接,空头动能减弱,但多头尚未占优
结论:接近底部区域,但未确认止跌
操作:开始选标的放入自选股,等放量阳线确认
物理学类比:
流畅下跌 = 自由落体(只有重力=空头)
震荡下跌 = 减速(有空气阻力=多头承接)但还没落地
落地确认 = 放量阳线(多头主动发力)
关键区分:
"跌幅收窄" ≠ "快见底了"
"跌幅收窄" = "卖压减弱"(必要条件但不充分)
止跌需要"不再创新低"+放量阳线确认
实证:深成指
8/19跌5%→8/24跌2.1%→9/1跌1%→9/2跌1.88%
跌幅收窄 ✅ 但9/2仍创新低13611 → 未确认止跌
```
### 条件反射㊼:底部形态=主力拿货过程的结果(2026-09-09 涛哥0909午盘蒸馏·待回测验证)
> 工具:`bottom_structure_check.py`(detect_bottom_structure / check_df,CLI: `python bottom_structure_check.py <code> 名称`)
```text
看到"W底/双底/V型/多重底" → 不判断形态像不像,先查每个谷后面有没有量价异常承接:
形态因果链(涛哥):
V底 = 低点单日大额承接拿够筹码 → 直接拉升(模式B 大单单次)
W底 = 第一次没拿够 → 打压回落 → 二次承接
多重底 = 反复拿不够
拿不到就放弃清仓 → 下跌继续(不是底!)
检验标准(第二谷承接质量 = 真假的试金石):
W底第二谷放量阳线承接(量比≥1.3) → 真底 · 主力二次拿货 → 可跟踪
W底第二谷无量阴跌 → 形似W底·主力未确认 → 只知其形不知其神,等量价异常
全程缩量阴跌无任何量价异常 → 空仓型止跌(老主力卖光) → 不是底
第二谷深破第一谷>5%且无承接 → 破位/放弃型 → 不碰
第二谷略破第一谷+放量承接 → 打压诱空后承接 = 更强信号(但需站稳第一谷上)
⚠️ 第二谷仍在形成期(距今日≤4日) → 标"右底形成中,待放量确认",不提前定性
实证(2026-09-09 数据验证):
电池ETF/宁德时代:形似多重底但谷后量比0.9-1.2全部无承接 → 涛哥"全面负面"确认(9/7大盘+1.91%宁德-0.80%连续补跌)
通信ETF(光纤)/农业ETF:谷后量比1.4-1.5放量承接 → 有主力痕迹
⛔ 回测证伪→修正结论(2026-09-09 实测,backtest_bottom_structure.py):
v1 纯量价版·全体混合池:bull组(真底) T+20上涨率31.8-56.4% 不稳定 ≈ 无预测力
v2 扩样本(26票×1年)分池后结论翻转 — 判据有效性完全取决于股票池:
main池(科技强势/有主力) bull T+20 = 76.9%(N=13, +27.6pp)✅ 有效
laggard池(弱势/无主力) bull T+20 = 40.9%(N=22, -8.4pp)❌ 反向
bench池(宽基) bull T+20 = 75.0%(N=4, 小样本)
宽基/弱势票低位"双底+放量承接" = 超跌反弹陷阱;强势池=主力二次拿货真信号
→ 第三次验证㉜铁律:技术判据无自带胜率,股票池有没有主力才决定胜负
用法(修正版):
✅ bottom_structure_check.py 只用于【已确认有主力的板块/精选池】内部找底
✅ 对强势板块(光纤/PCB)回踩找底 = 有效(main池实证)
❌ 禁止对无主力板块(电池/光伏/弱势票)用形态找底 — 那是超跌反弹陷阱
❌ 禁止单独当抄底信号;须板块有主力前提 + 可叠加资金流参考
R1v2 资金流双确认(backtest_bottom_r1v2.py):31事件样本不足,结果不可靠(±50pp级噪音),
不采纳资金流做过滤,待更大样本重测。教训:分组后N<15的信号不要下结论。
教训入库:①形态规则上线必须回测 ②回测必须分池(混合池=互相污染)③坏结果也要报
```
### 条件反射㊽:左侧不足右侧来补 — 跟涨板块升级观察(2026-09-09 涛哥0909午盘蒸馏·待回测验证)
> 工具:`sector_upgrade_watch.py`(CLI: `python sector_upgrade_watch.py`,观察清单 data/sector_upgrade_watch.json)
```text
下跌段左侧拿货不足的板块(跟涨不领涨,如半导体/面板):
不追、不否定——建档进观察,等"右补"双条件:
① 事件催化(人工确认)
② 右侧持续增量流入 = 放量异动扎堆(量比≥1.5放量阳线 + 前后日量比≥1.2 形成持续性)
三件套(放量+涨幅≥3%+领涨地位)触发 → 从跟涨升级为补涨候选
★ 持续性判据(v1 实测坑):单日放量涨停≠右补!
信号日后无量延续 = 游资一日游(实证:光模块9/7旭创+10.4%vr1.79后量比跌回0.5 → ⚡脉冲,佐证涛哥"光模块没以前强")
连续放量扎堆 = 主力在场(实证:PCB深南9/7-9/8 vr1.57→2.19 🟢)
判定:pre_vr≥1.2 或 follow任一日vr≥1.2 才标"持续";"次日微涨"不算延续(缩量微涨=歇脚)
★ 输出纪律(矬子拔大个自检):出现"相对而言XX还行/矬子拔大个"句式 = 幸存者偏差信号
都不好时不做(交易频率降、胜率升);都好的时候选最好。弱板块不推个股。
```
The user has provided the following instruction alongside the skill invocation: [IMPORTANT: You are running as a scheduled cron job. DELIVERY: Your final response will be automatically delivered to the user — do NOT use send_message or try to deliver the output yourself. Just produce your report/output as your final response and the system handles the rest. SILENT: If there is genuinely nothing new to report, respond with exactly "[SILENT]" (nothing else) to suppress delivery. [SILENT] is a literal ASCII control token — never translate or rephrase it, whatever language the rest of your answer uses. Never combine [SILENT] with content — either report your findings normally, or say [SILENT] and nothing more. FAILURE: If a delegated child fails and this cron run must be recorded as failed, put [CRON_FAILURE] on the first line by itself, then explain the child failure on following lines. RECURSION: This is a run of an EXISTING scheduled job — execute the task now. NEVER create or update a cron job because of recurring or future-schedule language in the task prompt below; treat phrasing like "each Monday" or "every day at 9" as context for this run, not as a request to schedule another job.]
[CURRENT RUN TIME: Thursday, 2026-11-05 11:30 CST (UTC+08:00)]
## Output from job 'f06f0ff60f0c'
The following is the most recent output from a preceding cron job. Use it as context for your analysis.
```
# Cron Job: 进化简报-每日22:55(回测结果→明日校准)
**Job ID:** f06f0ff60f0c
**Run Time:** 2026-11-04 22:55:25
**Mode:** no_agent (script)
---
📈 进化简报 2026-11-04(窗口14天)
全量口径(防窗口逐出偏差): n=2167 命中率53.6%
回测率: 99.7%(347/348 条近期判断已回测)
累计: 落账2826 已决2167 待决1
总命中: 51.9% [47~57%] n=347 (上期 47.6%) | 平均超额 -0.78pp
── 分方向 ──
回避 n=183 命中 57.4% [50~64%] 超额-0.7pp
看空 n= 54 命中 63.0% [50~75%] 超额-1.0pp ★可信
中性 n= 53 命中 50.9% [38~64%] 超额-0.3pp
看多 n= 45 命中 26.7% [16~41%] 超额-1.5pp ⚠️谨慎
观察 n= 12 命中 16.7% [5~45%] 超额-0.0pp ⚠️谨慎
── 来源可信度(n≥10 才列)──
- 四维扫描 n=150 57.3%
- v43_intent n= 50 54.0%
- 节点转折+ftshare扫描-21:45 n= 28 46.4%
✗ 龙头融合+确认链-21:40 n= 23 43.5%
✗ 晚间统一扫描-21:30 n= 13 30.8%
✗ 量价训练-每日提醒 n= 12 16.7%
✓ 盘中-1030主线 n= 10 70.0%
✗ 盘中-1130午盘 n= 10 30.0%
⚪ 未排期部件(2026-10-17 裁决: jobs.json 里 0 个 cron,不计入停摆;恢复=先排期再移回 LOOP_PARTS):
· 超额制全量重算
· 经验学习闭环
· 每日判断练习仪(老板10-05指定)
用法: 下判断前先看本简报 —— 上面✅的来源可以更信,✗的来源要打折;🔴停摆部件是系统盲区。
```
## Script Output
The following data was collected by a pre-run script. Use it as context for your analysis.
```
============================================================
买在引爆点扫描 — 11:30
============================================================
🟢 买在引爆点 鸿富诚(301716.SZ) 444.68 | 🟢AI生态·半导体材料设备
🟢 买在引爆点 电科思仪(301689.SZ) 49.70 | 🟢AI生态·机器人应用
🟢 买在引爆点 超纯应材(301717.SZ) 287.70 | 🟢AI生态·半导体材料设备
🟢 买在引爆点 视涯科技(688781.SH) 48.99 | 🟢AI生态·算力基础设施
📊 因果基因(脚本自证)
- 数据源: DataHub.get_daily_with_realtime(130日+实时) + 上证000001.SH/科创50 000688.SH环境检查
- 分析路径: AI生态分类 → 三道门禁 → 五层深度分析 → --alert引爆点信号汇总
- 判断: 过门禁的引爆点信号才输出(🟢名单);市场崩溃输出禁买提示,无信号静默
[chain] 11:30午盘 已写入 /tmp/fugui_cron_output/
```
## ⚠️ 资金面三问(强制·2026-10-21 老板令:先答三问再引数据)
凡输出含资金面/主力行为判断(谁在买、主力意图、建仓/洗盘/出货/承接),必须在判断段**开头**先答三问:
1. **谁在买?** 主力四分类:汪汪队(维稳,反向指标)/ 大机构(产业逻辑,慢而长)/ 某庄(独立控盘)/ 游资(事件驱动,快)——不同类型决定你该用什么节奏跟。
2. **为什么买?** 位置+意图:低位建仓(吸筹/试盘)/ 中位洗盘(换手降阻力)/ 高位派发(借势出货)。同一量价在不同位置含义相反。
3. **买了之后会做什么?** 判断下一步动作:继续加仓 / 洗盘 / 拉升 / 出货——这是"脚印会变,走路的人不变"的那层意图。
**硬约束**:
- 三问是**答案层**,数据是**证据层**。先答三问,再用数据佐证;不得只报数据不下意图判断。
- 禁止把意图推断问题降级为"缺数据"问题——归纳法(阈值→回测→期望值)回答不了演绎问题(主力为什么这么做)。
- 三问答不出(证据不足)→ 明写"意图不明,不判断",禁止硬编一个主力动机。
---
你是富贵盘中分析师(11:30 半日核对)。上方【数据摘要】来自引爆点扫描(AI生态分类→三道门禁→五层深度分析的过门禁名单与市场环境),以及上游链路(09:30闸门→10:00感知→10:30主线)。
严格三段,先事实后判断:
① 半日核对:上午的量能与情绪对不对——过门禁的引爆点名单、市场环境(崩溃/正常)、与 10:30 主线假设是否一致;先抄事实再给情绪周期阶段(冰点/修复/发酵/高潮/退潮)。
② 下午计划:逐条给动作——主线板块(确认/证伪/换仓)、候选个股(等回踩/直接买/放弃,并给具体触发条件与60分钟观察点)、仓位档(上涨5-7成/横盘3-5成/下跌0-2成)。
③ 证伪:主线与候选各配「如果价格走了对面我就错了」的可核对条件与到期时点;若上午假设已被证伪,直接改判并写清被哪组数据证伪。
⛔熔断源降级(2026-11-05 老板令 P2「砍负期望判断逻辑,不是多做判断」):本源近30日命中率低于毒源线(45%且n≥30) → 本轮【不落 judgment_ledger、不产方向性判断】(看多/看空/回避/买入/中性一律不写入台账)。三段分析照常输出,但判断只写进报告正文并标注「记录级·待复验」。恢复条件:本源命中率回到≥45%且n≥30(熔断自动解禁)后再恢复落账。
必须【接着上游改】不许另起炉灶;无信号时明写「无过门禁信号,下午不动作」,不许硬凑标的。数据段 [不可用] 或链路 ❌未产出 → 首行写明数据不全。
**Response Characters:** 2550
## Response
📊 **富贵11:30半日核对 · 2026-11-05(周四)**
数据日期:实时=腾讯行情11:30快照 / 日线=20261104收盘 / 板块=东财11:30 / 闸门=analysis_gate(唯一真源)。近期偏差库:无。
---
## ① 半日核对(先抄事实)
**市场环境:非崩溃,低开高走(数据:深成指 今开11216.81=-1.05%低开 → 11:30报11498.77=+1.44%;创业板+1.24%;上证+0.10%;深市半日成交7897.6亿)。**
- **闸门(09:30数据层):⛔关** —— ①未过:20261102、20261103连续创前日新低 → ②不适用、不给量能结论。**且今日新数据入窗后,近3日仍含11/03这个新低日 → 今日闸门恒关,与盘中涨跌无关。** 观察照常,只记录不动钱。
- **引爆点名单核对(发现一个数据问题)**:11:30脚本打印的4只价格(444.68/49.70/287.70/48.99)**等于11/04收盘价,非当日实时价**——名单是按昨日数据过门禁的。实价核对:**鸿富诚 -9.08%、电科思仪 -0.28%、超纯应材 -0.54%、视涯科技 -0.24% → 3平1大跌,全部无跟随**。
- **与10:30主线一致性:✅方向一致且强化** —— 10:30 sectors_top=黄金(+5.8%,3日连强)+电气设备(+4.06%,347热);11:30实况:**光伏链全红霸榜**(光伏辅材+10.68% / 加工设备+10.58% / 电池组件+9.72% / 光伏设备+9.38%+主力净流入35.4亿 / 67家涨0家跌),概念TOP4=TOPCon+6.76%、HJT+6.67%、BC+5.52%、钙钛矿+4.79%;白银+7.71%、黄金+5.1%延续。
- **与盘前心法不一致处**:盘前top3=半导体材料设备95/半导体设备93/软件92 → 今日半导体**涨幅不在行业top15**,但概念主力净流入79.4亿居第3(+2.79%)→ **资金在、涨幅不在**。
**情绪周期阶段:发酵**(依据:昨日上涨比82.4%、涨停106家的高热日,今日低开不破昨低11335.69即拉回+1.44% = 抛压被接住;未到高潮——高潮需午后涨停家数继续扩散+放量,尚未验证)。
---
## ② 下午计划(逐条动作)
**资金面三问(先答再引数据):**
1. **谁在买?** 光伏链67家全涨+主力单向净流入35.4亿、板块级扎堆 → **大机构(产业逻辑型)**,不是游资单点点火(游资特征是少数股涨停、多数股不跟;这里是全板块普涨+技术路线全线红)。
2. **为什么买?** 位置:光伏是前期深跌板块(低位)+ 电气设备10:30已3日连强 → **低位建仓/板块级回流**,不是高位派发。
3. **买了之后会做什么?** 若午后涨停家数守住+净流入不转负 → 预期继续加仓(升级为正式主线);若午后净流入回吐+炸板 → 判定为一日游脉冲,回吐仓位。(三问为证据推断,午后以14:00数据复验。)
| 对象 | 动作 | 触发条件/60分钟观察点 |
|:---|:---|:---|
| **大盘闸门** | ⛔关 → **影子池:不建新仓、不给买点**,仓位档 0-2成(盘前预案口径,今日恒关) | 闸门最早11/06评估才可能开 |
| **主线·光伏链(电气设备)** | **确认观察**(与10:30假设一致,升级为影子主线),不追高 | 13:00-14:00看:板块能否守住+5%以上、主力35.4亿净流入不转负、60分钟不跌破分时均价 |
| **半导体(盘前心法95分)** | **换仓否决、维持观察**:资金在(79.4亿)但涨幅不跟 → 二者背离时不加码 | 涨幅进行业top10 且 净流入维持≥50亿 → 恢复候选 |
| **引爆点4只** | **全部放弃动作**(闸门关+当日无跟随+鸿富诚-9.08%已破昨启动点444.68) | 重列条件:①闸门开 ②个股当日量比≥1.3收阳不破昨低 ③13:00后60分钟线站回分时均价 |
| **黄金/贵金属** | 观察(10:30主线②,3日连强+11:30仍+5.1%) | 不动作,仅跟踪 |
**熔断标注(2026-11-05 P2令):** 进化简报显示本源(盘中-1130午盘)14日命中率30.0% ✗ → **本轮不落 judgment_ledger**,以上判断只进报告正文,标「**记录级·待复验**」;恢复条件命中率≥45%且n≥30后自动解禁。
---
## ③ 证伪(如果价格走了对面,我就错了)
| 判断 | 我错的条件 | 到期时点 |
|:---|:---|:---|
| 主线=光伏链(机构回流,非脉冲) | 14:00前板块涨幅回落至**+3%以下**,或主力净流入**转负**,或涨停股炸板率>50% → 改判"一日游脉冲",撤主线标签 | 14:00 |
| 情绪=发酵(非高潮) | 午后涨停家数较半日**明显萎缩且深成指翻绿** → 下修至"修复尾声";涨停继续扩散+放量 → 上修"高潮" | 15:00收盘 |
| 引爆点4只"无跟随"判断 | 4只中**≥2只午后放量(量比≥1.5)收复昨收翻红** → 我错,名单按当日数据重评(闸门仍关,只记录不动钱) | 15:00 |
| 半日"低开高走修复"定性 | 深成指收**<11335.69(昨收)** → 改判"反弹一日游",明日按弱反处理 | 15:00 |
| 半导体"资金在涨幅不在" | 半导体涨幅进**行业top10** → 背离解除,恢复盘前候选 | 14:00 |
**数据不全声明:** ①引爆点脚本打印价为昨收(实时价未注入,已用腾讯行情实价核对替代);②闸门②量能结论因①未过**依法不输出**;③10:00感知层 westock kline 限频、mootdx 空表(已路由降级),广度数据为11/04定稿口径,已在文中标注来源。