Hypotheses · story · H24-one-off-jumping-error-well-beaten
H24: one off jumping error well beaten
tier A: strong candidate; best [chase] GREEN A/E 1.224 on 536 bets (broad GREEN); published as SYS-one-off-jumping-error-chase
Starts the thread “H24: one off jumping error well beaten” 27 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Imported from the overnight batches
- Made by
- import
- Created
- 15 Oct, 23:10
- Tests logged
- 4
Mechanism and rationale
A jumping error last time, clean in the two runs before, and well beaten: the mistake cost the run.
The rule
race_type IN ('Hurdle', '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)Reads: race_type, remarked_last3, jumping_errors_last3, last_jumping_error, last_position, last_beaten_lengths
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- not designed yet
- Frozen
- not frozen
- The definition can still change.
- Broad
race_type IN ('Hurdle', '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)
- Kind
remarks
- Origin
research/experiments/overnight/results_v2.jsonl
- Refinements
[ { "name": "no hard race on soft ground", "rule": "(race_type IN ('Hurdle', '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 (NOT (last_going_group IN ('soft', 'heavy') AND last_run_style IN ('led', 'prominent') AND last_under_pressure = 1))" }, { "name": "14/1 or shorter", "rule": "(race_type IN ('Hurdle', '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 (sp_decimal <= 15)" }, { "name": "chase", "rule": "(race_type IN ('Hurdle', '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 (race_type = 'Chase')" } ]- Tier
A
Result (from the archive)
info chase · 15 Oct, 23:10
- Bets
- 536
- A/E
- 1.22
- winners vs the prices
- SP return
- -5.8%
- level stakes
- Betfair SP return
- +13.1%
- 535 bets with a BSP
Strike rate 13.6%.
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
investigator v1ok · 1m 8s · 17 Oct, 01:08
Output (schema-checked)
{ "reflection": "The chain now reads clearly. The one-off jumping error idea (1.17 on 1,570 overall, chase slice 1.224 on 536) has kept its shape under every cut that tests the mechanism. Finishers beaten 10L+ held at 1.182 on 389 and survived 6/6 attacks, so the edge is not only about fallers. The subset where the sectionals show the error cost ground came in at 1.29 on 243 and survived 5/5 attacks, but its CI still overlaps the parent's. Dropping the price cap to under 16/1 raised the pool to 1.256 on 386 (p 0.036, control 0.96, periods 1.12 and 1.39, GB 1.24 and IRE 1.30). That is in the predicted direction but below the predicted 1.30 to 1.45. The most informative new result is the killed rival H-4eed61bb. Chasers with a recent error that also had errors in the runs before scored only 1.043 on 670 (p 0.375). So the 'clean in the two runs before' condition does the work: the market prices repeat bad jumpers about right but over-marks a one-off slip. The lift sits in runners the market still respects. The 'up to 14/1' band reads 1.56 on 171, and the 16/1+ remainder is implied to sit near or below 1.0. Everything below the system is shadow or frozen with no forward bets. The edge exists only at BSP: -14% at SP against +15% at BSP.", "answers": [ { "question_id": "Q-12659dd9", "answer": "Yes, the one-off condition is needed. Well-beaten chasers whose last-time error came on top of earlier errors scored only A/E 1.043 on 670 (p 0.375, control 1.0), against 1.224 for the one-off pool." }, { "question_id": "Q-551dfe76", "answer": "Mostly yes. The under-16/1 pool scored 1.256 on 386 against 1.224 on all 536, which implies the roughly 150 runners at 16/1+ sit near or below 1.0. The gain is smaller than the 1.30 to 1.45 predicted." } ], "questions": [ { "question": "Does the one-off error edge need the earlier clean runs to have shown real form (a close finish), or is a clean jumping record alone enough?", "rationale": "H-4eed61bb shows the clean jumping record matters (1.04 vs 1.22). If the mechanism is form hidden by one mistake, the lift should be largest where an earlier run was close: best_last3_beaten < 5, with last_beaten_lengths > 10 or a non-finish last time. The letters-family test of 'hidden form where the book looks worst' (H-e7675af7) was killed, which points the same way. Columns: best_last3_beaten, last_beaten_lengths, last_position, remarked_last3, jumping_errors_last3.", "observation_ids": [ "O-90e5e9e8", "O-e2f22409", "O-a9c92d16" ], "priority": 0.5 }, { "question": "Does the hurdle part of H24 also carry an edge once runners at 16/1+ are removed, as the chase part does?", "rationale": "The broad rule held at 1.17 on 1,570, so hurdles alone ran around 1.14 on about 1,030. The chase under-16/1 cut lifted A/E. If the price-respect pattern is general, hurdles under 16/1 should hold too, which would widen the live system. Columns: race_type, sp_decimal, remarked_last3, jumping_errors_last3, last_jumping_error, last_beaten_lengths.", "observation_ids": [ "O-e2f22409" ], "priority": 0.45 }, { "question": "Within the chase under-16/1 pool, is the lift in the mid-price band (around 5/1 to 14/1) rather than at the top of the market?", "rationale": "The 'up to 14/1' band reads 1.56 on 171, well above the pool's 1.256. This is a striking slice among several, so it is a lead and not a finding. A descriptive scan on sp_decimal and sp_rank would show whether the shorter bands sit near 1.0. That would matter for staking but is not a reason to slice further.", "observation_ids": [ "O-e2f22409" ], "priority": 0.25 } ], "hypotheses": [ { "title": "Test-mechanism: one-off chase error after a close run, where the mistake hid real form", "family": "story", "operator": "test-mechanism", "question_id": null, "new_question": 0, "parent_id": "SYS-one-off-jumping-error-chase", "reasoning": { "observation_ids": [ "O-90e5e9e8", "O-a9c92d16", "O-e2f22409" ], "question": "Is the one-off error edge strongest when one of the two clean runs before was a close finish, so the bad last figure hides demonstrated ability?", "mechanism": "A chaser that ran close in a recent clean run and then made one mistake and was well beaten has shown its level. The mistake, not its ability, explains the last run. Without a close earlier run, the bad last run may just be the horse's true level.", "market_miss": "Punters and odds-compilers weight the latest run most heavily. A 10L+ beating or a P/U/F figure pushes the price out even though the earlier close run is the better guide to ability.", "prediction": { "direction": "positive", "size": "A/E 1.30 to 1.45 on 180+ bets", "falsified_if": "A/E at or below the parent's 1.224, or below 1.10, on this subset" }, "rule_sketch": "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 < 5" }, "confounders": [ "class drop after a bad run", "trainer or jockey change", "days_since_last_run", "price band concentration", "best_last3_beaten is only available from Nov 2025, so the pool is thin" ], "expected_survival": 0.35 }, { "title": "Replicate: one-off jumping error, well beaten, in hurdles under 16/1", "family": "story", "operator": "replicate", "question_id": null, "new_question": 1, "parent_id": "H24-one-off-jumping-error-well-beaten", "reasoning": { "observation_ids": [ "O-e2f22409" ], "question": "Does the one-off error edge hold in hurdles once runners at 16/1+ are removed?", "mechanism": "A one-off error at a hurdle costs momentum and position just as at a fence, though usually less ground. A horse that jumped cleanly before is likely to do so again.", "market_miss": "The last form figure and the remark are visible, but the clean history is not weighed against them. Runners still in the market's frame (under 16/1) are where the misreading shows. At long prices the horse is often simply outclassed.", "prediction": { "direction": "positive", "size": "A/E 1.08 to 1.18 on 600+ bets", "falsified_if": "A/E of 1.05 or lower, or the two periods split either side of 1.0" }, "rule_sketch": "race_type = 'Hurdle' 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 sp_decimal < 17" }, "confounders": [ "novice hurdlers improving anyway", "field_size", "handicap mark drops after a bad run", "festival meetings" ], "expected_survival": 0.4 } ], "findings": [ { "statement": "The 'clean in the two runs before' condition carries the edge. Chasers whose last-time error came on top of earlier errors scored A/E 1.043 on 670 (p 0.375), against 1.224 for the one-off pool.", "kind": "fails", "observation_ids": [ "O-90e5e9e8" ] }, { "statement": "Cutting the H24 chase pool to under 16/1 lifted it to A/E 1.256 on 386 (p 0.036, control 0.96, periods 1.12 and 1.39). It held in both GB (1.24) and IRE (1.30), short of the predicted 1.30 to 1.45.", "kind": "holds", "observation_ids": [ "O-e2f22409" ] }, { "statement": "Both mechanism splits of the chase system survived all attacks: finishers-only (6/6) and costly ground by the sectionals (5/5). Both are frozen with no forward bets, so neither is validated.", "kind": "method", "observation_ids": [ "O-a9c92d16", "O-dfab4705" ] } ] }
Timeline
Job 58 finished
· engine:compute-1
compute-1 took job 58 (mutate, attempt 1)
· compute-1
Queued mutate on the compute lane: AI unavailable: deterministic mutations of a live candidate
· engine:scheduler
hypothesis note H24-one-off-jumping-error-well-beaten
· importer
H24-one-off-jumping-error-well-beaten Discovery → PROMISING import: tier A: strong candidate; best [chase] GREEN A/E 1.224 on 536 bets (broad GREEN)
· importer
import result for H24-one-off-jumping-error-well-beaten (chase): info
· importer
import result for H24-one-off-jumping-error-well-beaten (14/1 or shorter): info
· importer
import result for H24-one-off-jumping-error-well-beaten (no hard race on soft ground): info
· importer
import result for H24-one-off-jumping-error-well-beaten (broad): info
· importer
New idea H24-one-off-jumping-error-well-beaten: H24: one off jumping error well beaten (import)
· importer
Every change is an event with an actor: an agent and its version, an engine, a human, or the importer. Current stage: Promising.