档案协议

本页记录信号档案的运行协议。协议自首次提交以来保持稳定,未作修改。

生成

每次市场窗口开始前,模型产出一条或多条信号。每条信号针对特定赛事在特定盘口下的结果进行预测。信号生成时,同步记录该赛事的皇冠赔率。整批信号序列化为 CSV 文件,压缩加密后以 zip 格式提交至本仓库。

信号生成至赛事开赛之间的时间间隔,不少于三十分钟。每个加密文件的 GitHub commit 时间戳,即为这一时序的规范证明。

结算

赛果在比赛结束后录入 track_record.csv。同一次 commit 中,对应 zip 文件的解密密码一并公开,使原始信号可被任何人独立验证。

结构不变量

档案遵循以下三条不变量,任一被违反即视为档案作废。

  1. 数量对应。track_record.csv 中的每一行都引用 /csv 目录下一个真实存在的 zip 文件;/csv 目录下的每一个 zip 文件都被 track_record.csv 中至少一行引用。不存在"孤儿"——不会有记录却无文件,也不会有文件却未被记录。
  2. 赔率可核验。信号生成时刻所记录的皇冠赔率,可在第三方赔率历史数据库中独立核验。
  3. 无事后删改。信号一经生成并 commit,不会因任何事后信息(包括市场波动、比赛过程、赛果)被从档案中删除或修改。
    任何事后修改、删除、增加都会在仓库的提交历史中留下公开痕迹。

验证

验证任一条信号的步骤如下。

  1. track_record.csv 中定位该信号所在行,记录其对应的 zip 文件名与密码。
  2. 从仓库的 /csv 目录下载该 zip 文件。
  3. 查看该 zip 文件的 commit 时间戳——应早于该场赛事开赛时间。
  4. 使用密码解压,计算内部 CSV 文件的 SHA256。
  5. 将其内容与 track_record.csv 中对应行比对。

提供在线验证工具:在线验证 ↗,无需安装任何软件,浏览器即可独立完成下载、解密、SHA-256 与 commit 时间戳核验。

统计学考量

本档案是一份单一的公开记录,自项目开始即提交至本仓库,并通过域名注册信息、账号创建时间、commit 时序等外部路径交叉锚定。

若假设本档案是从大量未公开的平行档案中事后挑选出来的,可对"所需平行档案数量"进行定量估计。

设每注以固定单位下注,平均赔率为 o,样本量为 N。在市场有效假设下(攻击者无真实 edge,期望 ROI = 0),有:

单注收益方差:

Var(X) = o − 1

ROI 标准差:

σROI = √( (o − 1) / N )

单一档案 ROI 超过门槛 T 的概率:

P(ROI ≥ T) = 1 − Φ( T / σROI )

攻击者运营 K 个平行档案,至少其中一个达到门槛的概率达 50% 所需的 K:

K ≈ ln(2) / P(ROI ≥ T)

代入典型值 o = 1.95、N = 1000,得 σROI ≈ 3.08%。攻击所需平行档案数量如下表:

ROI 门槛所需平行档案数量
5%约 13
10%约 1,200
15%约 120 万
20%约 160 亿

N ≥ 1000、ROI 稳定在 10% 以上时,所需平行档案数量已超出任何个人或组织可能并行运营的规模。每月快照将以档案截至当时的实际平均赔率代入,更新上述估算。

上述估算基于三个前提:单注结果近似独立;攻击者不具备真实 edge;单注收益的分布由中心极限定理近似为正态。在 ROI ≤ 15% 的区间,上述近似在常用误差范围内稳健;ROI ≥ 20% 的估算更依赖于尾概率近似,实际量级可能偏离一个到若干个数量级,但仍远超可行范围。

相关方法论参见 Bonferroni (1936) 多重比较修正、Benjamini-Hochberg (1995) 错误发现率控制,以及金融领域对数据窥探偏差的经典讨论(Sullivan, Timmermann, White 1999;Harvey, Liu, Zhu 2016)。