Hypotheses · overlay · H-4e7cc5f4
Wide trip after a turf sprint (no bends) still pays: the tag is not about lost ground
forward A/E 0.0 on 0 bets, SP ROI None%, BSP ROI None% (p None)
Part of the thread “IQ140a: wide trip with figures” 21 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 16 Oct, 12:18
- Tests logged
- 16
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-463f02e9 (Wide trip at a galloping track last time should pay less if lost groun) survived falsification: 4 of 5 attacks left it standing; it is frozen for its one vault query. O-056306c7
- H-c8ec6922 (Wide-trip edge outside the longshot band) passed discovery: A/E 1.21 on 974 bets (p 0.004), same-race control 0.95. O-487cb731
- H-463f02e9 (Wide trip at a galloping track last time should pay less if lost groun) passed discovery as a niche: A/E 1.23 on 270 bets (p 0.069), same-race control 0.95. O-4f15022d
- AskedIf last-time track sharpness makes no difference, does 'raced wide' still pay where there are no bends, i.e. after turf sprints on straight courses? testing
- MechanismGalloping tracks paid as much as sharp ones, so the cause may be racing wide without cover: the horse took the wind and drifted onto the wrong side of the track. That costs effort even on a straight course.
- Why the market misses itIn straight-course sprints, 'raced wide' or 'raced alone' reads like a neutral comment, not a hard-luck excuse, so it is unlikely to be priced in.
- Predictedpositive, A/E 1.12 to 1.25 on 200+ bets
- Falsified ifA/E 1.03 or lower, which would bring back lost ground on bends as the cause
Mechanism and rationale
Galloping tracks paid as much as sharp ones, so the cause may be racing wide without cover: the horse took the wind and drifted onto the wrong side of the track. That costs effort even on a straight course.
The rule
last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND last_slow_start = 0 AND last_race_type = 'Flat' AND lower(last_surface) = 'turf' AND last_distance_yards <= 1320
Reads: last_raced_wide, last_position, last_beaten_lengths, last_slow_start, last_race_type, last_surface, last_distance_yards
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 4ef49e981ecc0eb8f6434149edbba86da94ff7e7e348f224d4d710e498b046dc
- Frozen
- 16 Oct, 12:28
- Nothing in the definition can change after this.
- Confounders
- Some turf sprints of 5-6f are run round a bend (Chester, Epsom, Beverley, Brighton and others). No straight-course flag exists, so the rule tests 'mostly straight' rather than 'no bends'. A clear positive is still informative, but a null cannot completely clear the bend explanation.
- Draw bias in big-field straight-course handicaps. A horse drawn on the slow side 'raced alone or wide' because of its draw, and the market may already price draw bias. Today's draw is not controlled.
- Turf-season period concentration. The turf runs fall mostly from April 2026 onwards in a dataset that starts in November 2025, and wide-trip subsets already carry their effect after 2026-04-27. Period halves here are partly a surface and season split.
- The parent's tilt exclusion (held-up or midfield runners in races with tilt >= 0.2) is dropped. That keeps the base the same as the galloping (1.23) and sharp (1.18) sibling tests, but means the result is not directly comparable with IQ140a's 1.27.
- Longshot lift. Beaten horses at 16/1+ often show A/E above 1.1 whatever the trigger, so the 14/1-or-shorter refinement is the honest read.
Discovery result
pass broad rule (niche) · 16 Oct, 12:22
- Bets
- 129
- 20 winners
- A/E
- 1.18
- 95%: 0.72 to 1.82
- SP return
- +46.4%
- level stakes
- Betfair SP return
- +83.7%
- 129 bets with a BSP
Strike rate 15.5%. p = 0.26. Same-race control: the other runners in these races had A/E 0.97, 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. 4 of 5 survived.
- price_band: 14/1 or shorter todaypass
102 bets · A/E 1.04 (0.61 to 1.67) · control 0.99 · 16 Oct, 12:28
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-2715–after 2026-04-27871.01Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - perturbation: Tighter sprint cut: 5.5f or less last time (more surely straight)pass
62 bets · A/E 1.65 (0.88 to 2.83) · control 0.90 · 16 Oct, 12:28
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 · · 16 Oct, 12:29
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
158 bets · A/E 1.22 (0.79 to 1.80) · control 0.97 · 16 Oct, 12:29
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-2720–after 2026-04-271381.19Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - neighbour: > 1 -> 2 (+20%)pass
95 bets · A/E 1.19 (0.63 to 2.03) · control 0.98 · 16 Oct, 12:29
Breakdown
Lineage
Agent runs
designer v1ok · 1m · 16 Oct, 12:19
Output (schema-checked)
{ "rule": "last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND last_slow_start = 0 AND last_race_type = 'Flat' AND lower(last_surface) = 'turf' AND last_distance_yards <= 1320", "refinements": [ { "label": "14/1 or shorter today", "rule": "last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND last_slow_start = 0 AND last_race_type = 'Flat' AND lower(last_surface) = 'turf' AND last_distance_yards <= 1320 AND sp_decimal <= 15" }, { "label": "Big last-time field (wide without cover is more likely when the field splits)", "rule": "last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND last_slow_start = 0 AND last_race_type = 'Flat' AND lower(last_surface) = 'turf' AND last_distance_yards <= 1320 AND last_field_size >= 10" } ], "control": { "description": "Same-race other runners should come out near A/E 0.95-1.00, as they did for the parent wide-trip rule (0.95). A second comparison separates the rival explanations: the same wide-trip base after turf Flat races beyond 6f, where the run goes round bends. If lost ground on bends is the cause, the control should clearly beat the sprint rule. If wind and lack of cover is the cause, the two should be similar (both about 1.1-1.25).", "rule": "last_raced_wide = 1 AND last_position > 1 AND last_beaten_lengths <= 5 AND last_slow_start = 0 AND last_race_type = 'Flat' AND lower(last_surface) = 'turf' AND last_distance_yards > 1320" }, "pass_criteria": { "min_bets": 150, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1.05, "max_p": 0.2 }, "confounders": [ "Some turf sprints of 5-6f are run round a bend (Chester, Epsom, Beverley, Brighton and others). No straight-course flag exists, so the rule tests 'mostly straight' rather than 'no bends'. A clear positive is still informative, but a null cannot completely clear the bend explanation.", "Draw bias in big-field straight-course handicaps. A horse drawn on the slow side 'raced alone or wide' because of its draw, and the market may already price draw bias. Today's draw is not controlled.", "Turf-season period concentration. The turf runs fall mostly from April 2026 onwards in a dataset that starts in November 2025, and wide-trip subsets already carry their effect after 2026-04-27. Period halves here are partly a surface and season split.", "The parent's tilt exclusion (held-up or midfield runners in races with tilt >= 0.2) is dropped. That keeps the base the same as the galloping (1.23) and sharp (1.18) sibling tests, but means the result is not directly comparable with IQ140a's 1.27.", "Longshot lift. Beaten horses at 16/1+ often show A/E above 1.1 whatever the trigger, so the 14/1-or-shorter refinement is the honest read.", "Small sample. One turf season of sprint runs since Nov 2025 may give only about 200-400 bets." ], "mechanism": "A horse that races wide without cover takes the wind and often ends up on the wrong part of the track, away from the main group and the pace. That costs effort and position even on a straight course, so its form understates its ability. Galloping and sharp last-time tracks paid about the same (1.23 vs 1.18), which suggests the cost is not mainly extra ground on bends. If so, the edge should survive in turf sprints of 6f or less, which are mostly run on straight courses.", "market_miss": "In straight-course sprints, 'raced wide', 'raced alone' or 'raced towards stand side' reads like a neutral note about position, not a hard-luck excuse. Bettors and form readers discount ground lost on bends but rarely credit a horse for racing exposed on a straight course, so the run is taken at face value. The horse is a close-up loser (within 5 lengths), not an eye-catcher.", "prediction": { "direction": "positive", "size": "A/E 1.12 to 1.25 on 200+ bets, close to the 1.18-1.23 of the galloping/sharp sibling rules on the same base", "falsified_if": "A/E of 1.03 or lower on the broad rule, or the sprint rule falling well below the >6f turf bend control (more than 0.15 A/E lower). Either would bring back lost ground on bends as the cause." }, "notes": "Kept the rule sketch: every column is pre_off and available from 2025-11-01 (last_raced_wide, last_beaten_lengths, last_slow_start) or earlier. lower() guards against case differences in last_surface values. 1320 yards = 6f. The base deliberately matches the sibling investigator rules (H-463f02e9, H-17cdbcfa), not the IQ140 tilt-excluded parent, so that only the trigger changes. Refinements keep that full base and add one condition each. There is no column that flags straight courses, so the bend-track contamination is listed as a confounder rather than fixed with an unreliable course list." }
Timeline
Job 1357 finished
· engine:compute-1
forward result for H-4e7cc5f4 (forward vs bar {'min_bets': 100, 'min_ae': 1.05, 'max_p': 0.2}): info
· engine:evaluator
compute-1 took job 1357 (forward_check, attempt 1)
· compute-1
Queued forward_check on the compute lane: daily forward check of a shadow system
· engine:scheduler
Job 1322 finished
· engine:compute-1
hypothesis note H-4e7cc5f4
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: <= 1320 -> 1584 (+20%)): pass
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: <= 1320 -> 1056 (-20%)): fail
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: <= 5 -> 6 (+20%)): pass
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: <= 5 -> 4 (-20%)): pass
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: > 1 -> 2 (+20%)): pass
· engine:perturb
perturbation result for H-4e7cc5f4 (neighbour: > 1 -> 0 (-20%)): pass
· engine:perturb
compute-1 took job 1322 (mutate, attempt 1)
· compute-1
Job 1339 finished
· engine:compute-1
H-4e7cc5f4 Frozen → SHADOW vault skipped: last_raced_wide, last_beaten_lengths, last_slow_start do not exist before the discovery zone; track it forward instead
· engine:orchestrator
compute-1 took job 1339 (vault, attempt 1)
· compute-1