┌─ dead-signals v0.1.4 ──────────────────────────────────────────────
│ evidence ledger · entry 001 · 2026-10-09
└───────────────────────────────────────────────────────────────────

$ autopsy run --target "solana-memecoin-early-entry" --strict

Every strategy we tested
was already dead.

20 variants of the "buy a fresh memecoin, sell at 5–30×" playbook, run against the real trade tape.

corpus:
  launches tracked ......... 1,194,068
  coins harvested .......... 5,654
  trades (tx-signed) ....... 43,600,000
  candles (1s) ............. 15,600,000
  labels ................... 741 winners / 17,397 controls
  api calls spent .......... 4,871,466
[ ok ] corpus loaded
── run · 20 hypotheses ──────────────────────────────────────────
  id    axis                       fires    verdict
    ──    ────────────────────────   ─────    ──────────────────────────
  H01   sustained volume velocity    139    WEAK  96% EV in top-5% trades
  H02   dev holds                     44    WEAK  dev-conc 64%
  H04   top-10 concentration           5    FATAL n=5, tail-only
  H05   social/caller                 19    WEAK  93% EV in one week
  H06   funder clusters              119    DEAD  WEAK-DEAD
  H07   holder acceleration           33    WEAK
  H09   —                              1    DEAD
  H10   sync-buy avoidance           234    DEAD  volume proxy (lift 1.24)
  H11   leaderboard presence          65    DEAD  PIT leak + recount
  H12   first caller event           590    DEAD  mass-fire, all-tail
  H13   social velocity                6    DEAD
  H14   CMC sniper%                    0    N/A   data-gap (5/206)
  H15   launchpad base-rate          139    WEAK  mirrors H01
  H16   SOL regime gate              139    WEAK  same signal set
  H17   multi-feature                 42    DEAD  85% P&L one dev wallet
  H18   whale/caller entry            10    DEAD  recount −43%
  H19   —                             17    DEAD
  H20   misc axis                     27    WEAK  97% P&L one dev
                                       ──────────────────────────────
                                       0 / 20 strategies survive

The naive results looked incredible — which is exactly the trap. A whale-entry variant showed +352.4 SOL on ten trades. A leaderboard feature showed +73.2 SOL. Stop there and you have a strategy and a Twitter thread. Instead we ran four audits.

── audit Q1 · independent recount ───────────────────────────────

Fresh code re-derived every result from raw files — no shared functions, no shared assumptions. Sampled exit prices matched the real tape 10/10. The numbers didn't survive: n=10 is an anecdote, and in one group a single trade carried 42% of the entire EV.

── audit Q2 · point-in-time ────────────────────────────────────

For every feature: was it knowable at decision time? The leaderboards table stores fetch-time state — snapshot_date is NULL on every row. "Was this wallet a leaderboard wallet when it bought" silently became "is it one now". The alpha was the future leaking backward.

── audit Q3 · selection ────────────────────────────────────────

Surviving signals fired almost only in the top volume quintile — where the base win rate is already 23.7% vs 6.0% overall. Volume-matched controls collapsed the lift to ~1.24×. Two dev wallets accounted for ~12,500 SOL of aggregate P&L. A "population pattern" made of two actors.

── audit Q4 · execution ────────────────────────────────────────

Exits assumed zero price impact — infinite liquidity, the oldest lie in backtesting. Fixed with constant-product math + a 2% sandwich tax. The audit also caught a bare except swallowing a NameError on every time-stop exit: 539 of 1,618 simulated trades had silently vanished — selectively deleting exactly the ugly exits that drag EV down.

exhibit A — simulated EV, naive vs post-audit (SOL)

  H18  +352.4  ███████████████████████████░░░░░░░  +200.8   −43.0%  recount
  H11   +73.2  ██████░░░░░░░░░░░░░░░░░░░░░░░░░░░░    +0.19   −99.7%  PIT leak
  H17   +50.2  ████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░      ≈0     dead   dev-conc

exhibit B — 1,618 simulated trades (each cell ≈ 16)

  ■■■■■■■■■■■■■■■■■■■■■■■■■
  ■■■■■■■■■■■■■■■■■■■■■■■■■
  ■■■■■■■■■■■■■■■■■■□□□□□□□
  □□□□□□□□□□□□□□□□□□□□□□□□□

  ■ recorded 1,079   □ deleted by bare except · 539 · 33.3%
── the tape is hostile anyway ──────────────────────────────────

Over 50% of launches get sniped in block 0 (median first buy: 0 seconds). ~17% of all transactions are wash trades, and wash trading raises graduation odds up to 10× — so the label "graduated" is partly manufactured, and every feature trained on it inherits the manufacturing.

── exception ───────────────────────────────────────────────────
[ survived ] regime-60s scorer
  ev/oos ......... +0.087 SOL/trade   n=1,192
  win rate ....... 53.4%
  caveat ......... regime-dependent, thin margin, not a launch signal
# reported because "everything died" also needs an exception check
── verdict ──────────────────────────────────────────────────────
VERDICT: NO-GO · 20/20

  what survived is not a strategy — it's the pipeline:
  recount → point-in-time → selection → execution.

  if a backtest has no PIT check and no independent
  recount, it isn't a backtest. it's a bedtime story.

  next time: write the audits before the hypotheses.
dead-signals — published after the thing dies, receipts attached.
figures verified against source files · 182/182 citations checked, 0 fabricated.
$