← 归档索引 · 2026-10-20 23:18 · 信号纵向跟踪+反馈闭环-23:15(原23:30并入·2合1)
# Cron Job: 信号纵向跟踪+反馈闭环-23:15(原23:30并入·2合1)

**Job ID:** c85cc7fd1251
**Run Time:** 2026-10-20 23:18:52
**Schedule:** 15 23 * * 1-5

**Prompt Characters:** 7618
## Prompt

[IMPORTANT: The user has invoked the "script-output-integrity" skill, indicating they want you to follow its instructions. The full skill content is loaded below.]

---
name: script-output-integrity
description: 消费预跑脚本注入的数据时加载。先判数据真假再分析,识别假成功/降级/空段并标注完整度。
version: 1.0.0
author: Hermes Agent
license: MIT
category: fugui
tags: [data-integrity, silent-failure, consumer-side, cron]
metadata:
  hermes:
    tags: [data-integrity, silent-failure, consumer-side, cron]
    related_skills: [silent-failure-defense, pan-gan-signals]
---

# 消费脚本输出 —— 先判真假,再分析

> 面向**读**注入数据的人(分析 cron),不是**写**脚本的人。
> 建造侧(怎么写不产生假成功)看 `silent-failure-defense`。

## When to Use

```
□ prompt / 上下文里出现「预跑脚本输出」「Script Output」「以下数据由预跑脚本采集」
□ 要用脚本采集的数据做判断、写报告
□ 某段数据看起来"有内容"但可疑(一行字样、空段、括号里的说明)
```

## 铁律:数据段先过完整性,再进入分析

**禁止把「缺失/降级」当作「正常数据」分析。** 缺失要标注,不要脑补。

### 识别清单(按严重度)

| 形态 | 真实含义 | 动作 |
|---|---|---|
| `xxx.sh: timeout` | **该段根本没跑**(不是"超时所以没数据")。典型是 `timeout N cd` 类缺陷 | 该段判为【零数据】,禁用其做主力判断 |
| `failed to run command '...'` | 内建命令被 timeout 包住 → 整段从未执行 | 同上 |
| `Traceback` / `ModuleNotFoundError` | 该段完全不可用 | 同上 |
| `❌<名> 失败(rc=N)` | 该段采集失败(已诚实上报) | 标注缺失,相关结论降级 |
| `(xxx不可用)` / `[超时]` / `数据采集失败` | 降级标记,段落内容为空 | 标注缺失 |
| `[SILENT]` | 无内容(合法语义:无异常/无新增) | 不要当数据,也不要当错误 |
| 空段 / 只有标题 | 采集为空 | 标注缺失 |
| 接口**无报错返回空 DataFrame** | 路由瞬时降级(非"今天无数据") | 重试一次再定性;仍空 → 判缺失 |

> 实测(2026-09-28 12:05):`data_hub.get_realtime_quotes(8 codes)` 一次返回 0 行**且不抛异常**,同一批码 30 秒后重跑全部正常 → 是瞬时静默降级。
> 判据:**空/无异常 ≠ 无数据;先重试,再定性**。消费侧把"空"当"没有"会导致整段结论凭空消失。

### 必须做的三件事

```
1. 报告开头标注完整度:「数据完整度: N/M 段可用」,缺失段逐条列名
2. 缺失段对应的结论 → 标注「基于间接推理 / 置信度降级」,不得伪装成实测
3. 禁止:用缺失段当论据;用"数据暂缺"当结论;脑补缺失段的内容
```

### 反面案例(实测,2026-09-11)

```
## Script Output
【午间扫描 | 2026-09-11 12:00】
midday_scan.sh: timeout        ← 整块市场数据就是这一行假的
【心法扫描 | 2026-09-11 12:00】
════ Phase 0: 板块主力方向 ════
```

该报告被连续数周当成正常午间分析发出,AI 拿着这行假消息当市场数据做判断。
**根因:消费侧没有"先判真假"这一步。**

### 一句话判据

**看到数据段,先问「这段是真的吗」,再问「这段说明什么」。**
顺序反了,后面全废。

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.]

## 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-10-20 22:55:04
**Mode:** no_agent (script)

---

