Hypotheses · story · H-8443fa31
Rival: close-earlier-run chase edge is class relief, tested on GB runners not dropping in class
forward A/E 0.0 on 0 bets, SP ROI None%, BSP ROI None% (p None)
Part of the thread “H24: one off jumping error well beaten” 27 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 17 Oct, 01:14
- 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-48da1bb8 (Test-mechanism: one-off chase error after a close run, where the mista) passed discovery as a niche: A/E 1.3 on 234 bets (p 0.057), same-race control 0.96. O-9525cc5e
- AskedIs the close-earlier-run chase edge (1.30 on 234) real hidden form, or class relief, where the close run came in lower grade than the error run and today's race? answered
- MechanismIf the earlier close run shows real ability that one mistake hid, the horse is underrated whatever today's grade. If the close run came in a weaker race and the horse is now dropping back, the 'hidden form' is only the familiar class-drop effect. Restricting to horses running at the same or a higher grade than the error run removes class relief.
- Why the market misses itThe form figure shows a P/U/F or a heavy beating last time. The close run sits two runs back behind that figure, and seeing it means reading the comments across all three runs. When the horse is not dropping in class, nothing on the race card flags it as well placed, so the market prices the bad latest run.
- Predictedpositive, A/E 1.20 to 1.35 on about 100 to 130 GB bets
- Falsified ifA/E of 1.05 or lower on this no-class-drop subset while the full close-run pool stays above 1.25. That would mean class relief, not hidden form, carries the edge.
Mechanism and rationale
If the earlier close run shows real ability that one mistake hid, the horse is underrated whatever today's grade. If the close run came in a weaker race and the horse is now dropping back, the 'hidden form' is only the familiar class-drop effect. Restricting to horses running at the same or a higher grade than the error run removes class relief.
The rule
region = 'GB' AND race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 1 AND last_jumping_error = 1 AND (last_position IS NULL OR last_beaten_lengths > 10) AND best_last3_beaten IS NOT NULL AND best_last3_beaten < 5 AND race_class IS NOT NULL AND last_race_class IS NOT NULL AND race_class <= last_race_class
Reads: region, race_type, remarked_last3, jumping_errors_last3, last_jumping_error, last_position, last_beaten_lengths, best_last3_beaten, race_class, last_race_class
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- af374f10a258dffa880dd2712fa0943270ba33a4e74491217ea7e374d00c02e0
- Frozen
- 17 Oct, 01:17
- Nothing in the definition can change after this.
- Confounders
- Thin sample: remarked_last3 and best_last3_beaten only start 2025-11-01, and the GB close-run pool is about 165 bets, so this cut will likely land near 100 to 130, under the 150-bet floor. A thin result that points the right way goes to falsification and forward tracking, not a pass.
- race_class compares today only with the error run, not with the earlier close run. A horse can drop below the grade of its close run and still count as 'not dropping' here.
- Rating changes after the error run can move a horse into a different class band, so class and handicap mark get mixed up.
- The parent edge depends on BSP: it is profitable at BSP but negative at SP, so the price used matters.
- The 8/1 to 14/1 band carries much of the lift in every split (2.08 on 68 in the parent), while 16/1+ is weak. The result may come from a few mid-priced winners.
- GB only, because race_class is only available for IRE from 2026-07. The result cannot speak for IRE.
- Overlaps the three frozen chase-error subsets, so it is not independent evidence.
- Control
Discovery result
pass broad rule (niche) · 17 Oct, 01:15
- Bets
- 120
- 21 winners
- A/E
- 1.41
- 95%: 0.87 to 2.15
- SP return
- +47.3%
- level stakes
- Betfair SP return
- +78.9%
- 120 bets with a BSP
Strike rate 17.5%. p = 0.079. Same-race control: the other runners in these races had A/E 0.96, 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. 6 of 6 survived.
- perturbation: Close-run cut tightened to under 4Lpass
114 bets · A/E 1.49 (0.92 to 2.28) · control 0.94 · 17 Oct, 01:17
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-27691.43after 2026-04-27451.57Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - perturbation: Close-run cut loosened to under 6L, error-run beating raised to over 12Lpass
120 bets · A/E 1.43 (0.89 to 2.18) · control 0.95 · 17 Oct, 01:17
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.0, 'max_p': 0.2}info
0 bets · · 17 Oct, 01:17
Breakdown
betsA/E0.71.01.3forward0–Bars grow from 1.00, the market. Faded bars have fewer than 40 bets.
Other experiments
- neighbour: > 10 -> 8 (-20%)pass
132 bets · A/E 1.23 (0.76 to 1.87) · control 0.98 · 17 Oct, 01:15
Breakdown
betsA/E0.71.01.32025-10-01 to 2026-04-27791.13after 2026-04-27531.35Bars grow from 1.00, the market. Faded bars have fewer than 40 bets. - neighbour: > 10 -> 12 (+20%)pass
114 bets · A/E 1.43 (0.87 to 2.20) · control 0.95 · 17 Oct, 01:15
Breakdown
Lineage
Agent runs
designer v1ok · 43s · 17 Oct, 01:14
Output (schema-checked)
{ "rule": "region = 'GB' AND race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 1 AND last_jumping_error = 1 AND (last_position IS NULL OR last_beaten_lengths > 10) AND best_last3_beaten IS NOT NULL AND best_last3_beaten < 5 AND race_class IS NOT NULL AND last_race_class IS NOT NULL AND race_class <= last_race_class", "refinements": [ { "label": "up to 14/1", "rule": "region = 'GB' AND race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 1 AND last_jumping_error = 1 AND (last_position IS NULL OR last_beaten_lengths > 10) AND best_last3_beaten IS NOT NULL AND best_last3_beaten < 5 AND race_class IS NOT NULL AND last_race_class IS NOT NULL AND race_class <= last_race_class AND sp_decimal IS NOT NULL AND sp_decimal <= 15" } ], "control": { "description": "Two comparisons. (1) Same-race other runners, as always: expected near 1.0 (the parent pools showed controls of about 0.99-1.0), so any lift is not a property of these races. (2) The rival group: the same GB close-earlier-run one-off chase-error pool, but only horses DROPPING in class (today's race_class numerically greater than the error run's). If class relief carries the edge, the droppers should show the lift and the main rule should not. If it is hidden form, the main rule should be at least as strong as the droppers. Read the two together with the full GB close-run pool (about 165 bets).", "rule": "region = 'GB' AND race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 1 AND last_jumping_error = 1 AND (last_position IS NULL OR last_beaten_lengths > 10) AND best_last3_beaten IS NOT NULL AND best_last3_beaten < 5 AND race_class IS NOT NULL AND last_race_class IS NOT NULL AND race_class > last_race_class" }, "pass_criteria": { "min_bets": 150, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "Thin sample: remarked_last3 and best_last3_beaten only start 2025-11-01, and the GB close-run pool is about 165 bets, so this cut will likely land near 100 to 130, under the 150-bet floor. A thin result that points the right way goes to falsification and forward tracking, not a pass.", "race_class compares today only with the error run, not with the earlier close run. A horse can drop below the grade of its close run and still count as 'not dropping' here.", "Rating changes after the error run can move a horse into a different class band, so class and handicap mark get mixed up.", "The parent edge depends on BSP: it is profitable at BSP but negative at SP, so the price used matters.", "The 8/1 to 14/1 band carries much of the lift in every split (2.08 on 68 in the parent), while 16/1+ is weak. The result may come from a few mid-priced winners.", "GB only, because race_class is only available for IRE from 2026-07. The result cannot speak for IRE.", "Overlaps the three frozen chase-error subsets, so it is not independent evidence." ], "mechanism": "A chaser whose latest run was ruined by one jumping error (P/U/F or beaten 10L+) but who finished within 5L in one of its last three runs has real ability that the mistake hid. If that is right, the edge should hold when the horse runs at the same or a higher grade than the error run, where the class-drop effect cannot explain it. If the edge exists only among class droppers, the 'hidden form' is just class relief.", "market_miss": "The form figure shows a P/U/F or a heavy beating last time. The close run sits behind it, and seeing it means reading the comments across all three runs. When the horse is not dropping in class, the race card has nothing (no class drop) to mark it as well placed, so the market prices the bad latest run and leaves the horse too long.", "prediction": { "direction": "positive", "size": "A/E about 1.20 to 1.35 on roughly 100 to 130 GB bets", "falsified_if": "A/E of 1.05 or lower on this no-class-drop subset while the full GB close-run pool stays above 1.25, or the class-dropper control clearly beats the main rule. Either would mean class relief, not hidden form, carries the edge." }, "notes": "I kept the rule sketch and added only an explicit best_last3_beaten IS NOT NULL guard. Every column is pre-off; the earliest start date is 2025-11-01 (remarked_last3, best_last3_beaten). The GB restriction is needed because IRE race_class only starts in 2026-07. There is one refinement, up to 14/1 (sp_decimal <= 15), because the earlier findings show 16/1+ weak and the up-to-14/1 band strongest. Treat this as a rival-explanation test: its value is the comparison against the class-dropper control and the parent pool, not a standalone pass." }
Timeline
Job 2206 finished
· engine:compute-1
forward result for H-8443fa31 (forward vs bar {'min_bets': 100, 'min_ae': 1.0, 'max_p': 0.2}): info
· engine:evaluator
compute-1 took job 2206 (forward_check, attempt 1)
· compute-1
Queued forward_check on the compute lane: daily forward check of a shadow system
· engine:scheduler
Job 2205 finished
· engine:compute-1
H-8443fa31 Frozen → SHADOW vault skipped: remarked_last3, jumping_errors_last3, last_jumping_error, last_beaten_lengths, best_last3_beaten do not exist before the discovery zone; track it forward instead
· engine:orchestrator
compute-1 took job 2205 (vault, attempt 1)
· compute-1
Job 2204 finished
· engine:compute-1
Queued vault on the compute lane: frozen: one sealed vault query
· engine:scheduler
H-8443fa31 Falsification → FROZEN survived falsification
· engine:falsification
falsification result for H-8443fa31 (control: Control: same no-drop pool without a close earlier run): pass
· engine:evaluator
compute-1 took job 2204 (attack, attempt 1)
· compute-1
Job 2203 finished
· engine:compute-1
falsification result for H-8443fa31 (partition: Handicaps only): pass
· engine:evaluator
compute-1 took job 2203 (attack, attempt 1)
· compute-1
Job 2202 finished
· engine:compute-1
falsification result for H-8443fa31 (price_band: Excluding 16/1+ (two longshot winners carry the 2.55 band)): pass
· engine:evaluator
compute-1 took job 2202 (attack, attempt 1)
· compute-1
Job 2201 finished
· engine:compute-1
falsification result for H-8443fa31 (partition: Strictly same class as the error run (no class rises)): pass
· engine:evaluator