The common-clock replay: make two strategies comparable before you believe their sum
what you'll learn · A checklist for combining independently-built strategies without manufacturing fake diversification — common mark clocks, L1-crossing replays, honest coverage gates, and fragility diagnostics that admit what they can't correct.
Two strategies developed separately each carry their own clocks — signal time, fill time, mark time. Combine their equity curves as-is and the portfolio math silently rewards the mismatch: correlation biases low, overlap risk hides, and the book looks better-diversified than it is. The fix is mechanical: freeze both decision streams, rebuild every sleeve at one shared clock against the displayed order book, and only then let the portfolio numbers speak — with the incompleteness, cost surface, and fragility bands published next to them.
Two strategies that were built separately almost never share a clock. One marks daily P&L at its fill window because that is what its ledger recorded; the other marks at a late-session print because that is when its signal refits. Each choice was reasonable inside its own study. The moment you sum the two equity curves, the mismatch stops being a detail: you are correlating series sampled at different instants, and non-synchronous sampling biases measured correlation toward zero. The combined book inherits a diversification benefit that is partly an artifact of bookkeeping.
This is the quiet way multi-strategy books flatter themselves. Nobody tuned anything; nobody cherry-picked. The clocks did it.
The rule
Before any portfolio-level claim — combined return, combined Sharpe, combined drawdown, sleeve correlation — every sleeve gets rebuilt at one clock:
- One signal timestamp. Every sleeve’s decision variable is evaluated at the same instant of the session.
- One fill timestamp. Entries and exits execute at the same clock, for every sleeve, on every trade.
- One daily mark timestamp. A single end-of-session instant marks every open position, book-wide.
Crucially, the decisions are frozen first. The replay takes each sleeve’s already-committed trade ledger — entry dates, exit dates, weights, exit reasons — and re-prices that exact path at the common clock. Nothing refits. If a sleeve’s result changes materially under the common clock, that is the finding, not a bug to engineer away.
Replay against the book, not the bar
Bar closes are a summary of other people’s trades; they are not prices you could have dealt at. The replay crosses the displayed top of book: buys lift the displayed ask, sells hit the displayed bid, and daily marks use the quote midpoint at the mark instant. That one change folds the spread — the cost most bar-based backtests quietly skip — into every entry, exit, and mark.
Two disciplines make this honest rather than decorative:
- A quote-freshness gate that is allowed to fail. Every priced instant must be backed by a quote no older than a declared cap. If a strict cap can’t cover every required instant, that scenario reports no metrics — not metrics quietly backfilled from stale quotes. The first freshness family that achieves complete coverage becomes the evidence base, and the coverage table ships with the results so the reader can see what the stricter gates failed on.
- Costs as a surface, not a footnote. The replay runs a full grid of freshness cap × order latency × residual cost, so “the edge survives costs” becomes a visible surface with a cliff you can point at, rather than a single asterisked number.
Displayed size gives one more free diagnostic: the smallest displayed-depth leg on each entry bounds the capital the book could have deployed at the quoted price. It is optimistic — displayed depth is not guaranteed fill — and labeled as such, but even the optimistic bound is a useful ceiling.
Separate accounts, static split
The combination itself should be the least-tuned thing in the study: an initial equal split into separate capital accounts that compound independently. No daily rebalancing back to target, no transfer of idle capital from a flat sleeve to an active one — every such rule is a different backtest, and each variant you inspect is a degree of freedom you spent.
Fragility before belief
A short, selected sample can produce spectacular combined statistics. Before believing them, publish the diagnostics that attack them:
- a block bootstrap of the combined daily path (blocks preserve the autocorrelation a daily shuffle would destroy), reported as a band, not a point;
- an autocorrelation-robust confidence band on the mean daily return;
- concentration checks — the path without its best day and without its top five days, and the share of gains the top days carry.
All three are conditional on the selected sample and strategy set. They do not correct model-search or post-selection bias, and the write-up must say so. Their job is narrower: to stop a single lucky week from being mistaken for a property of the book.
Render the frozen thing
The last rule is presentational but load-bearing: the dashboard that shows the combined book renders the frozen replay artifacts verbatim. Headline numbers come from the committed report; the UI computes only deterministic transforms of frozen series — drawdown from equity, rolling lenses clearly labeled as descriptive. A missing input renders as an explicit gap, never as a fabricated zero. The same preregistration-and-hash rails that gate the research record gate the artifacts the dashboard reads, so what you see is what was frozen — at one clock, against the book, with its fragility on display.