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

**Job ID:** c85cc7fd1251
**Run Time:** 2026-10-15 23:31:10
**Schedule:** 15 23 * * 1-5

**Prompt Characters:** 7235
## 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-15 22:55:29
**Mode:** no_agent (script)

---

📈 进化简报 2026-10-15(窗口14天)
  回测率: 100.0%(41/41 条近期判断已回测)
  累计: 落账1735 已决1175 待决0
  总命中: 65.1% [50~78%] n=43 (上期 19.2%) | 平均超额 -0.33pp
  ── 分方向 ──
    看空     n= 17 命中 70.6% [47~87%] 超额-1.1pp ★可信
    中性     n= 15 命中 53.3% [30~75%] 超额-0.7pp
    看多     n= 11 命中 72.7% [43~90%] 超额+1.4pp ★可信
  ── 来源可信度(n≥10 才列)──
    (样本不足,暂不给来源评分)
  🔴 闭环部件停摆(该跑没跑 → 校准断链):
     · 判断回测闭环-每日22:45
     · 判据来源体检(超额制)
     · 超额制全量重算
     · 经验学习闭环
     · 每日判断练习仪(老板10-05指定)
  用法: 下判断前先看本简报 —— 上面✅的来源可以更信,✗的来源要打折;🔴停摆部件是系统盲区。
```

## Script Output
The following data was collected by a pre-run script. Use it as context for your analysis.

```
=== 信号纵向跟踪 ===
验证/回填: 124条
更新235条
信号总数: 137 | 已完整验证(T+20齐): 18 | 跟踪中(未到T+20): 119

          类型   数量    T+5命中    T+5均值
----------------------------------------
    breakout    9  1/9=11%    -5.2%
      launch   56 11/38=29%   -10.3%
  pre_launch   72 21/61=34%    -3.0%

最近信号:
  2026-10-14 君实生物(688180.SH) T5=- -
  2026-10-14 君实生物(688180.SH) T5=- -
  2026-10-14 恒烁股份(688416.SH) T5=- -
  2026-10-14 东芯股份(688110.SH) T5=- -
  2026-10-14 普冉股份(688766.SH) T5=- -
  2026-10-14 兆易创新(603986.SH) T5=- -
  2026-10-14 兆易创新(603986.SH) T5=- -
  2026-10-14 博创科技(300548.SZ) T5=- -
信号纵向跟踪报告
============================================================
总计: 356只 | 命中(T+5>2%): 58只 命中率16% | 平均T+5=-4.2%

来源                     数量    命中率    平均T+5   平均T+20
--------------------------------------------------
  low_launch          198     9%    -6.7%  —(无T+20)
  dragon_preselect    135    24%    -1.4%  —(无T+20)
  pre_launch           19    32%    +1.1%    -1.6%
  launch                3    33%    -0.7%    -3.3%
  breakout              1     0%    -4.0%   -11.7%

板块                 数量    命中率    平均T+5
----------------------------------------
  半导体             101    16%    -7.8%
  汽车配件             29     7%    -4.2%
  未知               23    30%    +0.6%
  生物制药             22     9%    -5.4%
  火力发电             14    14%    -3.9%
  软件服务             13    38%    +0.8%
  机械基件             13    15%    -5.2%
  电器仪表             13    23%    -1.6%
  塑料               12    25%    -1.4%
  家用电器             12    17%    -2.7%

趋势: 最近7天命中率8% vs 之前18% ↓下降
=== 参数反馈 ===
{
  "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": 24.4,
    "count": 135,
    "avg_t5": -1.39
  },
  "low_launch": {
    "hit_rate": 9.1,
    "count": 198,
    "avg_t5": -6.66
  }
}

