Hypotheses · shock · H-2e19c9be
Rival: chase non-finishers with only a mild shock score the same as large-shock ones
Part of the thread “S3: chase not completed large negative” 3 hypotheses
- Proposed
- Designed
- Discovery
- Promising
- Falsification
- Frozen
- Vault
- Provisional
- Shadow
- Validated
- Live
- Source
- Investigator agent, v1
- Made by
- rival-explanation
- Created
- 17 Oct, 02:42
- Tests logged
- 0
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
- S3-chase-not-completed-large-negative (S3: chase not completed large negative) pointed the predicted way (positive) on the sealed holdout but too weakly to prove it: A/E 1.095 on 254 bets (p 0.364, false-discovery threshold 0.0034); tracked forward in SHADOW. O-ddd7ee0a
- AskedAmong last-time chase non-finishers, does a deeper jumping shock (more negative s) lead to a higher A/E next time, or is s irrelevant once the horse failed to finish? testing
- MechanismIf the lift comes from the market over-penalising any visible non-completion (the P/F/U letter), then chase non-finishers whose jumping was close to expectation should do as well as heavily shocked ones. If the shock is the cause, only the large-negative group should lift.
- Why the market misses itPunters see the non-finish letter, not how far the run fell short of its expected Jump Index. Under the shock story, the market treats all non-finishers alike while only the badly shocked ones are one-off aberrations.
- Predictedpositive, A/E 1.05 to 1.12 on 250+ bets, matching the large-shock group (the rival is supported)
- Falsified ifA/E at or below 0.97 on 200+ bets while the large-shock group stays near 1.09, which would mean s carries the effect
- Rule sketch
code = 'Chase' AND finished = 0 AND s > -1.5 - question id
Mechanism and rationale
If the lift comes from the market over-penalising any visible non-completion (the P/F/U letter), then chase non-finishers whose jumping was close to expectation should do as well as heavily shocked ones. If the shock is the cause, only the large-negative group should lift.
The rule
code = 'Chase' AND finished = 0 AND s > -1.5
Reads: code, finished, s
Pre-registration
- Spec hash (sha256 of the canonical pre-spec)
- 09667c6424aa9195fc2046d01eb8889f95b593d1db4b612769c5c276895720e9
- Frozen
- not frozen
- The definition can still change.
- Confounders
- Mix of non-finish types: pulled-up runs probably carry milder shocks, while falls and unseats carry larger ones. A difference between the groups may reflect the P vs F/U mix rather than the size of the shock.
- Price band: heavily shocked horses may drift to bigger prices, where A/E is noisier and long-priced non-finishers have done badly (0 from 98 at 16/1 or bigger).
- GB/IRE mix: earlier chase non-finisher lifts were GB-only, and the two groups may differ in regional make-up.
- Single-season sample (shock columns start in GB in October 2023 and in IRE in August 2024). Earlier cuts also showed a lift that sat after 27 April 2026, which may be a calendar effect.
- s > -1.5 includes positive shocks: non-finishers that jumped better than expected (likely pulled up or brought down for reasons other than jumping). This makes the group a mix, not a pure 'mild shock' group.
- Control
{ "description": "Primary comparison: the large-shock chase non-finishers (s <= -1.5), measured over the same period and regions. Holdout reference was A/E 1.095 on 254 (discovery 1.007 on 214). The rival is supported if the mild-shock group matches that group (within about 0.05 A/E). The shock story is supported if the mild-shock group sits clearly lower, at or below 0.97. The lab also measures the other runners in the same races, which should come out near 1.0. If they also lift, the effect belongs to the races, not to the non-finishers.", "rule": "code = 'Chase' AND finished = 0 AND s <= -1.5" }
Discovery result
Not measured yet.
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 · 26s · 17 Oct, 02:42
Output (schema-checked)
{ "rule": "code = 'Chase' AND finished = 0 AND s > -1.5", "refinements": [ { "label": "near-expectation jumping only", "rule": "code = 'Chase' AND finished = 0 AND s > -1.5 AND s BETWEEN -0.75 AND 0.75" }, { "label": "GB only (earlier chase non-finisher lifts were GB-only)", "rule": "code = 'Chase' AND finished = 0 AND s > -1.5 AND region = 'GB'" }, { "label": "under 16/1 (long-priced non-finishers went 0 from 98 elsewhere)", "rule": "code = 'Chase' AND finished = 0 AND s > -1.5 AND sp_decimal < 17" } ], "control": { "description": "Primary comparison: the large-shock chase non-finishers (s <= -1.5), measured over the same period and regions. Holdout reference was A/E 1.095 on 254 (discovery 1.007 on 214). The rival is supported if the mild-shock group matches that group (within about 0.05 A/E). The shock story is supported if the mild-shock group sits clearly lower, at or below 0.97. The lab also measures the other runners in the same races, which should come out near 1.0. If they also lift, the effect belongs to the races, not to the non-finishers.", "rule": "code = 'Chase' AND finished = 0 AND s <= -1.5" }, "pass_criteria": { "min_bets": 200, "min_ae": 1.05, "max_p": 0.05 }, "forward_bar": { "min_bets": 100, "min_ae": 1, "max_p": 0.2 }, "confounders": [ "Mix of non-finish types: pulled-up runs probably carry milder shocks, while falls and unseats carry larger ones. A difference between the groups may reflect the P vs F/U mix rather than the size of the shock.", "Price band: heavily shocked horses may drift to bigger prices, where A/E is noisier and long-priced non-finishers have done badly (0 from 98 at 16/1 or bigger).", "GB/IRE mix: earlier chase non-finisher lifts were GB-only, and the two groups may differ in regional make-up.", "Single-season sample (shock columns start in GB in October 2023 and in IRE in August 2024). Earlier cuts also showed a lift that sat after 27 April 2026, which may be a calendar effect.", "s > -1.5 includes positive shocks: non-finishers that jumped better than expected (likely pulled up or brought down for reasons other than jumping). This makes the group a mix, not a pure 'mild shock' group." ], "mechanism": "This tests a rival explanation. If the lift seen in chase non-finishers comes from the market over-penalising any visible non-completion (the P/F/U letter in the form figures), then chase non-finishers whose last-run Jump Index was close to or above expectation (s > -1.5) should beat their prices as much as the heavily shocked ones (s <= -1.5). If instead the shock is the cause, because a badly below-par jumping run is a one-off aberration the horse bounces back from, only the large-negative group should lift and this group should sit at par or below.", "market_miss": "Punters and the form figures show the non-finish letter, not how far the jumping fell short of the horse's expected Jump Index. Under the rival story, the market marks down all non-finishers equally and too much, so the mild-shock ones are underpriced too. Under the shock story, the market treats all non-finishers alike while only the badly shocked ones are aberrations, so the mild-shock group would be fairly priced.", "prediction": { "direction": "positive", "size": "A/E about 1.05 to 1.12 on 250+ bets, matching the large-shock group (the rival is supported)", "falsified_if": "A/E at or below 0.97 on 200+ bets while the large-shock control stays near 1.09. That would mean the shock size (s), not the non-completion itself, carries the effect." }, "notes": "I kept the rule sketch as it was. It uses only pre-off shock columns (code, finished, s) and does not read the race result. Rows with a null s drop out of the s > -1.5 comparison, so the rule covers only runs that have a shock score. I set min_bets to 200, stricter than the floor of 150, to match the 200+ bets in the falsification threshold. Each refinement comes from the reasoning or from earlier findings: jumping close to expectation, GB-only, and under 16/1. Read this result side by side with the control; on its own a positive A/E does not separate the rival from the shock story." }
Timeline
Job 3192 gave up: OperationalError: no such column: code Traceback (most recent call last): File "/app/lab/src/gallops/orchestrator/loop
· engine:compute-1
compute-1 took job 3192 (evaluate, attempt 5)
· compute-1
Job 3192 will retry: OperationalError: no such column: code Traceback (most recent call last): File "/app/lab/src/gallops/orchestrator/loop
· engine:compute-1
compute-1 took job 3192 (evaluate, attempt 4)
· compute-1
Job 3192 will retry: OperationalError: no such column: code Traceback (most recent call last): File "/app/lab/src/gallops/orchestrator/loop
· engine:compute-1
compute-1 took job 3192 (evaluate, attempt 3)
· compute-1
Job 3192 will retry: OperationalError: no such column: code Traceback (most recent call last): File "/app/lab/src/gallops/orchestrator/loop
· engine:compute-1
compute-1 took job 3192 (evaluate, attempt 2)
· compute-1
Job 3192 will retry: OperationalError: no such column: code Traceback (most recent call last): File "/app/lab/src/gallops/orchestrator/loop
· engine:compute-1