📈 进化简报 2026-10-20(窗口14天)
  回测率: 100.0%(338/338 条近期判断已回测)
  累计: 落账1982 已决1523 待决0
  总命中: 58.6% [53~64%] n=338 (上期 13.9%) | 平均超额 -0.51pp
  ── 分方向 ──
    回避     n=177 命中 56.5% [49~64%] 超额-0.8pp
    看空     n= 74 命中 58.1% [47~69%] 超额-0.4pp
    看多     n= 44 命中 59.1% [44~72%] 超额+0.6pp
    中性     n= 41 命中 70.7% [56~82%] 超额-0.6pp ★可信
  ── 来源可信度(n≥10 才列)──
    - 四维扫描                           n=208 56.7%
    ✓ 节点转折+ftshare扫描-21:45           n= 18 66.7%
    ✗ 量价训练-每日提醒                      n= 15 40.0%
    ✓ 盘中-1500收盘                      n= 14 71.4%
    - 盘中-1130午盘                      n= 12 58.3%
    ✓ 龙头融合+确认链-21:40                 n= 12 66.7%
  🔴 闭环部件停摆(该跑没跑 → 校准断链):
     · 判据来源体检(超额制)
     · 校准系数引擎
  ⚪ 未排期部件(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.

```
=== 信号纵向跟踪 ===
验证/回填: 135条
更新189条
信号总数: 161 | 已完整验证(T+20齐): 35 | 跟踪中(未到T+20): 126

          类型   数量    T+5命中    T+5均值
----------------------------------------
    breakout    9  1/9=11%    -5.2%
      launch   72 11/49=22%   -10.2%
  pre_launch   80 21/66=32%    -3.5%

最近信号:
  2026-10-19 君实生物(688180.SH) T5=- -
  2026-10-19 赢时胜(300377.SZ) T5=- -
  2026-10-19 中际旭创(300308.SZ) T5=- -
  2026-10-19 中国平安(601318.SH) T5=- -
  2026-10-19 中国人寿(601628.SH) T5=- -
  2026-10-16 君实生物(688180.SH) T5=- -
  2026-10-16 恒烁股份(688416.SH) T5=- -
  2026-10-16 德明利(001309.SZ) T5=- -
信号纵向跟踪报告
============================================================
总计: 506只 | 命中(T+5>2%): 74只 命中率15% | 平均T+5=-4.6%

来源                     数量    命中率    平均T+5   平均T+20
--------------------------------------------------
  low_launch          288     9%    -6.8%  —(无T+20)
  dragon_preselect    195    21%    -2.0%    -9.8%
  pre_launch           19    32%    +1.1%    -5.2%
  launch                3    33%    -0.7%    -4.0%
  breakout              1     0%    -4.0%   -11.7%

板块                 数量    命中率    平均T+5
----------------------------------------
  半导体             151    13%    -8.5%
  汽车配件             31     6%    -4.5%
  电气设备             27     4%    -6.3%
  未知               23    30%    +0.6%
  生物制药             23     9%    -5.5%
  通信设备             21    10%    -5.0%
  机械基件             17    12%    -5.6%
  电器仪表             16    25%    -1.3%
  塑料               15    20%    -2.9%
  IT设备             15    13%    -2.8%

趋势: 最近7天命中率19% vs 之前14% ↑提升
=== 参数反馈 ===
{
  "pre_launch": {
    "hit_rate": 31.6,
    "count": 19,
    "avg_t5": 1.09
  },
  "launch": {
    "hit_rate": 33.3,
    "count": 3,
    "avg_t5": -0.7
  },
  "breakout": {
    "hit_rate": 0.0,
    "count": 1,
    "avg_t5": -4.04
  },
  "dragon_preselect": {
    "hit_rate": 21.0,
    "count": 195,
    "avg_t5": -2.04
  },
  "low_launch": {
    "hit_rate": 9.0,
    "count": 288,
    "avg_t5": -6.81
  }
}

📊 信号反馈日报(原23:30 并入本段)
记录10个新信号 | 验证/回填136条历史信号
──────────────────────────────
  pre_launch_5日: 21/66 = 32%
  pre_launch_10日: 19/47 = 40%
  pre_launch_20日: 9/25 = 36%
  launch_5日: 11/49 = 22%
  launch_10日: 6/16 = 38%
  launch_20日: 0/8 = 0%
  breakout_5日: 1/9 = 11%
  breakout_10日: 0/9 = 0%
  breakout_20日: 0/2 = 0%
```

信号纵向跟踪:1) signal_feedback.db 渐进验证(缺T+20的行持续回填,未到T+20不提前落标);2) 更新 signal_track.json 所有信号的 T+1/T+3/T+5/T+10/T+20 快照;3) 输出 signal_feedback.db 类型命中率报告(阈值统一2%);4) 有已完成信号时输出各来源/板块命中率与参数反馈(low_launch/dragon_preselect 来源,数据齐了自然出现,无数据不硬凑)。