📊 信号反馈日报(原23:30 并入本段)
记录11个新信号 | 验证/回填130条历史信号
──────────────────────────────
  pre_launch_5日: 21/61 = 34%
  pre_launch_10日: 18/35 = 51%
  pre_launch_20日: 8/15 = 53%
  launch_5日: 11/38 = 29%
  launch_10日: 5/10 = 50%
  launch_20日: 0/2 = 0%
  breakout_5日: 1/9 = 11%
  breakout_10日: 0/9 = 0%
  breakout_20日: 0/1 = 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:** 1802
## Response

归档回读验证通过(media_id 已确认)。最终报告:

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

**数据完整度: 5/5 段可用**(纵向跟踪/类型命中率/来源板块+参数反馈/反馈日报/上游进化简报)——无 timeout、无 Traceback、无 ❌降级标记。
**交叉验证**: 全部关键数字已对源库复算一致:类型 T+5/10/20、356只总表、来源表、板块表、参数反馈 → signal_feedback.db + signal_track.json 逐项吻合;趋势「最近7天8% vs 之前18%」用同口径(cutoff=今日-7天、hit字段)复算 = 8% vs 18% 一致。类型表「总数137」与当前库148的差 = 反馈日报段本次新记录11条(段间时序差,非错误)。

---

## 一、信号面(先数据)

- **总池**: 608条信号,已验证356(T+5齐)、跟踪中252;signal_feedback.db 148条中 T+20齐仅**18条**(长周期样本还很薄)
- **T+5 总命中: 58/356 = 16%,均值 -4.2%** —— 信号面整体期望为负
- **趋势: 最近7天 8% vs 之前 18% ↓恶化**(50条近期 vs 306条早期)
- **来源分化**(n≥19):
  - pre_launch 19条 **31.6% +1.1%** ← 唯一正收益
  - dragon_preselect 135条 24.4% -1.4%
  - **low_launch 198条 9.1% -6.7%** ← 占池56%,最大且最差
  - breakout 1条 0% -4.0%(样本不足;但 db 内9条 T+10 全灭 0/9、-14.7%,方向极差)
- **板块**: 半导体 101条 16% **-7.8%**(信号最集中也最差之一)|汽车配件 29条 7% -4.2%|软件服务 13条 38% +0.8%(唯一体面)
- **评估窗口**: pre_launch T+5 34% → **T+10 51%(+2.82%)** → T+20 53%(-1.63%);launch T+5 29% → T+10 50% —— 5日窗口过早截断

## 二、判断(已落账 judgment_ledger)

1. **回避 low_launch 来源信号跟单**(id=2481, direction=回避, horizon=5, conf=4)
   - 触发: 新信号按 T+5(阈值+2%)核对,回避期逐日复算滚动命中率
   - 证伪: low_launch 近60天 T+5 命中率回升 ≥30% 且均值 ≥0% → 判断作废
2. **pre_launch 用 T+10 窗口评估,不按 T+5 提前否定**(id=2482, direction=看多, horizon=10, conf=3)
   - 触发: pre_launch 新信号按 T+10 核对
   - 证伪: T+10 滚动命中率跌破 40% 或均值转负 → 判断作废
   - 置信度限3原因: T+20均值已转负 + n偏小 + 下述上游断链

## 三、上游与系统提示

- 上游进化简报(22:55): 判断总命中 65.1% [50~78%] n=43(上期19.2%,样本波动大);看空70.6%、看多72.7% 均标★可信,中性53.3%不可信
- 🔴 **5个闭环部件停摆 → 校准断链**: 判断回测闭环-每日22:45、判据来源体检、超额制全量重算、经验学习闭环、每日判断练习仪 —— 上面两条新落账判断可能无法被及时回测,属系统盲区(与「待决0」并存:存量已决但增量校准停了)

---
*本次判断落账 2 条(2481/2482);IMA 归档已完成并回读验证(media_id=markdown_cls1_419be968…,标题 ima_upload_信号纵向跟踪-每日2315_20261015_完整版_232720.md);数据源 signal_feedback.db + signal_track.json @ 2026-10-15 23:15 实跑;口径统一 T+5 阈值 2%。*