A time-of-day (hour) filter looked great in-sample — the algo appeared to “print overnight” and bleed at US-open — but the OOS check on 21 days reversed the sign. Hour-of-day P&L is noise, not structure. Do not arm a time filter. This is the 4th in-sample-great / OOS-fail overlay this session.

For Agents — binding rules

  1. Do NOT arm a time-of-day / hour-of-day filter. The hour-of-day P&L flips sign between periods = noise, not a structural effect.
  2. The edge is the [60,150)s pocket (frozen rule). The market efficiently prices every overlay we test — selection, execution timing, and now time-of-day. Stop looking for a profitable overlay on top of the frozen rule.

In-sample looked like a strong effect (July live, ~5 days)

  • Overnight “prints”: 01–05 CEST = +$367.
  • US-open bleed: 14–15 CEST = 165.

Tempting story: arm only overnight, mute the US-open hour.

OOS check REVERSED it (21 days BTC, refit parquet, actual CLOB labels, at-ask EV)

Ran hour-of-day EV over a 21-day BTC refit parquet using ACTUAL CLOB resolution labels (not resolved_up) at at-ask EV:

WindowIn-sample (July live)OOS (21-day, actual labels, at-ask)
US-open 14–16 CESTbleed (−165)+0.016/fire (+$5)
Overnight 01–05 CESTprint (+$367)−0.018/fire (−$10)

The sign flips between the two periods → the hour-of-day effect is noise, not structure. Corroborating:

  • BNB May showed no US-open dip at all.
  • The July 124) — broad across lanes that day but not persistent.

Verdict

Do not arm a time-of-day filter. It is the 4th in-sample-great / OOS-fail overlay this session, after:

  1. raise EMIT_MIN_EDGE (floor) — rejected (crypto-shortterm-algo-accuracy-audit-2026-07-02);
  2. disagreement ceiling — OOS-rejected (crypto-shortterm-disagreement-ceiling-nogo-2026-07-03);
  3. don’t-chase / execution overlay — unvalidatable at-ask (crypto-shortterm-lane-state-adverse-fill-2026-07-05);
  4. time-of-day (this note).

Durable lesson

The algo’s edge is the [60,150)s oracle-lag pocket and nothing else. Every overlay we bolt on (edge-band selection, fill timing, time-of-day) is efficiently priced by the market — it looks like alpha in-sample and vanishes (or reverses) OOS. Selection on anything but the frozen regime is a dead end.