Commit Graph

1397 Commits

Author SHA1 Message Date
copybot[bot] dc663a2ac2 copybot: live paper feed [skip ci] 2026-07-14 11:41:19 +00:00
copybot[bot] 32ea1f39c2 copybot: live paper feed [skip ci] 2026-07-14 11:37:04 +00:00
copybot[bot] 1147ac8d08 copybot: live paper feed [skip ci] 2026-07-14 11:30:57 +00:00
copybot[bot] 4c3d9e0c85 copybot: live paper feed [skip ci] 2026-07-14 11:30:45 +00:00
copybot[bot] 6ba1c8d524 copybot: live paper feed [skip ci] 2026-07-14 11:20:13 +00:00
copybot[bot] a6cc34f8b2 copybot: live paper feed [skip ci] 2026-07-14 11:18:08 +00:00
copybot[bot] b1adc26699 copybot: live paper feed [skip ci] 2026-07-14 11:16:27 +00:00
copybot[bot] ece461f9f5 copybot: live paper feed [skip ci] 2026-07-14 11:15:57 +00:00
copybot[bot] 2680203bd5 copybot: live paper feed [skip ci] 2026-07-14 09:10:18 +00:00
copybot[bot] 64153c4a74 copybot: live paper feed [skip ci] 2026-07-14 04:10:25 +00:00
jaxperro 50fc76781a chain seed: the code for 5e97b13 — fills_from_tx + hint_txs funnel (autostash dropped it from the prior commit)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 00:10:03 -04:00
jaxperro 5e97b13bc9 chain seed: Alchemy push decodes fills from the tx receipt — RTDS-silent markets copy at push speed
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 00:09:24 -04:00
copybot[bot] 7e5d634e0f copybot: live paper feed [skip ci] 2026-07-14 02:52:38 +00:00
copybot[bot] 0d361cc64c copybot: live paper feed [skip ci] 2026-07-14 02:51:42 +00:00
copybot[bot] f4678e9d39 copybot: live paper feed [skip ci] 2026-07-14 02:50:30 +00:00
copybot[bot] 1e59dc1811 copybot: live paper feed [skip ci] 2026-07-14 02:49:32 +00:00
copybot[bot] e5f01d7e8b copybot: live paper feed [skip ci] 2026-07-14 02:41:14 +00:00
copybot[bot] ad84d89aa9 copybot: live paper feed [skip ci] 2026-07-14 02:31:52 +00:00
copybot[bot] 1bc98b4ea3 copybot: live paper feed [skip ci] 2026-07-14 02:30:50 +00:00
copybot[bot] 0408de0129 copybot: live paper feed [skip ci] 2026-07-14 01:20:28 +00:00
copybot[bot] cd839ad25b copybot: live paper feed [skip ci] 2026-07-14 01:19:24 +00:00
copybot[bot] 819aa72fc1 copybot: live paper feed [skip ci] 2026-07-13 23:05:16 +00:00
copybot[bot] f15073c484 copybot: live paper feed [skip ci] 2026-07-13 23:04:13 +00:00
copybot[bot] aca0bf04fc copybot: live paper feed [skip ci] 2026-07-13 22:57:58 +00:00
copybot[bot] 9d20a9a849 copybot: live paper feed [skip ci] 2026-07-13 22:18:41 +00:00
copybot[bot] 7002d18436 copybot: live paper feed [skip ci] 2026-07-13 21:36:15 +00:00
copybot[bot] de0ecddadd copybot: live paper feed [skip ci] 2026-07-13 21:30:47 +00:00
jaxperro f048022860 follow set rev 3: AIcAIc → BikesAreTheBikes (backtest + forward decision)
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>
2026-07-13 17:30:27 -04:00
jaxperro 00d53f84ad HANDOFF rev 11: RTDS-seed lag fix, tick-conform prices, floor_pin audit, operating boundary
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 17:12:26 -04:00
jaxperro 57cdbde395 audit fixes: pin-mirror to backtest, unpinned-floor warning, watch_sharps diff, class_pct guard
From the automated-writer clobber audit (3-agent workflow):
- sync_floors now ACTUALLY mirrors floor_pin into backtest.json (the comment
  claimed it; the code never did — so a paper pin diverged from the backtest's
  dynamic p80, defeating calibration). Kruto 80 now consistent across all 3.
- sync_floors warns loudly when about to revert an UNPINNED floor that looks
  hand-edited (>5 and >15%) — floor_pin is the only protected key, so a direct
  edit used to vanish silently at 08:00.
- validate_timing logs the sharps add/drop delta and documents watch_sharps.json
  as generated-only (format kept a plain list — dashboard/discord read it so).
- daily.sh warns if copybot.paper.json vs backtest.json class_pct desync.

