Hypotheses · age-stamina · H-b9326edc
Older higher-weighted marathon chasers match the young: weight position, not youth, carries the system
vault CONTRADICTED: A/E 0.903 on 1129 bets, p 0.8329 against BH threshold 0.002326 over 43 vault tests
Part of the thread “H175: young horse in a marathon chase” 20 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 16 Oct, 14:09
- Tests logged
- 11
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-d473ec0f (Rival: higher-weighted runners of all ages beat their price in maratho) passed discovery as a niche: A/E 1.21 on 338 bets (p 0.155), same-race control 0.6. O-4afbccc8
- H-ebbea470 (Rival: light weight, not youth, carries the marathon handicap chase li) was predicted positive but came out the other way: A/E 0.48 on 124 bets (p 0.08 for the opposite direction). O-ccf039fe
- AskedOnce weight position is held fixed, does youth add anything in marathon handicap chases? answered
- MechanismIf class, shown by being high in the weights, is what makes a marathon handicapper beat its price, then horses aged 8+ high in the weights should beat their price by as much as young ones. Young horses look good only because most of them are well up the weights.
- Why the market misses itThe market marks down big weights over marathon trips whatever the horse's age. The young system's lift would then be the same mispricing seen through an age filter.
- Predictedpositive, A/E 1.10 to 1.20 on 350+ bets, within 0.05 of young higher-weighted runners
- Falsified ifA/E at or below 1.0 on 300+ bets, which would mean youth is needed and weight position alone does not carry the lift
- Rule sketch
Mechanism and rationale
If class, shown by being high in the weights, is what makes a marathon handicapper beat its price, then horses aged 8+ high in the weights should beat their price by as much as young ones. Young horses look good only because most of them are well up the weights.
The rule
race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age >= 8 AND weight_lbs > bottom_weight_lbs + 7
Reads: race_type, is_handicap, distance_yards, age, weight_lbs, bottom_weight_lbs
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- b043efc29683675473d843d2f1b7aad6374c9374eda7123aba8e15623ade1a05
- Frozen
- 16 Oct, 14:17
- Nothing in the definition can change after this.
- Confounders
- Longshot wins: the all-age higher-weight lift relied on 4 wins at 16/1+ (1.28 on 125, CI 0.84 to 1.68). The 16/1-or-shorter refinement checks this
- Not independent: this population largely is the 1.154-on-352 'heavier older horses' slice already seen, so discovery partly re-reads data that is already known. The forward record is the real test
- Big-field festival marathon handicaps (Grand National type races) may produce lift whatever the horse's age or weight
- Class/rating: weight above bottom stands in for official rating, so the effect may be a class effect that weight position only labels
- Survivorship among older horses: 8+ year olds still high in the weights have stayed sound and well rated, which is a selected group
- The age 8-9 and 10+ bands each sat near par (0.97). Any lift here must come entirely from the weight split inside those bands
- Control
{ "description": "Same-race other runners: these are mostly the young runners and the lighter runners within 7 lb of bottom weight. If weight position carries the lift, the lighter runners should show well under par (the earlier 0.48–0.60) and the overall same-race control should sit below the rule. The direct comparison for the question 'does youth add anything once weight is fixed' is young higher-weighted runners in the same type of race. The rule's A/E should come within 0.05 of theirs. If the young group beats the older group by more than 0.10, then youth adds something.", "rule": "race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age <= 7 AND weight_lbs > bottom_weight_lbs + 7" }
Discovery result
pass broad rule (niche) · 16 Oct, 14:13
- Bets
- 253
- 23 winners
- A/E
- 1.18
- 95%: 0.75 to 1.77
- SP return
- -24.2%
- level stakes
- Betfair SP return
- -0.7%
- 253 bets with a BSP
Strike rate 9.1%. p = 0.24. Same-race control: the other runners in these races had A/E 0.87, 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. 6 of 6 survived.
- perturbation: Weight cut loosened to +5 lb above bottom weightpass
283 bets · A/E 1.16 (0.75 to 1.71) · control 0.86 · 16 Oct, 14:17
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-272611.16after 2026-04-2722–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - perturbation: Weight cut tightened to +9 lb above bottom weightpass
217 bets · A/E 1.32 (0.84 to 1.98) · control 0.80 · 16 Oct, 14:17
Breakdown
Sealed holdout (vault)
- Bets
- 1,129
- 16 Oct, 14:17
- A/E
- 0.90
- p = 0.83
- BH threshold then
- 0.0023
- over every vault test so far
- Outcome
- Failed
- vault query (contradicted)fail
1,129 bets · A/E 0.90 (0.72 to 1.12) · control 1.12 · 16 Oct, 14:17
Breakdown
betsA/E0.71.01.32020-225500.922023 to Sept 20255790.89
Forward record
No forward record. Shadow tracking starts after the vault and counts only races run after the freeze.
Lineage
Agent runs
designer v1ok · 38s · 16 Oct, 14:10
Output (schema-checked)
{ "rule": "race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age >= 8 AND weight_lbs > bottom_weight_lbs + 7", "refinements": [ { "label": "16/1 or shorter (strip the longshot wins that carry the all-age lift)", "rule": "race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age >= 8 AND weight_lbs > bottom_weight_lbs + 7 AND sp_decimal <= 17" }, { "label": "Ages 8-9 only (the band that sat near par overall, testing whether weight position rescues it)", "rule": "race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age >= 8 AND age <= 9 AND weight_lbs > bottom_weight_lbs + 7" } ], "control": { "description": "Same-race other runners: these are mostly the young runners and the lighter runners within 7 lb of bottom weight. If weight position carries the lift, the lighter runners should show well under par (the earlier 0.48–0.60) and the overall same-race control should sit below the rule. The direct comparison for the question 'does youth add anything once weight is fixed' is young higher-weighted runners in the same type of race. The rule's A/E should come within 0.05 of theirs. If the young group beats the older group by more than 0.10, then youth adds something.", "rule": "race_type = 'Chase' AND is_handicap = 1 AND distance_yards >= 6160 AND age <= 7 AND weight_lbs > bottom_weight_lbs + 7" }, "pass_criteria": { "min_bets": 250, "min_ae": 1.08, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1.05, "max_p": 0.2 }, "confounders": [ "Longshot wins: the all-age higher-weight lift relied on 4 wins at 16/1+ (1.28 on 125, CI 0.84 to 1.68). The 16/1-or-shorter refinement checks this", "Not independent: this population largely is the 1.154-on-352 'heavier older horses' slice already seen, so discovery partly re-reads data that is already known. The forward record is the real test", "Big-field festival marathon handicaps (Grand National type races) may produce lift whatever the horse's age or weight", "Class/rating: weight above bottom stands in for official rating, so the effect may be a class effect that weight position only labels", "Survivorship among older horses: 8+ year olds still high in the weights have stayed sound and well rated, which is a selected group", "The age 8-9 and 10+ bands each sat near par (0.97). Any lift here must come entirely from the weight split inside those bands" ], "mechanism": "In 3m4f+ handicap chases, being high in the weights marks class: a horse rated well enough to carry more than 7 lb above bottom weight. The hypothesis says class, not youth, is why these runners beat their price. If so, horses aged 8+ high in the weights should beat their price by about as much as young higher-weighted ones. The young system would then look good only because most young marathon runners are well up the weights.", "market_miss": "Over marathon trips, punters and odds compilers mark down big weights whatever the horse's age, on the folk belief that weight anchors stayers over long trips. That pushes higher-weighted runners out in price. The young-stayer system's lift would then be this same weight mispricing seen through an age filter.", "prediction": { "direction": "positive", "size": "A/E 1.10 to 1.20 on 300+ bets, within 0.05 of young higher-weighted runners in the same races", "falsified_if": "A/E at or below 1.0 on 300+ bets, or more than 0.10 below the young higher-weighted control. Either would mean youth is needed and weight position alone does not carry the lift. Also falsified if the lift disappears (A/E at or below 1.0) at 16/1 or shorter." }, "notes": "I kept the rule sketch unchanged. weight_lbs is used in rules already measured for this family. The pass bar is stricter than the floor (250 bets, A/E 1.08) because this population overlaps the 1.154-on-352 slice already seen, so discovery is not a clean out-of-sample test. The forward bar is A/E 1.05 so the live record has to confirm a real lift, not just par. Refinements come only from the reasoning: the longshot confound and the 8-9 band that sat near par." }
Timeline
Job 1788 finished
· engine:compute-1
H-b9326edc Vault → KILLEDfailed the vault vault CONTRADICTED: A/E 0.903 on 1129 bets, p 0.8329 against BH threshold 0.002326 over 43 vault tests
· engine:orchestrator
vault result for H-b9326edc (vault query (contradicted)): fail
· engine:orchestrator
H-b9326edc Frozen → FROZENvault vault query started
· engine:orchestrator
compute-1 took job 1788 (vault, attempt 1)
· compute-1
Job 1778 finished
· engine:compute-1
Queued vault on the compute lane: frozen: one sealed vault query
· engine:scheduler
H-b9326edc Falsification → FROZEN survived falsification
· engine:falsification
falsification result for H-b9326edc (control: Control: same older higher-weight runners at 3m to 3m3f): pass
· engine:evaluator
compute-1 took job 1778 (attack, attempt 1)
· compute-1
Job 1777 finished
· engine:compute-1
falsification result for H-b9326edc (partition: Exclude big-field festival marathons (field 16 or fewer)): pass
· engine:evaluator
compute-1 took job 1777 (attack, attempt 1)
· compute-1
Job 1776 finished
· engine:compute-1
falsification result for H-b9326edc (price_band: 16/1 or shorter only (strip the 4 longshot wins)): pass
· engine:evaluator
compute-1 took job 1776 (attack, attempt 1)
· compute-1
Job 1775 finished
· engine:compute-1
falsification result for H-b9326edc (perturbation: Trip cut lowered about 10% to 3m1f+): pass
· engine:evaluator
compute-1 took job 1775 (attack, attempt 1)
· compute-1