## 产出规范(四性·应用性;2026-10-12 老板令「所有 cron 要有关联性/逻辑性/应用性」)
1. **判断落账(必做,除非本次无判断)**:凡产出含方向性判断(看多/看空/回避/中性 + 可核对的触发条件),必须落 judgment_ledger:source=信号纵向跟踪-每日23:15、date、direction、horizon、trigger、falsify(可自动核对,不写「注意风险」这种空话)、judgment、reason([数据源][路径][判断] 三要素齐全,写入端拒收空件)。纯数据播报 → 跳过落账,并在报告里写明「本次无判断落账」。
2. **归档 IMA(强制,写完报告后必做)**:最终报告必须归档到 IMA(与 QQ 投递内容完全一致):
```
cat > /tmp/信号纵向跟踪-每日2315_$(date +%Y%m%d).md << 'REPORT_EOF'
[在此粘贴你的完整报告全文,一字不差]
REPORT_EOF
timeout 60 bash ~/.hermes/scripts/upload_stdin_to_ima.sh "信号纵向跟踪-每日2315_$(date +%Y%m%d)_完整版" < /tmp/信号纵向跟踪-每日2315_$(date +%Y%m%d).md >/dev/null 2>&1
```
归档成功后再输出最终报告(系统自动投递 QQ);归档失败在报告末尾标注「⚠️ 归档失败」。
3. **先数据后判断**:引用上方【数据摘要】的具体数字;数据段标了 [不可用] 就首行声明数据不全,禁止照常下结论。

**Response Characters:** 1623
## Response

IMA 归档成功(rc=0)。最终报告如下。

# 信号纵向跟踪日报 2026-10-20(23:15)

**数据完整度: 3/3 段可用**(信号跟踪 / 参数反馈 / 反馈日报均无 timeout/失败标记),结论全部基于实测。

---

## 一、核心结论

1. **全来源平均 T+5 = -4.6%(506只,命中率15%)——信号体系整体负期望**,不是个别来源问题。
2. **唯一正期望短窗来源 = pre_launch**:T+10 命中 40% 最高,但 T+20 转负 -5.2% → 只在 ≤10 日窗口有效,超窗即亏。
3. **最差来源 = low_launch**:288只、命中 9%、均值 -6.8%,拖垮整体;dragon_preselect T+20 **-9.8%** 深亏——持有越久亏越多。

## 二、分类型命中(161信号)

| 类型 | 数量 | T+5命中 | T+5均值 |
|---|---|---|---|
| pre_launch | 80 | 32% (21/66) | -3.5%* |
| launch | 72 | 22% | -10.2% |
| breakout | 9 | 11% | -5.2% |

*⚠️ 口径差异:pre_launch 在跟踪段(66条宽口径)为 -3.5%,参数反馈段(19条完成口径)为 +1.1%——分母不同,均系实测。以宽口径看 pre_launch 也未真正转正,结论降级为「相对最好但绝对值弱」。

## 三、分来源命中(506只)

| 来源 | 数量 | 命中率 | 平均T+5 | 平均T+20 |
|---|---|---|---|---|
| low_launch | 288 | 9% | -6.8% | — |
| dragon_preselect | 195 | 21% | -2.0% | **-9.8%** |
| pre_launch | 19 | 32% | **+1.1%** | -5.2% |
| launch | 3 | 33% | -0.7% | -4.0% |
| breakout | 1 | 0% | -4.0% | -11.7% |

时间窗:pre_launch 5/10/20日 = 32%/40%/36%;launch = 22%/38%/**0%**;breakout = 11%/0%/**0%**——20日窗全灭。

**板块**:半导体 151只占30%、命中仅13%、均值-8.5%——信号端在半导体过度集中且质量差。趋势:近7天命中19% vs 之前14%(↑但仍远低于盈亏平衡)。

## 四、判断落账(3条已入账,ID 2732-2734)

| ID | 方向 | 标的 | 证伪条件 |
|---|---|---|---|
| 2732 | 回避 | low_launch信号源 | 新增20条 T+5 命中>30% 且均值>0 |
| 2733 | 回避 | dragon_preselect信号源 | 滚动20条 T+20 均值>-2% 或转正 |
| 2734 | 中性 | pre_launch信号源 | 新增20条 T+10 命中<25% 或均值转负 |

若后续样本命中显著回升 → 上述回避判断证伪,撤回并复盘。

## 五、系统盲区

🔴 停摆:判据来源体检(超额制)、校准系数引擎 → 本报告来源可信度无自动校准背书,置信度降一级使用。

## 六、可操作结论

- **信号→买入链条当前不成立**:506只平均 -4.6%,任何来源直接跟单都是负期望。
- 若必须用:仅 pre_launch、仅 ≤10 日窗、小仓位,T+5>+2% 止盈线执行。
- low_launch(占57%)应从信号生成端限流或停用——它贡献最大的负期望总量。