Mean reversion on the Binance hack broke its loss limit at 20:37 UTC
Shaded: what the backtest hid · BNB perp on Binance · 15-second bars, UTC
What to fix
Start with the first. Safety limits enforce all of them.
The data behind this run
Four Aperiodic datasets turn the backtest into the real market.
- l2_liquidityOrder book depthCatalog
32 fills paid 3.7 bps on average and 11 bps at worst; 17 ran past the 25th level. Depth fell to 21% of its past hour at 21:08 UTC.
Each order walks the dollars resting in the top 5, 10, 20 and 25 levels on its side of the book. It also sets the largest-order and thin-book limits. bid_agg / ask_agg, 5 to 25 levels
- l1_liquiditySpread and top of bookCatalog
The spread was 0.18 bps on a typical bar and 3.0 bps at its widest, at 20:42 UTC.
Feeds the Cost and Depth indices
Where the walk starts: half the spread from the mid. The thin-book limit watches the spread too. spread_bps
- derivative_priceMark priceCatalog
Margin was checked on the mark every bar; the agent was not liquidated.
Margin and liquidation are checked on the mark, as the exchange does, not on the last trade, minute by minute. mark_price, index_price
- fundingFunding rateCatalog
Paid $2 in funding on the open position.
Paid or earned on the open position at the recorded rate, accrued bar by bar over the funding interval. funding_rate
Also read: ohlcv, the candlesticks. The backtest fills every order at the close, and the preset strategies trade on it.
About 4 min a tile: how far the book thinned against its past hour, when the agent traded, and when it broke a limit
Now test your own agent
Paste the orders it sent, free on every recorded event, or let Claude Code or Cursor write them from preflight.md.