Hypotheses · story · H-f024e5c9
Test-mechanism: on 7f+ Flat last runs, the wide-trip lift is largest at sharp tracks
forward A/E 0.0 on 0 bets, SP ROI None%, BSP ROI None% (p None)
Part of the thread “H20: wide early and got back into it” 14 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- test-mechanism
- Created
- 17 Oct, 04:50
- 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-cf793824 (Test-mechanism: the 7f+ wide-trip lift is larger after a big-field las) passed discovery: A/E 1.35 on 227 bets (p 0.021), same-race control 0.92. O-107fcec5
- H-2c6644e4 (Rival: the 7f+ wide-trip lift is a turf effect; all-weather last runs ) pointed the predicted way but failed the bar: A/E 1.19 on 294 bets (p 0.092), control 0.95. O-20d5482d
- H-2c6644e4 (Rival: the 7f+ wide-trip lift is a turf effect; all-weather last runs ): the period 'after 2026-04-27' carries the effect (A/E 1.28) while the rest score 2025-10-01 to 2026-04-27 0.68. O-49df8538
- AskedDoes the sharpness of the last track explain why all-weather wide trips pay at least as well as turf ones? testing
- MechanismHow much ground a horse loses by racing wide grows with how tight the bend is. On sharp tracks (most all-weather ovals, Chester, Epsom, Brighton, Catterick), a wide horse on a 7f+ trip runs round tight bends and also loses momentum on them. On a galloping track, a wide trip costs little.
- Why the market misses itThe comment says 'wide' in the same way at every track, and the beaten distance hides what the wide trip cost. Bettors give the same small allowance for a wide trip at Chester as at Newmarket's July Course, so at sharp tracks the hidden ability is underrated most.
- Predictedpositive, A/E 1.30 to 1.45 on about 300 bets, above the 7f+ parent's 1.26
Mechanism and rationale
How much ground a horse loses by racing wide grows with how tight the bend is. On sharp tracks (most all-weather ovals, Chester, Epsom, Brighton, Catterick), a wide horse on a 7f+ trip runs round tight bends and also loses momentum on them. On a galloping track, a wide trip costs little.
The rule
race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness >= 2
Reads: race_type, last_raced_wide, last_position, last_beaten_lengths, sp_decimal, last_distance_yards, last_track_sharpness
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- c849c2867fa8f6f7cca9e8821c0eecedcd78549039be4a30d39ab727c83fdb54
- Frozen
- 17 Oct, 05:00
- Nothing in the definition can change after this.
- Confounders
- Surface: most sharp tracks are all-weather ovals, so sharpness and surface are tangled; the turf-only and all-weather-only refinements are there to split them. Earlier work found turf 7f+ wide trips at 1.19 against the parent's 1.26.
- Overlap: this is a subset of the frozen 7f+ ≤14/1 wide-trip rules and overlaps the overlay family's all-code sharpness rules (H-17cdbcfa), so forward results are not independent confirmations.
- Scale coarseness: last_track_sharpness comes from course guides and may lump different tracks together; the >=2 cut is taken from the hypothesis and was not tuned.
- Region: IRE carried much of the parent's lift (1.53-1.65) but has few sharp tracks, so a sharp-track cut may remove IRE runners and lower A/E for reasons that have nothing to do with bends.
- Season: the parent's 10f+ cut was 1.33 after 27 April 2026 and 0.90 before it, and all-weather racing is concentrated in winter, so sharp-track results may carry a seasonal mix.
- Trip: the parent's lift sits at about 7f to 9f with no dose-response at 10f+, so the trip mix at sharp tracks could shift A/E on its own.
Discovery result
pass broad rule (niche) · 17 Oct, 04:59
- Bets
- 353
- 76 winners
- A/E
- 1.19
- 95%: 0.94 to 1.49
- SP return
- +11.2%
- level stakes
- Betfair SP return
- +30.3%
- 352 bets with a BSP
Strike rate 21.5%. p = 0.072. Same-race control: the other runners in these races had A/E 0.95, 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 5 survived.
- control: Galloping-track control: same rule after last_track_sharpness = 0pass
139 bets · A/E 1.38 (0.98 to 1.88) · control 0.90 · 17 Oct, 05:00
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-2733–after 2026-04-271061.48Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - partition: Turf sharp tracks only (separates sharpness from all-weather surface)pass
112 bets · A/E 1.04 (0.64 to 1.61) · control 0.99 · 17 Oct, 05:00
Breakdown
Sealed holdout (vault)
Not queried. Only a frozen idea can spend its one query against the 2020-25 holdout.
Forward record
- forward vs bar {'min_bets': 100, 'min_ae': 1.05, 'max_p': 0.2}info
0 bets · · 17 Oct, 05:01
Breakdown
betsA/E0.71.01.3forward0–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets.
Other experiments
- neighbour: > 1 -> 0 (-20%)pass
487 bets · A/E 1.06 (0.87 to 1.29) · control 0.98 · 17 Oct, 05:01
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-272351.16after 2026-04-272520.97Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - neighbour: > 1 -> 2 (+20%)pass
248 bets · A/E 1.31 (0.97 to 1.72) · control 0.94 · 17 Oct, 05:01
Breakdown
Lineage
Agent runs
designer v1ok · 40s · 17 Oct, 04:51
Output (schema-checked)
{ "rule": "race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness >= 2", "refinements": [ { "label": "Turf sharp tracks only (separates sharpness from surface)", "rule": "race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness >= 2 AND LOWER(last_surface) = 'turf'" }, { "label": "All-weather sharp tracks only (the surface the parent's lift was not explained by)", "rule": "race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness >= 2 AND LOWER(last_surface) <> 'turf'" }, { "label": "GB only (sharp tracks are mostly GB; checks the lift is not IRE-borne)", "rule": "race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness >= 2 AND region = 'GB'" } ], "control": { "description": "Two comparisons. (1) The other runners in the same races should score about par (A/E ~0.95-1.0, like the parent's 0.94-0.95 control), so the lift is not a race property. (2) The mechanism's own contrast: the same rule run after galloping last tracks (last_track_sharpness = 0). The mechanism predicts these score clearly below the sharp-track rule, at or under the 7f+ parent's 1.26 and ideally near 1.1. If galloping wide trips score as high as sharp ones, the sharpness mechanism is falsified even if the broad rule passes.", "rule": "race_type = 'Flat' AND last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND sp_decimal <= 15 AND last_distance_yards >= 1540 AND last_track_sharpness = 0" }, "pass_criteria": { "min_bets": 150, "min_ae": 1.1, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1.05, "max_p": 0.2 }, "confounders": [ "Surface: most sharp tracks are all-weather ovals, so sharpness and surface are tangled; the turf-only and all-weather-only refinements are there to split them. Earlier work found turf 7f+ wide trips at 1.19 against the parent's 1.26.", "Overlap: this is a subset of the frozen 7f+ ≤14/1 wide-trip rules and overlaps the overlay family's all-code sharpness rules (H-17cdbcfa), so forward results are not independent confirmations.", "Scale coarseness: last_track_sharpness comes from course guides and may lump different tracks together; the >=2 cut is taken from the hypothesis and was not tuned.", "Region: IRE carried much of the parent's lift (1.53-1.65) but has few sharp tracks, so a sharp-track cut may remove IRE runners and lower A/E for reasons that have nothing to do with bends.", "Season: the parent's 10f+ cut was 1.33 after 27 April 2026 and 0.90 before it, and all-weather racing is concentrated in winter, so sharp-track results may carry a seasonal mix.", "Trip: the parent's lift sits at about 7f to 9f with no dose-response at 10f+, so the trip mix at sharp tracks could shift A/E on its own." ], "mechanism": "The ground lost by racing wide grows with how tight the bend is. On a 7f+ trip at a sharp track (all-weather ovals, Chester, Epsom, Brighton, Catterick), a wide horse covers extra yards round tight bends and also loses momentum on them, so a narrow defeat (within 5 lengths) understates its ability by more than the same comment would at a galloping track, where a wide trip costs little.", "market_miss": "The race comment says 'wide' in the same way at every track, and the beaten distance does not show what the wide trip cost. Bettors and form summaries give the same small allowance for a wide trip at Chester or Chelmsford as at a galloping track, so the hidden ability is underrated most after sharp tracks and the next price is too long.", "prediction": { "direction": "positive", "size": "A/E 1.30 to 1.45 on about 300 bets, above the 7f+ parent's 1.26", "falsified_if": "Falsified if the sharp-track rule's A/E is 1.26 or lower (no better than the parent), or if the galloping control (last_track_sharpness = 0) scores as high as the sharp rule or higher." }, "notes": "The rule sketch is kept as written: every column is pre-off and none reads the result. I checked last_track_sharpness and last_surface in the catalogue, but I could not confirm their values. I am taking the hypothesis's word that 0 = galloping and >=2 = sharp. The surface refinements use LOWER(last_surface) = 'turf' so they work whatever the capitalisation. The discovery A/E bar is raised to 1.10 because the hypothesis has to beat a parent that already scores 1.26. The forward bar is raised to A/E 1.05." }
Timeline
Job 3131 finished
· engine:compute-1
hypothesis note H-f024e5c9
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: <= 15 -> 18 (+20%)): pass
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: <= 15 -> 12 (-20%)): pass
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: <= 5 -> 6 (+20%)): pass
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: <= 5 -> 4 (-20%)): pass
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: > 1 -> 2 (+20%)): pass
· engine:perturb
perturbation result for H-f024e5c9 (neighbour: > 1 -> 0 (-20%)): pass
· engine:perturb
compute-1 took job 3131 (mutate, attempt 1)
· compute-1
Queued mutate on the compute lane: parameter stability: do neighbouring thresholds hold?
· engine:scheduler
Job 3125 finished
· engine:compute-1
forward result for H-f024e5c9 (forward vs bar {'min_bets': 100, 'min_ae': 1.05, 'max_p': 0.2}): info
· engine:evaluator
compute-1 took job 3125 (forward_check, attempt 1)
· compute-1
Queued forward_check on the compute lane: daily forward check of a shadow system
· engine:scheduler
Job 3101 finished
· engine:compute-1
H-f024e5c9 Frozen → SHADOW vault skipped: last_raced_wide, last_beaten_lengths do not exist before the discovery zone; track it forward instead
· engine:orchestrator