Hypotheses · negative · H-0d867d0d
Rival: handicap runners at 9/1–14/1 that did not win last time are equally over-bet (band effect, not winner tag)
fails: A/E 1.029, needs 0.95 or lower; p 0.831 (lower tail), needs 0.01; periods [1.02, 1.04], each needs 0.99 or lower; A/E 1.029 against same-race control 1.0, needs 0.03 below
Part of the thread “Raised handicap winners sent off at 9/1+ are over-bet, at any gap since the win” 9 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 16 Oct, 16:58
- 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-220ad315 (Raised handicap winners sent off at 9/1+ are over-bet, at any gap sinc) pointed the predicted way but failed the bar: A/E 0.84 on 1561 bets (p 0.933), control 1.02. O-76793565
- H-560b6713 (Generalise: last-time winners of any race type running in a handicap a) pointed the predicted way but failed the bar: A/E 0.88 on 2634 bets (p 0.929), control 1.02. O-deb65699
- AskedAre all handicap runners at 9/1–14/1 (sp_decimal > 9 AND <= 15) under par in this window, whatever their last run, so that the winner deficit at that band is just a property of the price band? answered
- MechanismMid-priced handicap runners may draw a disproportionate share of each-way and recreational money. That would make the whole 9/1–14/1 band over-bet, whatever the horse's last result, and winners would only inherit it.
- Why the market misses itIf this is real, it is a structural mispricing of the band, not a hidden form signal. Bookmaker each-way terms and recreational staking would keep the band's SP short of fair across all profiles.
- Predictednegative, A/E 0.88 to 0.95 on 5,000+ bets if the band effect is real
- Falsified ifA/E 0.97 or higher on 3,000+ bets. That would leave the winner-tag deficit (0.84) as specific to last-time winners and worth one more focused test.
Mechanism and rationale
Mid-priced handicap runners may draw a disproportionate share of each-way and recreational money. That would make the whole 9/1–14/1 band over-bet, whatever the horse's last result, and winners would only inherit it.
The rule
is_handicap = 1 AND last_position IS NOT NULL AND last_position > 1 AND sp_decimal > 9 AND sp_decimal <= 15
Reads: is_handicap, last_position, sp_decimal
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 51a4e7ae5f976c66eadb54536073872d15837e08eeec92411507ef6adf717d00
- Frozen
- not frozen
- The definition can still change.
- Confounders
- Field size: bigger fields put more runners in the 9/1-14/1 band and change each-way place terms (3 places from 8 runners, 4 places in handicaps of 16+)
- Festival and big-meeting handicaps with deep, competitive markets, where SPs are closer to fair
- Irish vs GB market depth: earlier winner pools were weaker in Ireland (0.78 vs 0.91)
- Code mix: flat handicaps and jumps handicaps have different market structures
- The band edges were taken from the winner result after looking at the data (the deficit was at up to 14/1 and level at 16/1+), so the 15.0 cut-off is not independent
- Excluding last-time non-finishers and horses with no recorded last run (last_position NULL) changes the comparison group
- Control
{ "description": "The lab's standard control is all other runners in the same races. Because the band is a large part of each field, that control should sit near par (about 0.98 to 1.02). The deciding comparison is with last-time winners in the same price band and race type: is_handicap = 1, last_position = 1, sp_decimal > 9 AND <= 15. Earlier work put that group at about 0.84. If non-winners in the band show a similar deficit (within about 0.04), the band explains the winner result. If non-winners sit at 0.97 or above while winners stay near 0.84, the deficit belongs to the winner tag.", "rule": "is_handicap = 1 AND last_position = 1 AND sp_decimal > 9 AND sp_decimal <= 15" }
Discovery result
fail broad rule · 16 Oct, 17:00
- Bets
- 15,550
- 1,051 winners
- A/E
- 1.03
- 95%: 0.97 to 1.09
- SP return
- -20.6%
- level stakes
- Betfair SP return
- -0.2%
- 14,947 bets with a BSP
Strike rate 6.8%. p = 0.18. 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 · 36s · 16 Oct, 16:58
Output (schema-checked)
{ "rule": "is_handicap = 1 AND last_position IS NOT NULL AND last_position > 1 AND sp_decimal > 9 AND sp_decimal <= 15", "refinements": [ { "label": "Big-field handicaps (4 each-way places)", "rule": "is_handicap = 1 AND last_position IS NOT NULL AND last_position > 1 AND sp_decimal > 9 AND sp_decimal <= 15 AND field_size >= 16" }, { "label": "Mid-size handicaps (3 each-way places)", "rule": "is_handicap = 1 AND last_position IS NOT NULL AND last_position > 1 AND sp_decimal > 9 AND sp_decimal <= 15 AND field_size >= 8 AND field_size <= 15" } ], "control": { "description": "The lab's standard control is all other runners in the same races. Because the band is a large part of each field, that control should sit near par (about 0.98 to 1.02). The deciding comparison is with last-time winners in the same price band and race type: is_handicap = 1, last_position = 1, sp_decimal > 9 AND <= 15. Earlier work put that group at about 0.84. If non-winners in the band show a similar deficit (within about 0.04), the band explains the winner result. If non-winners sit at 0.97 or above while winners stay near 0.84, the deficit belongs to the winner tag.", "rule": "is_handicap = 1 AND last_position = 1 AND sp_decimal > 9 AND sp_decimal <= 15" }, "pass_criteria": { "min_bets": 1000, "min_ae": 1.05, "max_p": 0.01 }, "forward_bar": { "min_bets": 300, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "Field size: bigger fields put more runners in the 9/1-14/1 band and change each-way place terms (3 places from 8 runners, 4 places in handicaps of 16+)", "Festival and big-meeting handicaps with deep, competitive markets, where SPs are closer to fair", "Irish vs GB market depth: earlier winner pools were weaker in Ireland (0.78 vs 0.91)", "Code mix: flat handicaps and jumps handicaps have different market structures", "The band edges were taken from the winner result after looking at the data (the deficit was at up to 14/1 and level at 16/1+), so the 15.0 cut-off is not independent", "Excluding last-time non-finishers and horses with no recorded last run (last_position NULL) changes the comparison group" ], "mechanism": "Mid-priced handicap runners at about 17/2 to 14/1 may draw a disproportionate share of each-way and recreational money. The place part of an each-way bet looks attractive at these prices, which would push their SPs below fair whatever the horse's form. If so, the whole band is over-bet, and last-time winners in it (A/E about 0.84) only inherit the band's deficit; it is not caused by the winner tag.", "market_miss": "If this is real, it is a structural mispricing of the band, not a hidden form signal. Bookmakers set each-way terms and shade mid-priced handicap runners because they take steady recreational each-way money there, so the SP stays short of fair across all horse profiles. Exchanges and sharp bettors do not fully correct this because the band's overround share is small per horse and spread across the field.", "prediction": { "direction": "negative", "size": "A/E 0.88 to 0.95 on 5,000+ bets if the band effect is real, about level with last-time winners in the same band", "falsified_if": "A/E 0.97 or higher on 3,000+ bets. That would mean the 9/1-14/1 deficit in last-time winners (about 0.84) is specific to the winner tag, not a band effect, and would justify one more focused test of the winner tag." }, "notes": "sp_decimal > 9 AND <= 15 covers SPs from just over 8/1 (17/2 = 9.5) to 14/1 (15.0). This matches the band in the earlier winner finding ('9/1+' as sp_decimal > 9, deficit at up to 14/1). I added an explicit last_position IS NOT NULL so that horses with no recorded last run are left out on purpose rather than silently. This is a rival-explanation test, so the key output is the gap between this rule's A/E and the control rule's (last-time winners, same band). The negative direction is pre-registered, so the vault reads min_ae 1.05 as the over-bet deficit (A/E at or below about 0.95). The pass criteria are stricter than the floors (1,000 bets, p 0.01) because the expected sample is well over 5,000 bets. The refinements test the each-way mechanism directly by place terms. If the effect comes from each-way money, it should be stronger with 16+ runners (4 places)." }
Timeline
Job 2079 finished
· engine:compute-1
H-0d867d0d Discovery → KILLED fails: A/E 1.029, needs 0.95 or lower; p 0.831 (lower tail), needs 0.01; periods [1.02, 1.04], each needs 0.99 or lower; A/E 1.029 against same-race control 1.0, needs 0.03 below
· engine:evaluator
discovery result for H-0d867d0d (broad rule): fail
· engine:evaluator
H-0d867d0d Designed → RESEARCHdiscovery measuring on the discovery zone
· engine:orchestrator
compute-1 took job 2079 (evaluate, attempt 1)
· compute-1
Job 2077 finished
· engine:ai-1
Queued evaluate on the compute lane: discovery run of the broad rule
· engine:scheduler
H-0d867d0d Proposed → RESEARCHdesigned pre-spec written and hashed
· agent:designer@v1
ai-1 took job 2077 (design, attempt 1)
· ai-1
Queued design on the ai lane: write the pre-spec
· engine:scheduler
New idea H-0d867d0d: Rival: handicap runners at 9/1–14/1 that did not win last time are equally over-bet (band effect, not winner tag) (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.