BALLAST.

The kill log

Every strategy idea we test is pre-registered, thresholds and all, before the result is ever seen, and every verdict lands here, including the failures. Most ideas fail this gate. That is the point: a survivor means something because failure here is public, not edited out.

Variants tried
47
Killed
8
Forward experiments
1
Citable edge
0

"Variants tried" counts every distinct strategy configuration ever scored by the deflated Sharpe gate's own multiple testing correction (data/backtest/trial-ledger.jsonl), including an early overlay search that predates the formal registry below, so it can run ahead of the row count in the tables. "Killed" and "forward experiments" count only the hypotheses pre-registered and run through that registry (config/hypotheses/, data/research/, data/backtest/validation/), which the two tables below show in full. A hypothesis earns a citable edge only once it also clears the trust ladder's VERIFIED rung, the same bar this codebase enforces before letting any number reach a headline. As of today, nothing has. The ledger itself is hash-chained and staged for external timestamping, so its history cannot be quietly rewritten; the verification page shows how to check it.

We corrected our own verdict, in public. The strategies below are pre-registered before the result is seen, and their verdict files are never rewritten. When we later tightened the deflation gate (it was letting sub-threshold noise through), one candidate that had provisionally shipped no longer cleared the bar. Rather than quietly edit the record, we layer the current authoritative verdict over the immutable history and show the change here:
  • event_driven_index_add (aggressive): SHIP-OFF → KILL. Provisionally SHIP-OFF, then corrected to KILLED when the deflation gate was tightened: its incremental deflated Sharpe of 0.56 sits below the 0.95 significance floor, so the edge is below the calibrated detection floor and indistinguishable from noise. We caught our own gate shipping sub-threshold noise and killed it.
The pre-registration trial ledger stays byte-for-byte immutable; the correction lives at presentation time. This is the honesty story this page exists to tell: a survivor only means something if we also publish the ones we had to take back.

Every pre-registered hypothesis

HypothesisProfileDeflated upliftWalk-forward OOS upliftPBOIncremental DSR (0.95 floor)VerdictReasonDetail
trend_aggressiveaggressive+0.020-0.0230.63n/aKILLFailed walk-forward out-of-sample uplift and probability of backtest overfitting (PBO).Full verdict →
event_driven_index_addaggressive+0.042+0.0620.000.56KILLcorrected from SHIP-OFFProvisionally SHIP-OFF, then corrected to KILLED when the deflation gate was tightened: its incremental deflated Sharpe of 0.56 sits below the 0.95 significance floor, so the edge is below the calibrated detection floor and indistinguishable from noise. We caught our own gate shipping sub-threshold noise and killed it.Full verdict →
activist_13daggressive+0.024-0.0090.670.52KILLFailed walk-forward out-of-sample uplift and probability of backtest overfitting (PBO) and incremental DSR (0.95 floor).Full verdict →
equity_dedup_collapseaggressive-0.051+0.0000.460.42KILLFailed deflated incremental edge and walk-forward out-of-sample uplift and incremental DSR (0.95 floor).Full verdict →
equity_dedup_reweightaggressive-0.089+0.0000.410.37KILLFailed deflated incremental edge and walk-forward out-of-sample uplift and incremental DSR (0.95 floor).Full verdict →

A hypothesis is KILLED if ANY gate fails; the incremental DSR (probability the edge is real, once selection luck is deflated out) is the decisive specificity gate, with a pre-registered 0.95 floor.

Standalone gate: hypotheses the fund's own universe cannot reach

Every hypothesis in the table above is shaped like a fund sleeve and is therefore scored on the fund's own price history, which begins in 2011 because that is when the book's tail hedge began trading. Some questions are only worth asking over a much longer history than that. Those are pre-registered and scored the same way, through the same deflated Sharpe, walk-forward and PBO gate plus a tail bound, but standalone rather than as a sleeve, so they live in their own artifacts. They belong here for the same reason everything else does.

HypothesisWindowSharpe vs baselineGates passed Detection floorVerdictWhy we are not trading itDetail
turn_of_month1926-07-01 to 2026-06-30
26274 sessions
+1.089 vs +0.634
uplift +0.455
10 of 10+0.455 vs floor +0.165
clears it, at 26273 observations
SHIP-OFF does not clear program bar ↓Does not clear its own research program's selection bar. The edge is concentrated before publication. The result is cost-model dependent.Full verdict →
vrp_put_write1996-08-02 to 2026-08-04
7543 sessions
+0.619 vs +0.610
uplift +0.009
5 of 9+0.009 vs floor +0.311
below it, at 7542 observations
KILL4 of 9 pre-registered gates failed. The frictional assumption moves the answer.Full verdict →
vx_short_carry2004-03-26 to 2026-06-16
5591 sessions
+0.552 vs +0.656
uplift -0.104
0 of 11-0.104 vs floor +0.392
below it, at 5590 observations
KILL11 of 11 pre-registered gates failed. The answer moves with the cost assumption. The source archives disagree on some prices.Full verdict →
auction_concession1979-10-31 to 2026-06-30
11631 sessions
+0.413 vs +0.452
uplift -0.039
9 of 13-0.039 vs floor +0.241
below it, at 11630 observations
KILL4 of 13 pre-registered gates failed. The edge is concentrated before publication. The result is cost-model dependent.Full verdict →
A survivor here is still not a claim. SHIP-OFF means the run cleared the pre-registered gate and nothing else. It is not registered as a book, no mandate references it, and no order surface exists for it. Reading the verdict without the caveats in the same row would be reading half the result, which is why they are not on separate pages.
A hypothesis's thresholds are fixed in its pre-registration file before the run, so nothing here can be tuned after seeing the result. Read how the gate itself is scored and how far each verdict's trust has been checked on the verification page.