Hypotheses · seasonal · H-b2362b70
Lightly raced three-year-old spring returners: is the mispricing only for four-year-olds?
fails: A/E 1.035, needs 0.95 or lower; p 0.6363 (lower tail), needs 0.05; periods [1.04, 1.02], each needs 0.99 or lower; A/E 1.035 against same-race control 0.997, needs 0.03 below
Part of the thread “H126: lightly raced four year old returns” 32 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 16 Oct, 13:09
- 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-2fa8d5cc (Lightly raced older handicappers back from a break: a powered age cont) pointed the predicted way but failed the bar: A/E 0.64 on 119 bets (p 0.908), control 1.04. O-6ea233f1
- H-2d115a58 (Early-spring four-year-old returners: the lift sits in March and April) passed discovery as a niche: A/E 1.29 on 322 bets (p 0.068), same-race control 0.95. O-ed858a4b
- AskedIs the H126 lift caused by four-year-old physical maturation that the handicap mark hasn't caught up with, or just by lightly raced horses returning fresh at any age? answered
- MechanismIf the cause is physical development over the winter that the mark has not caught up with, three-year-olds coming back from their juvenile season should show it as strongly as four-year-olds or more. If the cause is the market doubting that a four-year-old still has improvement in it, three-year-olds, whose improvement everyone expects, should be fully priced.
- Why the market misses itEveryone expects three-year-olds to improve from two to three, so the market already prices that in. A lightly raced four-year-old is often written off as having had its chance at three, which is a doubt about further progress that the market does not shade for.
- Predictednegative, A/E 0.92 to 1.03 on 1000+ bets, clearly below the four-year-old base of 1.13
- Falsified if
Mechanism and rationale
If the cause is physical development over the winter that the mark has not caught up with, three-year-olds coming back from their juvenile season should show it as strongly as four-year-olds or more. If the cause is the market doubting that a four-year-old still has improvement in it, three-year-olds, whose improvement everyone expects, should be fully priced.
The rule
race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 3 AND prior_runs <= 10 AND days_since_last_run >= 150
Reads: race_type, is_handicap, month, age, prior_runs, days_since_last_run
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- bfcbfa134822aaac966e9fad17c268a30dd16464353ef43bfb9a9a6bff143581
- Frozen
- not frozen
- The definition can still change.
- Confounders
- First-time handicappers dominate spring three-year-old handicaps. Their marks are set from two or three maiden runs and are noisier than four-year-old marks (tested by the last_is_handicap = 1 refinement)
- Spring three-year-old handicaps cluster at classic-trial meetings, where strong yards bring well-handled improvers, so trainer quality may differ from the four-year-old sample
- Gelding over the winter is more common between two and three and gives a step forward the mark does not reflect
- Stable support on reappearance is heavier for three-year-olds, so SP may already carry the information and push A/E toward 1.0
- prior_runs only counts from July 2020, so it is accurate for three-year-olds (whose careers start inside the window) but understated for four-year-olds early in the window. The two age groups' 'lightly raced' samples are not perfectly like for like
- The longshot band has been unstable across overlapping cuts in this family, so 16/1+ results can swing the broad A/E
- Control
{ "description": "Same-race control: the other runners in these spring three-year-old handicaps should score about 1.0. Most of them are also three-year-olds, many also returning, so a gap between selections and same-race rivals would point to the long-break, lightly-raced profile and not to the race type. The key comparison for this rival-explanation test is the four-year-old returner rule measured on the same window. Under the market-doubt account, three-year-olds should sit at about 0.92-1.03, clearly below the four-year-olds (about 1.13 over March-May, 1.29 in March-April). If both sit at 1.10 or more, that favours general winter maturation.", "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 4 AND prior_runs <= 10 AND days_since_last_run >= 150" }
Discovery result
fail broad rule · 16 Oct, 13:15
- Bets
- 640
- 58 winners
- A/E
- 1.03
- 95%: 0.79 to 1.34
- SP return
- -29.9%
- level stakes
- Betfair SP return
- -13.1%
- 640 bets with a BSP
Strike rate 9.1%. p = 0.41. Same-race control: the other runners in these races had A/E 1.00, so the selection beat its own races. Zone: discovery. Evaluator eval-1.0, data 6a4e98be18e83933
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 · 34s · 16 Oct, 13:09
Output (schema-checked)
{ "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 3 AND prior_runs <= 10 AND days_since_last_run >= 150", "refinements": [ { "label": "Early spring only (March-April), the same window where the four-year-old lift is concentrated", "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4) AND age = 3 AND prior_runs <= 10 AND days_since_last_run >= 150" }, { "label": "14/1 or shorter, matching the capped four-year-old rule that passed discovery (1.21 on 337)", "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 3 AND prior_runs <= 10 AND days_since_last_run >= 150 AND sp_decimal <= 15" }, { "label": "Last run was itself a handicap: removes first-time handicappers whose marks come from maiden runs (confounder 1)", "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 3 AND prior_runs <= 10 AND days_since_last_run >= 150 AND last_is_handicap = 1" } ], "control": { "description": "Same-race control: the other runners in these spring three-year-old handicaps should score about 1.0. Most of them are also three-year-olds, many also returning, so a gap between selections and same-race rivals would point to the long-break, lightly-raced profile and not to the race type. The key comparison for this rival-explanation test is the four-year-old returner rule measured on the same window. Under the market-doubt account, three-year-olds should sit at about 0.92-1.03, clearly below the four-year-olds (about 1.13 over March-May, 1.29 in March-April). If both sit at 1.10 or more, that favours general winter maturation.", "rule": "race_type = 'Flat' AND is_handicap = 1 AND month IN (3, 4, 5) AND age = 4 AND prior_runs <= 10 AND days_since_last_run >= 150" }, "pass_criteria": { "min_bets": 300, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 150, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "First-time handicappers dominate spring three-year-old handicaps. Their marks are set from two or three maiden runs and are noisier than four-year-old marks (tested by the last_is_handicap = 1 refinement)", "Spring three-year-old handicaps cluster at classic-trial meetings, where strong yards bring well-handled improvers, so trainer quality may differ from the four-year-old sample", "Gelding over the winter is more common between two and three and gives a step forward the mark does not reflect", "Stable support on reappearance is heavier for three-year-olds, so SP may already carry the information and push A/E toward 1.0", "prior_runs only counts from July 2020, so it is accurate for three-year-olds (whose careers start inside the window) but understated for four-year-olds early in the window. The two age groups' 'lightly raced' samples are not perfectly like for like", "The longshot band has been unstable across overlapping cuts in this family, so 16/1+ results can swing the broad A/E" ], "mechanism": "Two rival accounts of the four-year-old spring-returner edge. (a) Winter physical development that the handicap mark has not caught up with: this should apply to any young horse, and to three-year-olds returning from a juvenile season at least as strongly. (b) The market doubting that a lightly raced four-year-old still has improvement in it: this is specific to four-year-olds, because improvement from two to three is universally expected and priced. Rule (a) predicts that three-year-old returners beat SP like four-year-olds do; rule (b) predicts they are fully priced.", "market_miss": "Punters and bookmakers expect three-year-olds to improve from two to three, so their reappearance prices already include it. A lightly raced four-year-old tends to be written off as having had its chance at three. That doubt about further progress is not shaded for, which only creates a mispricing at four. If the three-year-olds are also underpriced, the miss is a general under-reaction to winter maturation, not an age-four blind spot.", "prediction": { "direction": "negative", "size": "A/E about 0.92-1.03 on 1000+ bets: fully priced, clearly below the four-year-old base of about 1.13", "falsified_if": "Three-year-old returners score A/E 1.10 or more on 1000+ bets (or pass the positive discovery bar), which favours general young-horse maturation over a misjudgement specific to four-year-olds" }, "notes": "Rival-explanation test: the hypothesis predicts these horses are fully priced (A/E near 1.0), not strongly over-bet. 'Negative' is registered as the direction because the claim is that this group does not carry the edge. A result of about 0.95-1.03 supports the four-year-old-specific account even though it would not count as a 'pass' in the over-bet sense. The informative quantity is the gap against the four-year-old control rule on the same window. The rule is kept exactly as sketched so that only age changes from the four-year-old base. I raised min_bets to 300 because three-year-old samples should be large and the thread has already been misled by thin cuts. I did not add Irish splits: earlier findings show country slices in this thread can't be read. month is the race month, as used throughout this family's rules." }
Timeline
Job 1548 finished
· engine:compute-1
H-b2362b70 Discovery → KILLED fails: A/E 1.035, needs 0.95 or lower; p 0.6363 (lower tail), needs 0.05; periods [1.04, 1.02], each needs 0.99 or lower; A/E 1.035 against same-race control 0.997, needs 0.03 below
· engine:evaluator
discovery result for H-b2362b70 (broad rule): fail
· engine:evaluator
H-b2362b70 Designed → RESEARCHdiscovery measuring on the discovery zone
· engine:orchestrator
compute-1 took job 1548 (evaluate, attempt 1)
· compute-1
Job 1546 finished
· engine:ai-1
Queued evaluate on the compute lane: discovery run of the broad rule
· engine:scheduler
H-b2362b70 Proposed → RESEARCHdesigned pre-spec written and hashed
· agent:designer@v1
ai-1 took job 1546 (design, attempt 1)
· ai-1
Queued design on the ai lane: write the pre-spec
· engine:scheduler
New idea H-b2362b70: Lightly raced three-year-old spring returners: is the mispricing only for four-year-olds? (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.