Hypotheses · age · H-9f1471b0
Older horses in non-handicap novice chases match the young ones (race-type rival to H45)
fails: A/E 0.974, needs 1.05; p 0.6117, needs 0.05 or lower; periods [1.0, 0.88], each needs 1.0; A/E 0.974 against same-race control 1.16, needs 0.03 above (not a niche pass: A/E 0.974 below 1.05; p 0.6116703107013322 above 0.5; does not beat the same-race control 1.16; a period points the other wa
Part of the thread “H45: young horses in novice chases” 5 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 16 Oct, 11:05
- Tests logged
- 1
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-ce840402 (Young horses in handicap chases also beat their price) was predicted positive but came out the other way: A/E 0.97 on 521 bets (p 0.412 for the opposite direction). O-4dc10e5b
- AskedDo all runners in non-handicap novice chases beat the field-size-corrected yardstick, so that H45's imported lift is a property of the race type rather than of age? testing
- MechanismNon-handicap novice chases have small fields and odds-on favourites, and every runner's jumping is largely unknown. A yardstick corrected for field size and price could misprice the whole race type, and young horses would simply inherit that. Young horses beat their price in this race type but not in handicap chases, which fits a race-type effect.
- Why the market misses itIf this is real, it is not something the market misses. It would be a gap in the lab's yardstick for small novice chase fields, which would explain why the import and the lab's re-measurement disagree.
- Predictedpositive, A/E 1.03 to 1.09 on 800+ bets, similar to the young runners in the same races
- Falsified ifA/E at or below 1.00 across the periods while age 5 and under stays higher, which would leave age as the explanation
- Rule sketch
Mechanism and rationale
Non-handicap novice chases have small fields and odds-on favourites, and every runner's jumping is largely unknown. A yardstick corrected for field size and price could misprice the whole race type, and young horses would simply inherit that. Young horses beat their price in this race type but not in handicap chases, which fits a race-type effect.
The rule
race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age >= 6
Reads: race_type, is_novice, is_handicap, age
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 067c1e1455b905970a21162c192cc2148e0fcb9136dc2e0a3f7421054bc112a3
- Frozen
- not frozen
- The definition can still change.
- Confounders
- Field size: non-handicap novice chases often have 3 to 6 runners, which is where the yardstick's field-size correction is least tested
- Odds-on favourites dominating small fields, which squeezes the price of everyone else and can distort the A/E of the outsiders
- Festival and graded novice chases (Grade 1/2), which bring stronger fields and different market depth from ordinary novice chases
- Irish race class missing before 2026-07, so it cannot be used to separate graded from ordinary races in IRE
- Period effect: H45's lift came entirely from the later periods (first period 1.00), so a race-type effect must also show up period by period, not just in the pooled figure
- Longshot artefact: lifts at 16/1 or bigger are common to many rules and are not evidence for this one
- Ex-pointers and older hurdlers going chasing are a different population from young ex-hurdlers, so age is mixed up with background
- Control
{ "description": "Main comparison: the young runners (age 5 or under) in the same race type, which is the H45 rule. If the lift belongs to the race type, both groups should come out about the same (within about 0.04 A/E) in every period. If age 6+ sits at or below 1.00 while age 5 and under stays at about 1.05 or higher, age is the explanation. The automatic same-race control (other runners in the same races, mostly the under-6s) should show the mirror image: near the test group if it is a race-type effect, above it if age drives it.", "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age <= 5" }
Discovery result
fail broad rule · 16 Oct, 11:06
- Bets
- 503
- 88 winners
- A/E
- 0.97
- 95%: 0.78 to 1.20
- SP return
- -24.0%
- level stakes
- Betfair SP return
- -2.3%
- 487 bets with a BSP
Strike rate 17.5%. p = 0.61. Same-race control: the other runners in these races had A/E 1.16, so the selection did not beat its own races. Zone: discovery. Evaluator eval-1.0, data 2887c9abd664f46f
By period
Falsification
No attacks yet. Only promising ideas are attacked.
Sealed holdout (vault)
Not queried. Only a frozen idea can spend its one query against the 2020-25 holdout.
Forward record
No forward record. Shadow tracking starts after the vault and counts only races run after the freeze.
Lineage
Agent runs
designer v1ok · 23s · 16 Oct, 11:05
Output (schema-checked)
{ "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age >= 6", "refinements": [ { "label": "small fields (6 runners or fewer)", "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age >= 6 AND field_size <= 6" }, { "label": "14/1 or shorter (avoid the known longshot artefact)", "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age >= 6 AND sp_decimal <= 15" }, { "label": "race has an odds-on favourite, runner is not the favourite", "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age >= 6 AND favourite_sp < 2 AND sp_rank > 1" } ], "control": { "description": "Main comparison: the young runners (age 5 or under) in the same race type, which is the H45 rule. If the lift belongs to the race type, both groups should come out about the same (within about 0.04 A/E) in every period. If age 6+ sits at or below 1.00 while age 5 and under stays at about 1.05 or higher, age is the explanation. The automatic same-race control (other runners in the same races, mostly the under-6s) should show the mirror image: near the test group if it is a race-type effect, above it if age drives it.", "rule": "race_type = 'Chase' AND is_novice = 1 AND is_handicap = 0 AND age <= 5" }, "pass_criteria": { "min_bets": 400, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 150, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "Field size: non-handicap novice chases often have 3 to 6 runners, which is where the yardstick's field-size correction is least tested", "Odds-on favourites dominating small fields, which squeezes the price of everyone else and can distort the A/E of the outsiders", "Festival and graded novice chases (Grade 1/2), which bring stronger fields and different market depth from ordinary novice chases", "Irish race class missing before 2026-07, so it cannot be used to separate graded from ordinary races in IRE", "Period effect: H45's lift came entirely from the later periods (first period 1.00), so a race-type effect must also show up period by period, not just in the pooled figure", "Longshot artefact: lifts at 16/1 or bigger are common to many rules and are not evidence for this one", "Ex-pointers and older hurdlers going chasing are a different population from young ex-hurdlers, so age is mixed up with background" ], "mechanism": "Non-handicap novice chases have small fields, often an odds-on favourite, and runners whose jumping over fences is mostly unknown. If the lab's yardstick (corrected for price and field size) mismeasures this race type, every runner in it will look like it beats its price, whatever its age. H45's young horses would then just be inheriting a race-type property. Youth showed no lift in handicap chases (0.97), which fits this. If the race-type explanation holds, horses aged 6 and over in the same races should show a similar lift.", "market_miss": "This is not claimed as a market inefficiency. If it holds, it shows a gap in the yardstick for small novice-chase fields: the expected-winner figure would be biased in this race type. That would also explain why the imported H45 figure (1.09) and the lab's re-measurement (0.96 on 204) disagree. A pass would mean recalibrating the yardstick, not adopting a betting system.", "prediction": { "direction": "positive", "size": "A/E 1.03 to 1.09 on 800+ bets, within about 0.04 of the age 5 and under runners in the same races, and the same in every period", "falsified_if": "A/E at or below 1.00 pooled or in two or more periods while the age 5 and under control stays at 1.05 or higher; that leaves age, not race type, as the explanation for H45" }, "notes": "I kept the rule sketch as it was. It only uses pre-off columns (race_type, is_novice, is_handicap, age). This is a rival-explanation test, so the result that matters is the gap to the age 5 and under group, not the pass or fail on its own. I raised min_bets to 400 because the predicted sample is 800+ and a small edge needs depth. Look at the refinements only if the broad rule shows evidence. The odds-on-favourite refinement tests the squeeze on the price of everyone else. Read any result against the lab's own 0.963 re-measurement of H45, not the imported 1.09." }
Timeline
Job 1228 finished
· engine:compute-1
H-9f1471b0 Discovery → KILLED fails: A/E 0.974, needs 1.05; p 0.6117, needs 0.05 or lower; periods [1.0, 0.88], each needs 1.0; A/E 0.974 against same-race control 1.16, needs 0.03 above (not a niche pass: A/E 0.974 below 1.05; p 0.6116703107013322 above 0.5; does not beat the same-race control 1.16; a period points the other way [1.0, 0.88])
· engine:evaluator
discovery result for H-9f1471b0 (broad rule): fail
· engine:evaluator
H-9f1471b0 Designed → RESEARCHdiscovery measuring on the discovery zone
· engine:orchestrator
compute-1 took job 1228 (evaluate, attempt 1)
· compute-1
Job 1227 finished
· engine:ai-1
Queued evaluate on the compute lane: discovery run of the broad rule
· engine:scheduler
H-9f1471b0 Proposed → RESEARCHdesigned pre-spec written and hashed
· agent:designer@v1
ai-1 took job 1227 (design, attempt 1)
· ai-1
Queued design on the ai lane: write the pre-spec
· engine:scheduler
New idea H-9f1471b0: Older horses in non-handicap novice chases match the young ones (race-type rival to H45) (rival-explanation)
· agent:investigator@v1
Every change is an event with an actor: an agent and its version, an engine, a human, or the importer. Current stage: Killed.