Hypotheses · trajectory · H-a44d6bdc
Rival: the chase unseater lift is a long-price artefact; test unseaters under 16/1
forward A/E 0.0 on 0 bets, SP ROI None%, BSP ROI None% (p None)
Part of the thread “H85: fell when going well” 20 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 17 Oct, 03:00
- Tests logged
- 17
Reasoning
Why this hypothesis exists: what the lab saw, the question it asked, the mechanism it proposed, what it predicted, and the result that would prove it wrong. Written before the test was run.
- Observed
- H-f8d6b9d7 (Generalise: all last-time chase unseaters beat their price, going well) passed discovery: A/E 1.4 on 213 bets (p 0.048), same-race control 0.96. O-4c8868a6
- H-9f59a0ed (Sharpen: chase unseaters with no jumping error recorded last time) passed discovery as a niche: A/E 1.41 on 110 bets (p 0.131), same-race control 0.96. O-e6040866
- AskedDo last-time chase unseaters beat their price below 16/1, or is the A/E 1.40 carried by 4 long-priced winners? answered
- MechanismAn unseat often happens through bad luck, interference or a rider losing balance, and it tells little about the horse's ability. If the market over-punishes the UR letter, horses at every price should beat their odds. If the lift is only the noise of a few 16/1+ winners, it vanishes below 16/1.
- Why the market misses itPunters read UR as a failed run and drift the horse. The figures say the horse was usually competing normally when it lost its rider.
- Predictedpositive, A/E 1.10 to 1.25 on 110+ bets
- Falsified ifA/E at or below 1.02 under 16/1, which would mean the unseat edge is long-shot variance and not a mispriced letter.
- Rule sketch
Mechanism and rationale
An unseat often happens through bad luck, interference or a rider losing balance, and it tells little about the horse's ability. If the market over-punishes the UR letter, horses at every price should beat their odds. If the lift is only the noise of a few 16/1+ winners, it vanishes below 16/1.
The rule
race_type = 'Chase' AND last_non_finish_code = 'UR' AND sp_decimal < 17
Reads: race_type, last_non_finish_code, sp_decimal
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- f0efa00a361ff8d39658332bdb268d02fb5900b4656244cae5b97017fffa7231
- Frozen
- 17 Oct, 03:09
- Nothing in the definition can change after this.
- Confounders
- Field size and race type at long prices: excluding 16/1+ removes most big-field handicap longshots, which changes the race mix as well as the price
- Small number of winners: with roughly 120 bets under 16/1 and about 20 winners, one or two results move A/E by 0.1
- Handicap versus non-handicap mix (refinement 2 addresses this)
- Same-race favourite-longshot bias: the price cut alone pulls A/E up relative to an unrestricted sample, so judge it against the same-race and PU controls at matching prices
- Column window: last_non_finish_code only separates UR from PU from 2025-01-01 (every earlier non-finisher is coded PU), so the sample is about two seasons, and a vault window before 2025 will return 0 bets, as happened with H-f8d6b9d7
- Overlap with the going-well system: some unseaters are flagged going-well, and that lift has its own price profile
- Control
{ "description": "The lab's default: other runners in the same races. Expect A/E about 0.95 to 1.00, in line with the 0.96 to 0.97 controls seen on the broad unseater cuts. The second control is chase runners under 16/1 whose last run ended in a pull-up, a non-finish that does say something about ability. It uses only the window where codes are real (from 2025). If unseaters beat this group at the same prices, the edge belongs to the UR letter and not to non-finishers in general. Expect PU runners near or below 1.00.", "rule": "race_type = 'Chase' AND last_non_finish_code = 'PU' AND sp_decimal < 17 AND race_date >= '2025-01-01'" }
Discovery result
pass broad rule (niche) · 17 Oct, 03:02
- Bets
- 122
- 25 winners
- A/E
- 1.35
- 95%: 0.88 to 2.00
- SP return
- +19.9%
- level stakes
- Betfair SP return
- +40.8%
- 122 bets with a BSP
Strike rate 20.5%. p = 0.084. Same-race control: the other runners in these races had A/E 0.94, so the selection beat its own races. Zone: discovery. Evaluator eval-1.0, data 6a4e98be18e83933
By period
Falsification
Each attack is a deliberate attempt to kill the idea. 5 of 6 survived.
- price_band: Short-price core: 7/1 or shorter onlypass
62 bets · A/E 1.20 (0.70 to 1.93) · control 0.94 · 17 Oct, 03:09
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-27461.33after 2026-04-2716–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - perturbation: Perturb price cut down 25%: under 12/1pass
101 bets · A/E 1.33 (0.84 to 1.99) · control 0.93 · 17 Oct, 03:09
Breakdown
Sealed holdout (vault)
- Bets
- 0
- 17 Oct, 03:09
- A/E
- –
- p = 1.0
- BH threshold then
- 0.0020
- over every vault test so far
- Outcome
- Failed
- vault query (supportive)pass
0 bets · · 17 Oct, 03:09
Breakdown
betsA/E0.71.01.32020-220–2023 to Sept 20250–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets.
Forward record
- forward vs bar {'min_bets': 100, 'min_ae': 1.05, 'max_p': 0.2}info
0 bets · · 17 Oct, 03:10
Breakdown
betsA/E0.71.01.3forward0–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets.
Other experiments
- neighbour: < 17 -> 14 (-20%)pass
114 bets · A/E 1.33 (0.85 to 1.98) · control 0.94 · 17 Oct, 03:02
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-27721.35after 2026-04-27421.27Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - neighbour: < 17 -> 20 (+20%)pass
146 bets · A/E 1.34 (0.88 to 1.96) · control 0.95 · 17 Oct, 03:02
Breakdown
Lineage
Agent runs
designer v1ok · 40s · 17 Oct, 03:00
Output (schema-checked)
{ "rule": "race_type = 'Chase' AND last_non_finish_code = 'UR' AND sp_decimal < 17", "refinements": [ { "label": "8/1 or shorter: the lift should survive at prices where long-shot variance cannot carry it", "rule": "race_type = 'Chase' AND last_non_finish_code = 'UR' AND sp_decimal < 17 AND sp_decimal <= 9" }, { "label": "Handicaps only: removes the handicap/non-handicap mix confounder, where most unseaters run", "rule": "race_type = 'Chase' AND last_non_finish_code = 'UR' AND sp_decimal < 17 AND is_handicap = 1" } ], "control": { "description": "The lab's default: other runners in the same races. Expect A/E about 0.95 to 1.00, in line with the 0.96 to 0.97 controls seen on the broad unseater cuts. The second control is chase runners under 16/1 whose last run ended in a pull-up, a non-finish that does say something about ability. It uses only the window where codes are real (from 2025). If unseaters beat this group at the same prices, the edge belongs to the UR letter and not to non-finishers in general. Expect PU runners near or below 1.00.", "rule": "race_type = 'Chase' AND last_non_finish_code = 'PU' AND sp_decimal < 17 AND race_date >= '2025-01-01'" }, "pass_criteria": { "min_bets": 150, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1.05, "max_p": 0.2 }, "confounders": [ "Field size and race type at long prices: excluding 16/1+ removes most big-field handicap longshots, which changes the race mix as well as the price", "Small number of winners: with roughly 120 bets under 16/1 and about 20 winners, one or two results move A/E by 0.1", "Handicap versus non-handicap mix (refinement 2 addresses this)", "Same-race favourite-longshot bias: the price cut alone pulls A/E up relative to an unrestricted sample, so judge it against the same-race and PU controls at matching prices", "Column window: last_non_finish_code only separates UR from PU from 2025-01-01 (every earlier non-finisher is coded PU), so the sample is about two seasons, and a vault window before 2025 will return 0 bets, as happened with H-f8d6b9d7", "Overlap with the going-well system: some unseaters are flagged going-well, and that lift has its own price profile" ], "mechanism": "An unseat usually comes from bad luck, interference, a peck, or a rider losing balance, and often happens while the horse is competing normally. So the UR letter says little about the horse's ability or form. If the market drifts every last-time unseater on the strength of the letter alone, the mispricing should show at all prices, including 16/1 and shorter. If the 1.40 A/E on all chase unseaters is only the noise of 4 winners at 16/1+ (A/E 1.79 on 91), the edge should vanish below 16/1.", "market_miss": "Punters and form summaries read UR like any other failed run and drift the horse next time. They do not separate a lost rider, which usually happened during a normal run, from a pull-up or a tired fall, which do reflect the horse. If the drift also shows in the mid and short price range, where the market is most efficient, that would indicate a true letter-based mispricing.", "prediction": { "direction": "positive", "size": "A/E 1.10 to 1.25 on roughly 110 to 130 bets at 16/1 or shorter (sp_decimal < 17)", "falsified_if": "A/E at or below 1.02 under 16/1, or no better than the matched-price PU control. Either would mean the chase unseater lift is long-shot variance carried by the 16/1+ winners, not a mispriced UR letter." }, "notes": "sp_decimal < 17 means 16/1 or shorter, the exact complement of the '16/1 or bigger' cut (91 bets, A/E 1.79) in the findings, so the two halves add up to the 213-bet parent. The expected sample of about 122 bets is below the 150-bet discovery floor. A result that points the right way is expected to go on to falsification and forward tracking, not to pass discovery outright. The vault and forward windows must start on or after 2025-01-01, because last_non_finish_code cannot tell UR from PU before then." }
Timeline
Job 2599 finished
· engine:compute-1
forward result for H-a44d6bdc (forward vs bar {'min_bets': 100, 'min_ae': 1.05, 'max_p': 0.2}): info
· engine:evaluator
compute-1 took job 2599 (forward_check, attempt 1)
· compute-1
Queued forward_check on the compute lane: daily forward check of a shadow system
· engine:scheduler
Job 2582 finished
· engine:compute-1
H-a44d6bdc Vault → SHADOW vault SUPPORTIVE: A/E None on 0 bets, p 1 against BH threshold 0.002041 over 49 vault tests
· engine:orchestrator
vault result for H-a44d6bdc (vault query (supportive)): pass
· engine:orchestrator
H-a44d6bdc Frozen → FROZENvault vault query started
· engine:orchestrator
compute-1 took job 2582 (vault, attempt 1)
· compute-1
Job 2581 finished
· engine:compute-1
Queued vault on the compute lane: frozen: one sealed vault query
· engine:scheduler
H-a44d6bdc Falsification → FROZEN survived falsification
· engine:falsification
falsification result for H-a44d6bdc (partition: Handicaps only): pass
· engine:evaluator
compute-1 took job 2581 (attack, attempt 1)
· compute-1
Job 2580 finished
· engine:compute-1
falsification result for H-a44d6bdc (partition: Strip the going-well overlap): pass
· engine:evaluator
compute-1 took job 2580 (attack, attempt 1)
· compute-1
Job 2579 finished
· engine:compute-1
falsification result for H-a44d6bdc (control: Control: chase fallers proper at the same prices): pass
· engine:evaluator