Hypotheses · yard-planned-move · H-432686d7
Negative: short-priced planned moves from yards proven poor at that move
fails: 195 bets, needs 300; p 0.2237 (lower tail), needs 0.05
Starts the thread “Negative: short-priced planned moves from yards proven poor at that move” 2 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Scout agent, v1
- Made by
- scout
- Created
- 17 Oct, 04:56
- 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-2af132dc (Generalise: an unchanged mark after a heavy beating lifts close-form j) passed discovery: A/E 1.31 on 506 bets (p 0.026), same-race control 0.98. O-388a8a14
- H-8cff5453 (Replicate: recent winners beaten 20+ lengths in non-handicap jumps rac) was predicted positive but came out the other way: A/E 0.88 on 211 bets (p 0.268 for the opposite direction). O-6896f0b0
- AskedAre short-priced chase debutants and handicap debutants from yards with a long, poor record at that move over-bet?
- MechanismSome yards repeatedly fail at a particular move: their chasers jump poorly first time, or their horses go into handicaps with marks that are too high. The cause is how the yard schools and places horses, and it persists from season to season.
- Why the market misses itA short price on a debut rests on hurdle or maiden form and the yard's overall profile. The yard's specific failure rate at that move is hidden inside its general strike rate, so the market prices the horse's form and not the yard's weakness. Pretty, visible form gets trusted.
- Predictednegative, A/E 0.80 to 0.92 on 300+ bets
- Falsified ifA/E at or above 0.98 on 250+ bets
- Rule sketch
sp_decimal <= 6 AND ((tx_chase_debut_runs >= 20 AND tx_chase_debut_wins <= 0.7 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins <= 0.7 * tx_hcap_debut_exp)) - operator
Mechanism and rationale
Some yards repeatedly fail at a particular move: their chasers jump poorly first time, or their horses go into handicaps with marks that are too high. The cause is how the yard schools and places horses, and it persists from season to season.
The rule
sp_decimal <= 6 AND ((tx_chase_debut_runs >= 20 AND tx_chase_debut_wins <= 0.7 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins <= 0.7 * tx_hcap_debut_exp))
Reads: sp_decimal, tx_chase_debut_runs, tx_chase_debut_wins, tx_chase_debut_exp, tx_hcap_debut_runs, tx_hcap_debut_wins, tx_hcap_debut_exp
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 63150794274bf0f98e18d774e38bfe9b8cf5908bddd161fc3866382f143887f4
- Frozen
- not frozen
- The definition can still change.
- Confounders
- sp_decimal is the price at the off. The catalogue marks it pre_off, but it is not known when a bet is struck early, so forward tracking must bet at or near the off
- Short-priced runners are already priced near fair (favourite-longshot bias), so there is little room for over-betting and a small sample can easily show nothing
- Small-yard records are noisy and regress to the mean. With 20 to 25 runs, a 0.7×expected cut catches yards that were merely unlucky (refinement 3 tests this)
- Short-priced debutants may be over-bet whatever the yard. The good-record control separates this
- Field size and race type: chase debuts cluster in small novice chases, and handicap debuts in low-grade handicaps
- Overlap with other yard-negative rules (e.g. the H46 chase-to-hurdle negative) that may pick the same yards, so the evidence is not independent
- Win and expected columns start at different dates (wins from GB 2020-11 / IRE 2020-09), so early rows are dropped unevenly
- Control
{ "description": "Same-race other runners: expected near 1.00 or slightly above, because if the poor-yard short-priced debutant is over-bet the money it takes is under-represented on its rivals. If the rivals also score well below 1.0, the effect is a property of the races (e.g. small-field chase debuts or handicap-debut races are over-round), not of the yard. The main control is a separate group: short-priced runners making the same move from yards with an equally long but adequate-or-better record at it (a gap is left between 0.7 and 0.9 of expected). This separates 'short-priced debutants in general are over-bet' from 'debutants from yards that fail at this move are over-bet'. The family findings suggest the control should score about 1.0 to 1.1. The hypothesis needs the main rule to sit clearly below the control, not just below 1.0.", "rule": "sp_decimal <= 6 AND ((tx_chase_debut_runs >= 20 AND tx_chase_debut_wins >= 0.9 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins >= 0.9 * tx_hcap_debut_exp))" }
Discovery result
fail broad rule · 17 Oct, 05:01
- Bets
- 195
- 39 winners
- A/E
- 0.87
- 95%: 0.62 to 1.19
- SP return
- -21.2%
- level stakes
- Betfair SP return
- -9.2%
- 187 bets with a BSP
Strike rate 20.0%. p = 0.82. Same-race control: the other runners in these races had A/E 1.05, so the selection did not 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 · 41s · 17 Oct, 04:58
Output (schema-checked)
{ "rule": "sp_decimal <= 6 AND ((tx_chase_debut_runs >= 20 AND tx_chase_debut_wins <= 0.7 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins <= 0.7 * tx_hcap_debut_exp))", "refinements": [ { "label": "chase-debut arm only", "rule": "sp_decimal <= 6 AND tx_chase_debut_runs >= 20 AND tx_chase_debut_wins <= 0.7 * tx_chase_debut_exp" }, { "label": "handicap-debut arm only", "rule": "sp_decimal <= 6 AND tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins <= 0.7 * tx_hcap_debut_exp" }, { "label": "long yard record (noise guard: small-yard records regress)", "rule": "sp_decimal <= 6 AND ((tx_chase_debut_runs >= 40 AND tx_chase_debut_wins <= 0.7 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 50 AND tx_hcap_debut_wins <= 0.7 * tx_hcap_debut_exp))" } ], "control": { "description": "Same-race other runners: expected near 1.00 or slightly above, because if the poor-yard short-priced debutant is over-bet the money it takes is under-represented on its rivals. If the rivals also score well below 1.0, the effect is a property of the races (e.g. small-field chase debuts or handicap-debut races are over-round), not of the yard. The main control is a separate group: short-priced runners making the same move from yards with an equally long but adequate-or-better record at it (a gap is left between 0.7 and 0.9 of expected). This separates 'short-priced debutants in general are over-bet' from 'debutants from yards that fail at this move are over-bet'. The family findings suggest the control should score about 1.0 to 1.1. The hypothesis needs the main rule to sit clearly below the control, not just below 1.0.", "rule": "sp_decimal <= 6 AND ((tx_chase_debut_runs >= 20 AND tx_chase_debut_wins >= 0.9 * tx_chase_debut_exp) OR (tx_hcap_debut_runs >= 25 AND tx_hcap_debut_wins >= 0.9 * tx_hcap_debut_exp))" }, "pass_criteria": { "min_bets": 250, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "sp_decimal is the price at the off. The catalogue marks it pre_off, but it is not known when a bet is struck early, so forward tracking must bet at or near the off", "Short-priced runners are already priced near fair (favourite-longshot bias), so there is little room for over-betting and a small sample can easily show nothing", "Small-yard records are noisy and regress to the mean. With 20 to 25 runs, a 0.7×expected cut catches yards that were merely unlucky (refinement 3 tests this)", "Short-priced debutants may be over-bet whatever the yard. The good-record control separates this", "Field size and race type: chase debuts cluster in small novice chases, and handicap debuts in low-grade handicaps", "Overlap with other yard-negative rules (e.g. the H46 chase-to-hurdle negative) that may pick the same yards, so the evidence is not independent", "Win and expected columns start at different dates (wins from GB 2020-11 / IRE 2020-09), so early rows are dropped unevenly" ], "mechanism": "Some yards repeatedly fail at a particular move. Their novice chasers jump poorly first time because of how they are schooled, or their horses go into handicaps with marks set too high because of how they are placed and campaigned before their mark. These are habits of the yard, so the failure rate at that move persists from season to season and shows in the yard's long-run wins against expected for that specific move.", "market_miss": "A short price on a chase debut or handicap debut rests on the horse's visible hurdle or maiden form and the yard's overall strike rate. The yard's failure rate at that specific move is buried inside its general record and is rarely shown anywhere. So the market prices the attractive form and not the yard's move-specific weakness, and the horse is over-bet.", "prediction": { "direction": "negative", "size": "A/E 0.80 to 0.92 on 300+ bets, and clearly below the good-record control", "falsified_if": "A/E at or above 0.98 on 250+ bets, or A/E no lower than the good-record control (same price band and move) by at least 0.05" }, "notes": "The rule sketch is kept. Every column is pre_off: sp_decimal is catalogued as the price at the off, and the tx_* columns carry the yard's record to yesterday for the move this runner is making. min_bets is raised to 250 to match the hypothesis's own falsification sample. The pass criteria are to be read in the negative direction, as the vault does (an over-bet A/E at or below 1/1.05 ≈ 0.95)." }
Timeline
Job 3086 finished
· engine:compute-1
H-432686d7 Discovery → KILLED fails: 195 bets, needs 300; p 0.2237 (lower tail), needs 0.05
· engine:evaluator
discovery result for H-432686d7 (broad rule): fail
· engine:evaluator
H-432686d7 Designed → RESEARCHdiscovery measuring on the discovery zone
· engine:orchestrator
compute-1 took job 3086 (evaluate, attempt 1)
· compute-1
Job 3082 finished
· engine:ai-1
Queued evaluate on the compute lane: discovery run of the broad rule
· engine:scheduler
H-432686d7 Proposed → RESEARCHdesigned pre-spec written and hashed
· agent:designer@v1
ai-1 took job 3082 (design, attempt 1)
· ai-1
Queued design on the ai lane: write the pre-spec
· engine:scheduler
New idea H-432686d7: Negative: short-priced planned moves from yards proven poor at that move (scout)
· agent:scout@v1
Every change is an event with an actor: an agent and its version, an engine, a human, or the importer. Current stage: Killed.