Live-trading state a future session must know (as of 2026-07-05): btc-up is DRY (operator, 2026-07-04; @deploy-confirmed from the pmv2 side, babylon #1050 / #1051) and sol-down is ON WATCH; all other lanes unchanged. Plus the root-cause correction that btc-up’s live loss is ADVERSE FILL, not a broken signal (revises the earlier “adverse selection at signal level” framing incl. babylon pmv2 #1048), and a data-fact confirmation that realized_pnl_usd IS CLOB settlement truth.

For Agents — binding rules

  1. btc-up (crypto_5m_algo_up) is DRY since 2026-07-04 ~20:13 UTC — live BUYS off, but emit STILL FIRES btc-up; those land as mode='dry_run' rows in pmv2_autotrade_orders (filled_size=0, realized_pnl_usd=NULL) — intent logged, no fill, no P&L. Shadow-only. @deploy-confirmed from the pmv2 side (#1050): dry_run in DB, PM DryRehearsed, last REAL submission 2026-07-04 20:01Z, all other lanes live.
  2. DO NOT re-arm btc-up on dry results. Dry ignores adverse fill, so the shadow will look profitable — a mirage. btc-up’s loss is EXECUTION; the real fix is execution-side (don’t fill the toxic cheap-ask fires) and needs the fill harness (@simulator), not a signal change. (Caveat re-posted as #1051.)
  3. sol-down (sol_5m_algo_down) is LIVE, ON WATCH. Pre-registered rule: re-evaluate on its first full day (Jul 5 complete) — full-day win rate <70% → confirmed decay → dry-shadow it; ≥70% → thin-but-stable → leave live. Different disease from btc-up (thin signal, not adverse fill).
  4. pmv2_autotrade_orders.realized_pnl_usd == CLOB resolution truth (24/24 sign-match spot-check, 2026-07-05). The ~9–15% near-tie label noise is resolved_up-only (our on-chain proxy). Live P&L tables on realized_pnl_usd are label-truth-grade — no CLOB backfill needed for them.

Operational state (2026-07-05)

LaneSource IDStateDetail
btc-upcrypto_5m_algo_upDRY (since 2026-07-04 ~20:13 UTC, Andras)NOT a full kill — live BUYS off; emit still firesdry_run rows (filled_size=0, realized_pnl_usd=NULL), shadow only. Live btc-up losses stopped. Announced #1048; @deploy-confirmed from the DB/PM side #1050 (last real submit 2026-07-04 20:01Z, all other lanes live).
sol-downsol_5m_algo_downLIVE — ON WATCHRe-eval on first full day (Jul 5). Full-day WR <70% → dry-shadow, ≥70% → keep live. Magnitude small (~−$20–40/day).
all other 8 lanes{eth,sol,xrp,doge}_5m_algo_{up,down}, crypto_5m_algo_downLIVE / armed — unchanged

sol-down evidence so far: full days Jul 3 = 72%, Jul 4 = 71%; the Jul 5 partial (22 fills, 63.6%) is too noisy to act on — the full-day read governs.

@deploy confirms btc-up DRY end-to-end (babylon #1050 / #1051, 2026-07-05)

@deploy independently confirmed the btc-up disarm from the pmv2 side (babylon pmv2 #1050):

  • crypto_5m_algo_up = dry_run in the DB; PM rehearses only (DryRehearsed — builds/signs, never POSTs).
  • Last REAL btc-up submission: 2026-07-04 20:01Z; all other lanes live.
  • Matches my independent read — live btc-up last fired 19:58:03Z. The two sides agree on the cutover.

#1051 — the DryRehearsed btc-up P&L is a MIRAGE (do NOT re-arm on it)

I re-posted the binding caveat as #1051: because btc-up’s loss is ADVERSE FILL, not signal, the DryRehearsed shadow fills at the intended price and never models the adverse fill → its P&L will look profitable. Do NOT re-arm btc-up on dry-rehearsal results. Any re-arm needs a real fill / execution fix (the @simulator fill harness), not dry-shadow numbers.

btc-up is adverse FILL, not a broken signal

Revises the earlier "adverse selection at signal level" framing (incl. babylon pmv2 #1048)

#1048 announced btc-up→dry and framed the loss as signal-level adverse selection. The decisive test refutes that: the btc-up signal is fine — the loss is execution / adverse fill.

Decisive test (Jul 3, actual CLOB winners CSV, btc-up fires):

Fill outcomenActual win rate
FILLED (we bought)825%
FAILED to fill (FAK no-match, ask ran away)14100%
Signal overall (all fired windows)22~73–84%

Mechanism. We systematically fill the losers (ask stays cheap because the market already knows that token loses) and miss the winners (ask runs away before our FAK matches — the FAK-reprice thread). The signal picks winners; the fill path inverts the selection.

  • Implication — dry btc-up is a MIRAGE. Dry books intent at model terms and never suffers the adverse fill, so the shadow will look profitable. Do NOT re-arm on dry results. The fix is execution-side (don’t fill the toxic cheap-ask fires); validating it needs the fill/repricing harness (@simulator), which the at-ask machinery cannot substitute for.
  • Caveat: n=22, one day. Consistent with the session’s fill/chase thread and a sharper, filled-vs-failed-labeled version of the disagreement-ceiling finding (execution-toxic, not selection-toxic; depressed filled win rate = adverse fill selection).

sol-down is a thin/decaying signal (different disease)

sol-down is the opposite of btc-up:

  • Fill is fine — filled 71% vs failed 80% (~representative; no adverse-fill inversion).
  • Signal is marginally below breakeven71% actual vs ~74% needed at the 0.72 entry (cost + fee breakeven).

So sol-down = a thin / decaying edge, not an execution problem — hence watch, don’t kill: give it its first full day and let the pre-registered 70% rule decide. This is why btc-up (execution) and sol-down (signal) get different treatments.

Data fact — realized_pnl_usd IS CLOB settlement truth

Spot-check 2026-07-05: across 24 of 24 sampled windows, the CLOB tokens[].winner matched the sign of realized_pnl_usd exactly (0 mismatch). Therefore:

  • realized_pnl_usd = the actual CLOB market resolution, net of fees (the taker fee is baked into cost_basis).
  • The ~9–15% near-tie disagreement noise applies ONLY to resolved_up (our on-chain Chainlink settle ≥ K proxy), NOT to realized_pnl_usd.
  • Live P&L tables built on realized_pnl_usd are label-truth-grade — no CLOB backfill needed for them. A CLOB backfill only helps on-chain / resolved_up-based analyses (e.g. the dry-btc-up shadow, signal parquets).

This confirms and sharpens crypto-shortterm-pnl-attribution-corrections-2026-07-03 (which established realized_pnl_usd as the trustworthy label and resolved_up as a gate, not settlement truth) and is recorded in crypto-shortterm-data-sources.