- name
- football-betting-prediction
- description
- 竞彩足球 / 体彩混合过关的赛事预测与出单方案设计,以及赛前临场复核、赛果回填与复盘。适用于胜平负/让球/比分/总进球/半全场及串关组合分析;含数据源停摆降级预案、负期望资金纪律与防编造铁律。
Triggers: "预测足彩", "竞彩", "足球预测", "足球比赛结果", "胜平负", "让球", "比分预测", "总进球", "半全场", "串关", "过关", "胆材", "混合过关", "投注方案", "临场复核", "出票前确认", "sporttery", "体彩".
# 竞彩足球混合过关预测 v5.17
> 更新日期:2026-09-30(**v5.17 回测四条硬纪律·大哥定性"跑回测再也不能这样了"**):新增**铁律 14「回测四条硬纪律·正收益先证伪再上报」**。①时间线只准用 `common.strict_merged`(lag=2),**禁自拼 merged 再 sort**——肇事行让同日联赛库赛果排在待预测场前,配对量化回收率 **97.3%→77.6%(虚增 19.7pp 显著)**;②判据跑前预注册,「N 配置同批挑最优」不算证据(纯随机信号 42 选 1 凭空抬高 **20pp**);③任何正收益先跑 `leak_audit.py` A/B + 随机基线**自证伪再上报**;④警讯「命中不如市场却收益高一截」立即查泄漏。**边界**:月级切分只锁月边界、管不到同月内行序,不可代替 ①。作废清单:v4b +341.4%、闯关票 +20.1%、动态选腿 +15.77%、多场景 v3 +133.5%/+267.0%、族模型 +9.6% 全系假象;去泄漏后 fullseason W=2 **+9.6%→−7.0%**。证据链 `research/leak_mechanism.py`、`selection_bias.py`、`clean_eval.py`、`research/README.md`。
>
> 更新日期:2026-09-29(**v5.16 赔率无 alpha 铁律·大哥定性**):新增**铁律 13「赔率的任何变换都不产生 alpha·EV 与校准都不是选腿依据」**。**数学锁**:赔率已内含抽水,选腿排序若是赔率的确定性函数(含"市场主干 + 小因素扰动"的伪模型),期望恒等于 1−抽水 → **参考赔率必然负收益**。**实测天花板(4985 场体彩 CRS,采集器 `engine/scripts/sporttery_hist_odds.py` 新建,库 `engine/cache/hist_odds/`,带开盘+封盘双快照,可回溯年级别)**:市场封盘 top-k 回收率 **84.0%/78.7%/77.2%/76.7%**(k=1~4),抽水 k=1 实测 **16%**(旧口径 20~25% 作废)。**三轮证伪禁重跑**:集中度闸门(命中 +5pp 但回收率降至 57.6%,小样本 97 腿曾虚报 204%~397%)/ 近况比分倾向(偏离 75.5%、命中 −2.8pp)/ 赔率变动 steam move(偏离 70.1%、命中 −6.3pp,**顺反双负**)。**校准 ≠ 提准**:温度校准 T=1.3(crs, n=6012,已拟合)是**保序变换**,修数值虚高但不改排序 → 对命中率/回收率零影响。**独立概率源现状**:DC 比分 top1 9.5%/top3 27.7% **低于经验频率基线 11.5%/28.9%**,项目当前无跑赢市场的独立概率源。脚本 `crs_sim_invest.py`/`crs_factor_test.py`/`crs_drift_test.py`(research/)为三轮证伪留档。
>
> 更新日期:2026-09-27(**v5.15 CRS 融合链直接转正**):比分选择链 freq-band 三步(模板+平移+带内 q 最高)→ **CRS 融合四步**(Lidstone 平滑→power 去水→对数意见池融合→族组合+族闸门,engine/scripts/crs_fusion.py 四组件,铁律 8)。**转正依据=九模块验证负 alpha 证伪旧链**(413 腿 83% 押≤2球 vs 实际均值 3.20、负 alpha 期望 5.5 实中 2)+数学审查 3 修正(Lidstone 平滑救零吸收违背贝叶斯代数/二项检验红线取代"连续 N 轮"假阳性规则/族概率闸门 28% 数学化 V6 四象限倒挂)。**验收权威数字(engine/cache/crs_fusion_audit.json,187 唯一场 walk-forward)**:融合 vs 模板配对差 CI[+0.0517,+0.2169] 显著(留产决策线);融合 vs 公平市场 Δ-0.0264 CI 跨 0 **统计不可分——诚实标注,不作留产判据**;族 top1 58/187=31.0% vs 期望 26.0%;闸门放行 44 场小比分捕获 50.0%。**回滚红线(数学审查错误2)**:二项检验累计命中 vs 累计融合期望,样本≥30 腿启动、单侧 p<0.05 才回滚(前 30 腿宽限);`--method=legacy`(旧三步模板链)保留至 2026-10-26 对照,调用须标注。设计=docs/2026-09-26-crs-fusion-redesign.html(§0 拍板+§5 监控)。
> 更新日期:2026-09-25(**v5.14 口径校正与失真修复**):本轮修的是**度量本身在骗人**,非策略调整。①**比分命中率口径归一**:`backfill` 此前把 `option_hit`(全玩法选项命中)直写 `scoreHit`,致 331 条方向腿灌进比分分母、复合 pick(`'1-1 + HAFU dd'`)正则整串不匹配而静默漏判 22 条;现拆 `score_hit_of`(只判比分腿)+ 新字段 `optionHit`(全玩法),历史 42 文件经 `migrate_score_hit.py` 迁移(原值挪 optionHit,无信息损失),比分率由"三处三个数(正文 26.3% / trend 渲染 0% / 实际 4.3%)"归一为 **4.3%(3/70)**,并首次真正渲染进 trend.html 区块②。②**基线重算**:方向 63.2%(12/19,19 场样本期)→ **64.4%(188/292)**;基线改为指向 `corpus.json`,正文硬编码数只作参考。③**融合公式纠错**:正文写 `σ(a·logit+b·logit)` 而实现是对数意见池 `p_DC^a'·p_mkt^b'`,手写复算同场 EV 可差 19pp;补记 `leagueOverrides` 荷甲/德甲/意甲 **a=0**(526 场 walk-forward,RPS 改善 12.6%/5.4%/4.2%)。④**补载两条已实装但 skill 完全未提的链路**:传统足彩(`sfc_fetch.py`/`ren9.py`)与影子层(`paper.py`,销售日口径坑)。⑤修铁律表错序(11/9 倒置)与 4 张表的残缺行。**教训**:策略层反复精修的同时,度量层的错误分母无人复核——**指标失真比策略偏差更危险,因为它让所有后续判断都建立在假数上**。
> 更新日期:2026-09-22(**v5.13 硬控制四分类瘦身·大哥拍板**):撤 5——开季限1(回测净机会成本 -244/34轮)、小联赛限1(被无锚闸门覆盖的冗余保护)、胶着避开(636轮回测 0 触发,与平局轨互斥)、超低赔通道(0 触发死代码,代码+测试删)、战意标注义务(消融证伪后仅存的成本,并入 matchPlay.specialVars)。放 5——freq-band/彩票档 3 腿降级出选项卡(标注+买否大哥定,<3 才关档;2 腿 HAD 串=废除形状不出)、CRS 禁串条文纠偏(单关优先+点名可组串,与 09-18 指令对齐)、自查清单 29 项分流(机器断言 `validate_card_assertions` 自动跑:同场限一/木桶/预算红线)、耦合计算脚本化(`coupling_at_least_one` 枚举精确展开+跨档折叠,出卡自动输出 couplingHit)。收 1——出票核对单加 livescan 落盘核对行。**原则**:硬条件存续唯一正当性=实证挡过真实伤害;gateRule/假设层/资金纪律三大闸门不动。
> 更新日期:2026-09-22(**v5.12 比赛推演层**):Step -1 升级"推演→假设→验证"四步铁序——新增 `matchPlay` 五槽位(rotation/tactics/goalSource/script/specialVars)强制覆盖比赛画面;assumption=推演的压缩结论,统计特征罗列不得充当假设主体(09-21 英锦标赛轮漏判"大轮换惯例"为判例:全场最强变量零覆盖)。推演仅做快筛候选场、不新增采集;Step 6.5 升级"推演回改"(真实首发回改 matchPlay 再定稿)。**背景**:大哥 09-22 审计定性"系统在结合概率与 EV 给预测,没真的预测比赛"——战意/H2H 等比赛理解成分被消融纪律移除后,假设层执行也退化成统计特征堆砌,v5.12 把"预测比赛"重新强制进流程。
> 更新日期:2026-09-18(**v5.11 假设层补写进 skill**):新增 `Step -1 假设层`作为决策入口 + 铁律 12「假设先行·EV 不选腿」;撤销"EV≤0 不得入选"硬门槛(降级为事后指标)。**根因**:2026-09-16 大哥拍板的假设驱动只写进 memory 未写进 skill,而 skill 806 行里"假设"仅出现 1 次(且指"关间独立假设"),13 步计算流程被当成决策流程使用 → 09-18 会话按 EV 降序捞腿冒充假设驱动。**skill 与 memory 冲突时以 memory 为准**(memory 是最新拍板,skill 可能滞后)。
> 更新日期:2026-09-22(**v5.11 转正·大哥拍板**):假设层撤销观察验证期,转正为正式版——周末大轮直接按正式流程跑(每场逐场落 hypothesis 字段)。首轮实证 09-21(3 场 hypothesis/fused/final/chainSteps 100% 落字段);同日全链审计确认出票闸门完备(boldplay 引擎腿默认 pending、`filter_buyable` 挡无假设腿、卡面假设优先排序),并补两条执行规矩(无锚模板腿同等适用 / 晚上架补录场,见 Step -1 判定标准)。
> 更新日期:2026-09-16(常见比分赔率条件模板):新增 `skill/references/score-odds-template.md`,将1:0、0:1、2:0、2:1、0:2、1:2按胜平负热门赔率区间与形状族纳入比分预筛;历史条件频率只作基线,不得替代本场模型概率。
> 更新日期:2026-09-15(比分形状校准补强):方向与精确比分分离;强队零封集中、低估弱队进球、同形状候选伪分散纳入硬复盘字段;新增 `skill/references/score-calibration.md`,先影子比较 DC、freq-band 与校准混合链,样本达标前不替换生产概率源。
> 更新日期:2026-09-11(形状回测实证标注 ★ engine/scripts/research/shape_backtest.py·636 轮孪生票·fd 四季 16414 场 B365 收盘:①三形状(4串1/4串11/全2关-4)**期望回收率打平**(100.7~103.8%·配对差 CI 全跨 0·分季冠军轮换),真差异全在**方差**——容错族回款轮占比 96.8% vs 4串1 38.5%、连灭 1 vs 10、回撤减半:保底档 4串11 骨架实证=**同等回报下路径质量,非更高回报**;②选腿 α 唯一来源=**热度集中**(top4 vs 随机 +4.5~23pp·B365 超热腿系统性慷慨=favorite-longshot bias 强形式·全中率实测 38.5% vs 去水理论 21%),**B365 抽水 6.41% ≠ 体彩 12.9%,回收率绝对值禁外推体彩加注**——体彩价是否存活靠实盘 CLV 验证;③排除逻辑阶梯 v2:胶着排除 top4 口径 **0 触发冗余**、开季限1 市场口径**负贡献**(丢 34 开季赚钱轮·净额差 -244——纪律动机是模型保护(开季 DC 失真)不在市场口径废立范围)、超低赔通道 p≥0.55 下 **0 触发死代码**——两条零成本保险保留勿记功;④报告 data/04-summaries/2026-09-11-shape-backtest.html + shape-backtest-v2-report.json)
> 更新日期:2026-09-04(批次4 规则三条 · 审计修复设计 docs/2026-09-04-prediction-audit-fix-design.html:①轮次判定定式=insight gameweek 先查+standing 已赛场次一致性校验,ESPN 榜只做参考(当日法甲 ESPN 推 R4 实为 R3 靠 insight 勘定)②四星踩线(65~67%)+基面反向→降半档 ③保底腿全含于彩票档→必须算耦合概率(v5.1 条款补执行))
> 更新日期:2026-09-04(平局轨入轨第五条:`poolSingle.HAD=1` 单关资格前置核验——09-03 周四001 入轨四条全过但该场 HAD 不可单关,被迫与周四002 组混串;09-04 结算平腿 @3.10 命中(2:2)被捆绑腿拖死整注归零(单关口径应回 31 元)。=0 降级路径=①与合格腿混串(须对捆绑腿有独立信心,CRS/TTG/HAFU 单关资格全场=1 不受限)或②撤注,不硬凑;出票核对单环节必查此字段)
> 更新日期:2026-09-03(v5.8 实票×推荐对齐——系统同推制六件套:票腿 agreement 五值/偏好档案 gateRule/登记对照回执/推荐 play 三态每场必答/tickets.html ⑤ 一致率区块;底子=16票60腿分析:一致腿40%vs偏离14%、高一致票+212.9vs零一致-75.6、排除场照买0%全亏,设计见 docs/2026-09-03-ticket-recommend-alignment-design.html)
> 更新日期:2026-09-03(v5.7 平局轨:搏奖档内 HAD 平单关——入轨四条 p平≥28%+极差<12pp+R4起+每轮≤2注,胶着是灵魂(极差加回测 18%→60%)、开季系数抬平污染禁入、杯赛富矿放行、星级豁免、EV 不拦截、永久单关;无影子期无转正符合门槛即纳入,设计见 docs/2026-09-03-draw-track-design.html)
> 更新日期:2026-09-02(v5.6 彩票档:boldplay 两档制→三档制,HAD/HHAD N串1×1倍=2元合格腿全上 4~8 串、p_fused≥0.55/超低赔≤1.25 门槛、无预算管理独立轮红线,设计见 docs/2026-09-02-lottery-tier-design.html)
> 更新日期:2026-08-27(v5.3 比分选法重设计 freq-band:联赛频率模板+球队平移+形状带+q排序为默认链路,DC 退出比分选择;--method=amix 过渡保留一个月待回测对照,设计见 docs/2026-08-27-freq-band-design.html)
> 更新日期:2026-08-26(v5.2 修正三向经 --adjust 传导全玩法(三域重标定+池级温度+半场参数,设计见 docs/2026-08-26-pool-coverage-design.html);v5.3 起该传导仅服务 amix 过渡路径)
> 更新日期:2026-08-25(v5.1 实战纪律回灌:高赔池全量 EV 扫描 / 注间耦合计算 / 静默失败追查入铁律 / 用户偏好形状档案 / 方案命名规范+对比表;v5.0 阶梯出票卡为默认输出)
> 实战基线 ★ v5.14(2026-09-25 实测重算,**唯一权威源 = `data/04-summaries/corpus.json`,勿引用本行硬编码数**):方向正确率 **64.4%(188/292)**;比分命中率 **4.3%(3/70,CRS/比分腿独立口径)**;CLV 记录自 v4.1 起。旧基线 63.2%(12/19)/26.3%(5/19)为 19 场样本期数字,样本已增至十五倍——比分口径此前把方向腿灌进分母(详见铁律 11)。基线过期即失去校准作用,每轮回填后以 `trend.html` 与 corpus 为准。
## 文件存储路径 ★ v4.0 新增
所有预测相关文件统一存储在 `$FOOTBALL_HOME` 项目根目录中(环境变量,由 install 脚本设置;未设则用 skill 目录的父级 `../` 推导):
| 目录 | 用途 | 文件命名 |
|:---|:---|:---|
| `data/00-leagues/` | 联赛画像(积分榜/场均进球/冷门率/TOP 比分) | `{league}.json` |
| `data/01-teams/` | 最新球队信息(排名、阵容、伤停) | `{联赛名}/` 按联赛分子目录 |
| `data/02-results/` | 历史比赛结果(赛果回填)+ `league/` 本地赛果库 | `YYYY-MM-DD.json` 按日期 |
| `data/03-predictions/` | 最近预测文件 | `YYYY-MM-DD*.html` |
| `data/04-summaries/` | 预测总结与复盘(含 corpus.json/trend.html) | `YYYY-MM-DD-review.html` |
| `data/05-trends/` | **赛前情报时序库**(intel-timeline,docs/2026-08-30-intel-timeline-design.html):`{date}-odds.json` 五池赔率 diff 增量链(刷新自动落盘)/ `{date}-intel.json` 情报摘要(insight 拉取自动落盘)/ `{date}-livescan.json` 临场扫描事件(skill 录入,`trends_snapshot.py livescan` 校验通道);2026-08-29 前的 livescan 为 legacy 格式双格式兼容 | `YYYY-MM-DD-{odds\|intel\|livescan}.json` |
| `engine/cache/` | DC 参数缓存 + models/ 版本存档 + fusion.json + 体彩缓存 | `{league}_dc.json` 等 |
| `skill/references/` | 低频参考(官方规则/系数详表/教训档案,按需加载) | `*.md` |
**执行时自动归档**:
- Step 7 报告输出 → 保存到 `data/03-predictions/`
- Step 8 赛果回填 → 保存到 `data/02-results/`
- Step 8 复盘报告 → 保存到 `data/04-summaries/`
- Step 3 采集的球队数据 → 更新到 `data/01-teams/`
---
## 适用范围
- 竞彩足球(单场玩法,本 skill 主体):胜平负 / 让球胜平负 / 总进球 / 半全场 / 比分,及混合过关
- **传统足彩(14 场胜负彩 / 任九)★ v5.14 补记**:已有独立链路,此前 skill 完全未载致能力不可发现——见下节
- 90 分钟常规时间(含伤停补时)结果预测
- 不适用:加时点球、冠军竞猜、滚球
### 传统足彩链路(胜负彩 / 任九)★ v5.14 补记
竞彩按场次下注,传足按**期次**(14 场固定盘口,奖池分成而非固定赔率),故不走 Step 6 的串关合规层。
| 环节 | 命令 | 说明 |
|:---|:---|:---|
| 采集 | `python engine/scripts/sfc_fetch.py issue {期次}` | 澳客 okooo 服务端渲染源;`backfill {起} {止}` 区间回填、`current` 拿当期在售 |
| 选场 | `python engine/scripts/ren9.py` | 14 场 → 市场去水 p_mkt → DC 融合(联赛期)→ grasp=max(p_fused) 排序 → top9 + 复式贪心 |
| 落盘 | `data/07-sfc/{期次}.json` + `_index.json` | — |
纪律:国家队/杯赛期 `dc=null` 属**纯市场锚**(DC 无该联赛参数),须按铁律 10 同口径标注,不得把市场锚当模型输出;设计依据 `docs/2026-09-22-sfc-ren9-design.html`。
### 影子层(paper trading)★ v5.14 补记
影子票 = 不购买的对照形状,用于在不动真金的前提下积累样本。**正账(真实购买)走 `data/06-tickets/tickets.json`,两者禁止混记。**
| 时点 | 命令 |
|:---|:---|
| 预测后登记 | `python engine/shadow/paper.py shadow-all {销售日}` |
| 回填后结算 | `python engine/shadow/paper.py settle-all {销售日}` |
**日期口径坑**:参数是**体彩销售日**,当晚开赛场挂次日凌晨销售日(周一晚轮 = `2026-09-08`)。命令幂等,可重跑。凭证链(`engine/shadow/qcache/`)纳管 git——**赛前快照是事后归因的唯一凭证,禁止放 `scratch/`**(2026-09-07 账本被清理误删事故)。
---
## 〇、十四条铁律(违反即返工)
| # | 铁律 | 来源教训 |
|:--:|:---|:---|
| 1 | **绝不编造数据**:交锋/球员/战绩查不到就标 ❓,每条数据标注来源 + 加载状态 | v1 编造数据导致信任崩塌 |
| 2 | **用户反馈优先级最高**:用户提供的信息 > 模型推断,置信度 +1 级 | 忽视"长崎主场强"反馈致预测失误 |
| 3 | **出票前终端实盘核对**:编号 × 联赛 × 主客三重验证,官方对阵偶有错误 | 2026-08-17 001 场次实际不存在 |
| 4 | **失败降级纪律**:同一数据任务失败 ≤ 2 次即停;全源失败降级为"官方赔率 + 排名 + 赛季阶段"主线分析,如实标注缺失维度并下调置信度 | — |
| 5 | **模型 ≠ 必中**:方向精度实测 60~65% 区间(★ v5.14 实测基线 64.4%,n=292,读 `corpus.json` 非硬编码);比分命中率仅 4.3%(n=70)——比分玩法是右尾博弈不是可靠预测;赔率以官方终端为准,预估仅作决策参考。**★ v5.16 补天花板**:体彩 CRS 市场封盘 top-k 回收率 84.0%/78.7%/77.2%/76.7%(k=1~4,4985 场实测)= 任何参考赔率策略的上限,跑不过即负收益,详见铁律 13 | — |
| 6 | **赛果必须回填**:每轮预测后自动查询赛果并回填到预测记录,完成五维复盘统计 | v4.0 新增:无闭环 = 无法迭代 |
| 7 | **归档禁止整文件覆盖** ★ v4.6:同日期重跑时必须先读旧 `data/02-results/` 文件——同 schema 则增量合并赛果字段,不同 schema 则另存 `-r1` 后缀新文件;预测记录与 plans 格式须遵 Step 8 v4.6 schema(corpus.py 双格式兼容已就位) | 2026-08-22 f4558c2 事故:matches[] 覆盖 records[] 致 52 条语料归零,靠 git 历史抢救 |
| 8 | **比分选法四步铁律(CRS 融合链)+ 空结果追查** ★ v5.15:比分选择 = **CRS 融合链**(freq_band `--method=fused` 默认,crs_fusion.py 四组件;boldplay 三池卡 CRS 候选=族 top1/top2,v5.5 翻身档=三池 EV 选优):①**Lidstone 平滑模板**——联赛频率模板 q_t(s)=(count_s+α)/(N+31α)、α=0.5 计数语义(α 随模板有效样本量缩放),全 31 项 q>0;"c=0 永不入选"降级为输出层业务规则,不再阉割后验支撑集②**power 去水市场分布**——体彩 CRS 31 项 p_mkt∝(1/o_s)^k、k 二分解 Σp=1(Clarke 2013);市场价 <20 项 → 纯模板降级(marketFused=False,卡面 crsDist 口径标注)③**对数意见池融合**——P_final∝q_t^r·p_mkt^(1-r),**r=0.286 冻结**(比值不变性只校 r 一维;λ 收缩 w=0.35 前置 James-Stein)④**族组合输出+族概率闸门**——5 族(零封主胜{1:0,2:0,3:0}/主胜多球{2:1,3:1,3:2}/平局{0:0,1:1,2:2}/零封客胜/客胜多球)族排序+族内 top2,**max 族概率 <28% → 该场 CRS 关档**(V6 四象限倒挂的数学化);主胜两族合计 ≥65% → 让位 HHAD。生存阈(模板真实频率 q≥1%)保留为**输出层规则**表述(平移不救真实出现不足的比分)。**空结果追查/关档声明纪律不变**:脚本输出空列表 = 异常必须追查**禁止静默跳过**,方案里声明选腿结果(关档也要写)——玩法凭空消失 = 执行漏洞;3 腿降级出 3串1 选项卡(2026-09-22 拍板)沿袭。设计=docs/2026-09-26-crs-fusion-redesign.html · 验收=engine/cache/crs_fusion_audit.json;`--method=legacy`(旧三步模板链)保留至 **2026-10-26** 对照,调用须标注。**⚠ v5.16 与铁律 13 的张力(须知悉,勿静默忽略)**:本链市场权重 1−r=0.714 = 市场主干结构,铁律 13 所证伪的正是这类"市场主干 + 小因素扰动";且本链自身验收已诚实标注"融合 vs 公平市场 Δ−0.0264 **CI 跨 0 统计不可分**"——即**从未证明跑赢市场**,留产依据只是"优于旧模板链"。故融合链的定位是**比旧链少犯错的执行工具,不是 alpha 来源**;禁以"已用融合链"暗示已解决负期望问题 | 2026-09-26 九模块验证证伪旧链:413 腿 83% 押≤2球(均值 1.86 vs 实际 3.20)、负 alpha(40 腿期望 5.5 实中 2)——"带内 q 最高"=无条件先验,市场信号只做门槛=血统错误;大哥拍板市场信号从门槛升级为融合源、直接转正不走影子期(spec §0);2026-08-27 大哥质疑"赔率=购买热度≠真实结果"为同一病根前史(docs/2026-08-27-freq-band-design.html) |
| 9 | **同场限一玩法·不同场可混串** ★ v5.6(最易看反):同一注串内**同一场次**只能选一种玩法(同场不能既买 CRS 又买 HAD);但**不同场次可用不同玩法组同一注串**(A场CRS+B场TTG+C场HAD 一注3串合法)=混合过关本义,**也是方案优化手段**——各场取 EV 最优玩法混串,低抽水池腿(TTG/HAFU 20.4% < CRS 33.9%)降整串期望抽水。**≠ 整注必须同玩法**:此误读致方案默认全同玩法串、从不评估混串优化(2026-08-31 实例:011 CRS@13 EV-7% 本可换 TTG@4.9 EV+4% 同注混串,因误读铁律而漏评估)。混串总关数 ≤ 最低玩法上限(木桶);同场跨票分池合法(001 CRS 单关票A + 001 HAD 3串票B) | 2026-08-31 大哥纠正:铁律被读反成"整注同玩法",方案系统性漏混串优化 |
| 10 | **无锚联赛腿禁入保底胆** ★ v5.6:fd 不覆盖联赛(瑞超/日职/沙特/韩职等,无 Pinnacle 收盘锚)的场次**不得作为保底票胆材**——单锚先验(上轮收盘/联赛画像)不满足保底档的市场隐含 ≥65% 准入口径,只可入翻身池/搏奖池或平腿;保底胆必须是 fd 收盘锚场次 | 2026-08-31 周二 10 场全灭归因两假胆 EV-17~-19(无锚联赛被程序当胆,docs/2026-09-01-qa 归档);09-01 双轨分化设计复审补纪律线(C2) |
| 11 | **比分形状不得伪分散** ★ v5.9:方向命中与比分命中分开统计(**字段级分工 ★ v5.14**:`scoreHit` 只由比分类 pick 判定、`optionHit` 记全玩法选项命中、`directionHit` 记三向——方向腿的 scoreHit 恒为 null,禁止互相顶替);强队候选不得全部落在零封族(1:0/2:0/3:0只算一个剧本),应按经回测的双方进球/零封概率保留相邻形状候选;官方首发/核心伤停更新比分尾部而非机械平移胜负。每场记录 `score_source`、`shape_family`、`p_btts`、`p_clean_sheet`、`topk_hit`,并在 `score-calibration.md` 规定的影子实验达标前禁止替换生产链 | 2026-09-25 审计:backfill 把 option_hit 直写 scoreHit,致 331 条方向腿灌进比分分母、复合 pick 静默漏判 22 条,"比分命中率"三处口径三个数(正文 26.3% / 真实 4.3% / trend 渲染 0%)——本条曾只立规不落到字段 |
| 12 | **假设先行·EV 不选腿** ★ v5.11/v5.12:选腿唯一入口 = Step -1 假设层(**先推演比赛画面 → 压缩可证伪判断 → 回填只做否决 → 最后看赔率**,四步铁序)。**禁止**:打开 EV/概率榜排序取前 N 名再补理由、把分档条件频率当本场证据、拿 EV 当推荐卖点或劝退理由、跳过 matchPlay 直接写 assumption(统计罗列 ≠ 假设)。`hypothesis.py` 必须实际调用,pending/refuted 腿不出票 | 2026-09-18 会话:全池 405 候选按 EV 降序捞 5 腿冒充假设驱动,事后自查发现 skill 里"假设"仅出现 1 次且与假设驱动无关(条文缺失 → 13 步计算流程被当决策流程);同轮连带 5 个计算 bug(整票 EV 口径错、双重去水、温度长尾 artifact、λ 病态未过滤、分档查表冒充本场证据)——**在错误路线上修 bug 会强化错误方向**;09-22 大哥二次审计"没真的预测比赛"补推演工序 |
عرض على GitHub