Hypotheses · story · H-b63a044f
Rival: drift edge is a generic chase drifter effect after any well-beaten run, not the jumping error
fails: A/E 1.086, needs 1.1; p 0.3099, needs 0.05 or lower; periods [0.98, 1.19], each needs 1.0 (not a niche pass: A/E 1.086 below 1.1)
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:30
- 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-373590f6 (Test-mechanism: one-off chase error, well beaten, price drifted from l) passed discovery: A/E 1.5 on 263 bets (p 0.02), same-race control 0.96. O-9a130520
- AskedIs the drift edge an overreaction to the error, or a general drifter effect after any bad chase run? Do clean-jumping chasers beaten 10+ lengths whose price lengthened also beat their price? answered
- MechanismRival cause: after any heavy defeat the market lengthens a chaser more than its true chance warrants, whatever the reason for the defeat. If that is so, the jumping error is a passenger and the 1.50 comes from the drift alone.
- Why the market misses itIf the rival is true, bettors overreact to any bad form figure and the price movement compounds it. If the rival is false, the miss is specific to defeats caused by one blunder, which only the in-running comment explains.
- Predictedpositive, Rival predicts A/E 1.20+ on 600+ bets; the error-specific story predicts about 0.95 to 1.05
- Falsified ifA/E of 1.05 or lower on this no-error drifter pool while the one-off-error drifter pool stays near 1.50. That rules the rival out and makes the jumping error the active ingredient.
- Rule sketch
Mechanism and rationale
Rival cause: after any heavy defeat the market lengthens a chaser more than its true chance warrants, whatever the reason for the defeat. If that is so, the jumping error is a passenger and the 1.50 comes from the drift alone.
The rule
race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal > last_sp_decimal
Reads: race_type, remarked_last3, jumping_errors_last3, last_position, last_beaten_lengths, last_sp_decimal, sp_decimal
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 9e58975e4277badda35eb8b2a48b482e130bdd3eb491fbe4586448e291e0aabd
- Frozen
- not frozen
- The definition can still change.
- Confounders
- Class mix: clean-jumping, well-beaten chasers may hold a different share of class droppers than the error pool. By subtraction, GB droppers in the error pool score about 0.9.
- Region mix: GB and IRE behave differently (in the error-drift pool GB scored 1.64 and IRE 1.11, and IRE fell to 0.53 with a 25%+ drift), so a pooled result can hide opposite regional effects
- Price structure: 16/1+ longshots dominate drifting pools and score near zero in chases, so the pooled A/E can be dragged down or made noisy by a few big-priced winners
- Non-finishers: the error pool's non-finisher lift splits sharply by region (GB 1.58, IRE 0.37). Here, a clean-jumping non-finisher (pulled up, not fallen) is a different kind of horse.
- Short window: remarked_last3 only goes back to November 2025, which limits the sample and the number of periods
- Overlap: some horses move between the error and no-error pools over time, so the two pools are not fully independent
- Control
{ "description": "The lab's same-race control (other runners in these races) should sit near 0.96 to 1.00, as it did for the error pool. If it is also lifted, the effect is a property of the races, not the runners. The second control is the same clean-jumping, well-beaten chasers whose price shortened or stayed the same. If the rival is true (drift after any heavy defeat is overdone), drifters should clearly beat this group. If both groups score alike, the drift is not doing the work. The key comparison is with the known one-off-error drifter pool (1.50 on 263): if the rule here scores 1.05 or less while that pool holds near 1.50, the jumping error is the active ingredient.", "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal <= last_sp_decimal" }
Discovery result
fail broad rule · 17 Oct, 01:35
- Bets
- 658
- 45 winners
- A/E
- 1.09
- 95%: 0.79 to 1.45
- SP return
- -6.4%
- level stakes
- Betfair SP return
- +35.8%
- 653 bets with a BSP
Strike rate 6.8%. p = 0.31. Same-race control: the other runners in these races had A/E 1.00, so the selection 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 · 32s · 17 Oct, 01:30
Output (schema-checked)
{ "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal > last_sp_decimal", "refinements": [ { "label": "14/1 or shorter", "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal > last_sp_decimal AND sp_decimal <= 15" }, { "label": "GB only (the error-drift edge is GB-heavy)", "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal > last_sp_decimal AND region = 'GB'" }, { "label": "Drift of 25% or more", "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal >= 1.25 * last_sp_decimal" } ], "control": { "description": "The lab's same-race control (other runners in these races) should sit near 0.96 to 1.00, as it did for the error pool. If it is also lifted, the effect is a property of the races, not the runners. The second control is the same clean-jumping, well-beaten chasers whose price shortened or stayed the same. If the rival is true (drift after any heavy defeat is overdone), drifters should clearly beat this group. If both groups score alike, the drift is not doing the work. The key comparison is with the known one-off-error drifter pool (1.50 on 263): if the rule here scores 1.05 or less while that pool holds near 1.50, the jumping error is the active ingredient.", "rule": "race_type = 'Chase' AND remarked_last3 = 3 AND jumping_errors_last3 = 0 AND (last_position IS NULL OR last_beaten_lengths > 10) AND last_sp_decimal IS NOT NULL AND sp_decimal <= last_sp_decimal" }, "pass_criteria": { "min_bets": 300, "min_ae": 1.1, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "Class mix: clean-jumping, well-beaten chasers may hold a different share of class droppers than the error pool. By subtraction, GB droppers in the error pool score about 0.9.", "Region mix: GB and IRE behave differently (in the error-drift pool GB scored 1.64 and IRE 1.11, and IRE fell to 0.53 with a 25%+ drift), so a pooled result can hide opposite regional effects", "Price structure: 16/1+ longshots dominate drifting pools and score near zero in chases, so the pooled A/E can be dragged down or made noisy by a few big-priced winners", "Non-finishers: the error pool's non-finisher lift splits sharply by region (GB 1.58, IRE 0.37). Here, a clean-jumping non-finisher (pulled up, not fallen) is a different kind of horse.", "Short window: remarked_last3 only goes back to November 2025, which limits the sample and the number of periods", "Overlap: some horses move between the error and no-error pools over time, so the two pools are not fully independent" ], "mechanism": "Rival cause: after any heavy defeat (beaten more than 10 lengths, or did not finish), the market lengthens a chaser's price further than its true chance warrants, whatever caused the defeat. If so, the one-off jumping error in the frozen chase subsets is a passenger, and their 1.50 A/E comes from the drift alone. This rule removes the error (clean jumping in all three remarked runs) and keeps the defeat and the drift.", "market_miss": "If the rival is true, bettors overreact to any bad form figure and the price drift adds to the overreaction. The result would be a broad, generic mispricing of well-beaten chasers that drift. If the rival is false, the miss is specific to defeats caused by one blunder. Only the in-running comment explains those, and clean-jumping horses beaten that far deserve their drift.", "prediction": { "direction": "positive", "size": "The rival predicts A/E 1.20+ on 600+ bets. The error-specific story predicts about 0.95 to 1.05.", "falsified_if": "A/E of 1.05 or lower on this no-error drifter pool (or no clear gap over the non-drifting clean control), while the one-off-error drifter pool stays near 1.50. That rules the rival out and makes the jumping error the active ingredient." }, "notes": "I kept the rule sketch as written: every column is pre-off and it adds no extra slicing. The refinements follow the earlier findings: chase edges stop at 16/1, the drift edge is GB-heavy, and it gets stronger with a 25%+ drift. Discovery is set stricter than the floor (300 bets, A/E 1.10) because the rival claims a large, broad pool, so a thin or marginal lift would not support it. Read the result next to the 1.50 on 263 for the error drifters. A small lift (about 1.05 to 1.15) would mean drift adds a little and the error does most of the work." }
Timeline
Job 2262 finished
· engine:compute-1
H-b63a044f Discovery → KILLED fails: A/E 1.086, needs 1.1; p 0.3099, needs 0.05 or lower; periods [0.98, 1.19], each needs 1.0 (not a niche pass: A/E 1.086 below 1.1)
· engine:evaluator
discovery result for H-b63a044f (broad rule): fail
· engine:evaluator
H-b63a044f Designed → RESEARCHdiscovery measuring on the discovery zone
· engine:orchestrator
compute-1 took job 2262 (evaluate, attempt 1)
· compute-1
Job 2260 finished
· engine:ai-1
Queued evaluate on the compute lane: discovery run of the broad rule
· engine:scheduler
H-b63a044f Proposed → RESEARCHdesigned pre-spec written and hashed
· agent:designer@v1
ai-1 took job 2260 (design, attempt 1)
· ai-1
Queued design on the ai lane: write the pre-spec
· engine:scheduler
New idea H-b63a044f: Rival: drift edge is a generic chase drifter effect after any well-beaten run, not the jumping error (rival-explanation)
· agent:investigator@v1
Every change is an event with an actor: an agent and its version, an engine, a human, or the importer. Current stage: Killed.