Audit verdict otherwise CLEAN: sync_floors is the only pipeline step that
mutates a manual-knob file, and it round-trips the whole JSON touching only
floor — all other knobs (caps, guard, depth_gate, follow set, band) survive.
config.live.example.json is untouched by every automated writer (safe by
neglect). No second floor_pin-class bug exists.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 17:11:17 -04:00
copybot[bot] 51e769fbf0 copybot: live paper feed [skip ci] 2026-07-13 20:34:22 +00:00
copybot[bot] 90dba89f52 copybot: live paper feed [skip ci] 2026-07-13 20:19:29 +00:00
copybot[bot] 8972cf1e4d copybot: live paper feed [skip ci] 2026-07-13 20:19:29 +00:00
copybot[bot] 85b2123dc7 copybot: live paper feed [skip ci] 2026-07-13 20:17:33 +00:00
copybot[bot] 0fe33b26c3 copybot: live paper feed [skip ci] 2026-07-13 20:13:20 +00:00
copybot[bot] d87eb897ee copybot: live paper feed [skip ci] 2026-07-13 17:53:59 +00:00
copybot[bot] 25967583fd copybot: live paper feed [skip ci] 2026-07-13 17:52:55 +00:00
copybot[bot] 8c00b15191 copybot: live paper feed [skip ci] 2026-07-13 17:10:29 +00:00
jaxperro 5ac5396c7a floor_pin: manual floors survive the daily p80 sync (Kruto stays 80)
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>
2026-07-13 13:10:11 -04:00
copybot[bot] d3db785925 copybot: live paper feed [skip ci] 2026-07-13 16:22:17 +00:00
copybot[bot] da610d9b11 copybot: live paper feed [skip ci] 2026-07-13 16:01:41 +00:00
copybot[bot] 3f8271ff21 copybot: live paper feed [skip ci] 2026-07-13 15:14:30 +00:00
copybot[bot] fd515dda08 copybot: live paper feed [skip ci] 2026-07-13 15:14:06 +00:00
jaxperro 933d2656d8 RTDS seeds the funnel directly — copy fires at ~1s regardless of data-api indexer
Diagnosis of the 122s paper avg (user report): RTDS SAW every slow fill at
~0.3s (shadow ledger proof) but the copy landed 130-305s later — because
on_wallet_activity threw the RTDS payload away and re-fetched from the
data-api, whose indexer lagged that long on badaf/1kto1m crypto+index
markets, so the push was wasted and the 300s backstop poll did the copy.

Fix (option B as augmentation): the RTDS message carries every field
handle_trade needs, so seed it into on_wallet_activity's candidate set
(deduped by tx). The re-fetch + fill-split merge still run — the seed just
guarantees the trade is present at ~1s. detect_lag now reflects true RTDS
delivery (~1s) instead of indexer lag. 3 stub paths pass (seed-copies-on-
empty-data-api, dedup, no-seed-backstop-unaffected).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 11:13:50 -04:00
jaxperro 7334de070f live: daily refresh — skilled + sharp wallets [skip ci] 2026-07-13 10:59:39 -04:00
copybot[bot] d7d6c6c68b copybot: live paper feed [skip ci] 2026-07-13 14:57:24 +00:00
copybot[bot] 4280280893 copybot: live paper feed [skip ci] 2026-07-13 14:57:20 +00:00
jaxperro 95dcc93b15 cursor cold-start stays fresh; lag visible on the dashboard; phantom purge
- _fetch_since_cursor cold start (no cursor) now seeds at now-600s like the
  pre-cursor fetch — the 02:10 boot walked 500 rows/wallet of history through
  the funnel and spammed ~230 phantom 'too slow (20,000m late)' missed rows
  per book (user saw them on the dashboard). Purged from both books
  (116 paper + 114 live; genuine misses remain).
- feed lag tile falls back to the LIFETIME average when the 24h window is
  empty (the live page showed '—' after a copy-less day).
- bet records now carry lag_s so the dashboard shows per-copy exec lag.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 10:57:08 -04:00
copybot[bot] fdf2c19a0b copybot: live paper feed [skip ci] 2026-07-13 14:50:39 +00:00
jaxperro 4aa795f9b9 protected prices conform to the book's tick (quote-precision bound)
The 4dp bound (sub-penny fix) violated tick conformity on 1c books —
'max_price must conform to tick size 0.01' failed a winning SPX copy at
14:36Z. The quoted price is always a tick multiple, so its own decimal
count is the finest safe precision: bound rounds to quote precision
(coarser is always valid on finer ticks, never the reverse). Verified
across 2dp/3dp/sub-penny quotes both sides.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 10:48:11 -04:00