the crucible
the simulation that
takes your money first.
A backtest that fills you at the mid, instantly, in full, is not a simulation of trading — it is a simulation of being the only participant. The Crucible charges you a queue, a delay, a spread and an impact before it will credit you with a single basis point. Everything below is live: drag it and watch what happens to an edge you thought you had.
inputs
what the signal is worth before friction
decision to acknowledgement, round trip
your order as a share of the day's volume
quoted, and you cross it
the venue's actual tier
drives both impact and adverse selection
how many times you pay all of the above
presets
net edge per trade
+4.9bps
73% of the gross edge is consumed before the position is even open.
where it goes
fill rate
86.6%
of resting size, at the touch
annual, net
+68.1%
1,400 trades a year
capacity
$3,864,673
where impact eats the edge
the year that results
+34.2%how the fills are decided
three numbers, none of them optional.
Queue position. A resting order is behind everything already at its price. The Crucible tracks how much size sits ahead of you and how much of it trades before the price moves away, which is why the fill rate falls as the spread widens rather than staying pinned at 100%.
Impact, square-root. Cost scales with the square root of participation, not linearly. Doubling your size does not double the damage — but it does mean the edge and the impact curve cross at a specific notional, and past that point more capital makes you less money. That crossing is the capacity number.
Latency as adverse selection. Over a delay of t you are, on average, filled into the move you were trying to catch. The cost grows with √t, which is why 40 ms is survivable and 300 ms usually is not, and why the same strategy can be profitable on one desk and worthless on another.
engine