Our pregame fair value is at statistical parity with Pinnacle + Polymarket pregame prices, snapshotted 1.5–2 hours before the start (not closing lines) — pre-registered and verified on-chain. We publish our losses.

Live pre-committed benchmarks

Our model vs the market, on-chain

Each benchmark below is a separate pre-committed experiment. The rules for each are frozen by a SHA-256 hash broadcast to Polygon before the first eligible game. We publish every result, including the losses.

MLB

ZenHodl vs Polymarket Consensus — MLB June 2026 Regular-Season Sample

On-chain ✓
Complete
First 100 MLB regular-season games tipping on or after 2026-06-01 for which both ZenHodl and Polymarket markets are available at T-60
254
Resolved
0.039
ZH ECE
0.051
PM ECE
NBA

ZenHodl vs Pinnacle Pregame Line — NBA Playoffs 2026 Calibration Benchmark

On-chain ✓
Closed
2026 Conference Semifinals through Finals (inclusive)
29
Resolved
0.123
ZH ECE
0.186
Pinnacle ECE
NBA

ZenHodl vs Polymarket Consensus — NBA Playoffs 2026 Calibration Benchmark

On-chain ✓
Closed
2026 Conference Semifinals through Finals (inclusive)
36
Resolved
0.193
ZH ECE
0.183
PM ECE
NHL

ZenHodl vs Pinnacle Pregame Line — NHL Playoffs 2026 Calibration Benchmark

On-chain ✓
Closed
2026 Stanley Cup Playoffs Conference Semifinals through Stanley Cup Finals (inclusive)
29
Resolved
0.122
ZH ECE
0.121
Pinnacle ECE
NHL

ZenHodl vs Polymarket Consensus — NHL Playoffs 2026 Calibration Benchmark

On-chain ✓
Closed
2026 Stanley Cup Playoffs Conference Semifinals through Stanley Cup Finals (inclusive)
24
Resolved
0.203
ZH ECE
0.150
PM ECE

How these work

  1. Each benchmark has a manifest JSON declaring the scope, metrics, and rules.
  2. Before the first eligible game, the manifest's SHA-256 hash is broadcast to Polygon.
  3. At T-60 minutes before each game tips off, both ZenHodl's and Polymarket's probabilities are logged.
  4. After each game settles, we resolve the outcome from ESPN and append a scored row.
  5. If we ever edit the manifest during the window, the live hash stops matching the on-chain receipt. You can verify.