30-day backtest replay of all 11 proving wallets: Bikes leads at +$7,804
(slow geopolitics/novelty markets — the most copyable flow profile in the
set: 12 conviction bets >$100 in his last 60 trades, no in-play delay, no
5-min races). AIcAIc out: weakest incumbent forward (+$32 paper, −$9.5
live, only negative wallet) and his sell-timing class is the one most
flattered by zero-lag backtest fills — benched in backtest.json to re-prove.
badaf keeps his seat: +105% ROI on invested and 6-0 forward. LSB1 (+$55)
and imwalkinghere (uncopyable) stay out — both validated by this replay.
42021 cut from the bench (+$15 dud). Bench now: Vahan88, EdwardIN, LSB1,
imwalkinghere, AIcAIc.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The 08:00 daily sync_floors.py unconditionally overwrote every paper-book
floor with the trusted p80 — silently reverting Kruto 80→125.61 the morning
after the deliberate lowering, so the paper book stopped matching the live
book (which reads a different config) and the 'catch more Kruto flow'
experiment ran on real money only. sync_floors now honors a per-wallet
floor_pin; Kruto pinned to 80 in paper + backtest (live already 80 via
per_wallet_min_usd). All three books gate Kruto at 80 again.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
5-day forward sample (101 paper + 31 live copies): imwalkinghere produced
ZERO copies — his flow is 5-min BTC Up/Down markets that resolve faster
than any copy can act, and his missed bets would have LOST $390. LSB1 is
the worst forward performer (−$397, 2-4; misses also negative) → demoted
to backtest.json for re-proving. Kruto: +$736 from TWO copies at the
highest z on the table (19.3) — floor lowered to catch more flow. Bench
adds to backtest for forward proving: Vahan88, 42021, BikesAreTheBikes,
EdwardIN. badaf vindicated (+$310, 6-0 + the 0.001 counterfactual) and
stays; AIcAIc gets a week under RTDS before judgment.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Chosen by the aligned honest 30d replay (2026-07-08): Set E $24.4k
(+2338%) vs Set D $17.4k (+1636%); every member positive in the shared
book. oliman2/leegunner excluded on the anti-survivorship audit.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Rebuilt the live follow set from the corrected data. Dropped fortuneking
(weak copy P&L), iohihoo (negative 30d form), and Stavenson/0x4bFb-whale/
ArbTrader (no longer qualify as sharps post-truth-scoring). Added 42021,
0xbadaf319, BikesAreTheBikes. All 6 clear the 2-month copy P&L signal + the
30d conviction form + copyable lead, and are moderate-bet (fit a $1k book,
0 missed). 30d backtest: $27,799 (+2680%, 279W/75L) vs the old set's $16k.
backtest.json matched so the dashboard replays the live set.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
cur_stake = class % of equity (drawdown-braked), then min(their stake):
a copy is never bigger than what the wallet actually bet. No reserve
sweep, no $250 pin — the their-bet ceiling is the liquidity bound now
(fills stay within size the market demonstrably absorbed).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
portfolio.py now replays ANY wallet set over a rolling N-day window
(default 30) instead of the hardcoded four-from-June-1:
* live/backtest.json: {days, stake_cap_usd, class_pct, wallets:[{wallet,
name, class}]} — edit to add/remove/swap wallets; seeded with the paper
bot's current 7-wallet follow set
* class parity with the bot: 'whale' replays EVERY trusted bet at
class_pct.whale of equity; 'volume' replays conviction bets at
class_pct.volume, p80 threshold from PRE-window bets only (no peeking)
* outcomes read through trust.py (trusted rows) so any pasted-in wallet
is scored honestly, not on cache marks
* ad-hoc CLI that leaves the dashboard feed alone:
python3 portfolio.py --wallets 0xabc,0xdef:whale --days 14 --out /tmp/t.json
* fix: open positions with unknown entry time used to sort at t=0 and
drain the bankroll before any historical bet ran; they now queue at the
end (and pre-window entries are excluded)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>