Method
Walk the book from the mid, take the fill you would actually get, add the taker fee. Where the displayed book runs out before the position does, the number is a floor and is shown with a >.
The mid, not the best bid. Crossing the spread is money the seller actually pays, so charging it to the exit is the honest accounting.
Consume the bid side level by level until the stated notional is filled. The average fill price against the mid is the impact.
A flat 10 bp taker fee is added. It is the published schedule, not a measurement, and it is the only typed number on this site.
If the displayed book runs out first, the answer is a lower bound, marked, never rounded up into a figure that looks exact.
Read at build time from the live book, for a spread of names thick and thin, with a crypto pair alongside for scale.
| Symbol | Type | Exit cost | Book, USDT | Source |
|---|---|---|---|---|
| RNVDAUSDT | stock | 11 bp | 67,734 | orderbook |
| RTSLAUSDT | stock | >10 bp | 3,037 | orderbook |
| RAAPLUSDT | stock | 11 bp | 51,153 | orderbook |
| RSYKUSDT | stock | >11 bp | 1,230 | orderbook |
| RPBRUSDT | stock | >12 bp | 13,964 | orderbook |
| BTCUSDT | crypto | 11 bp | 9,758,740 | orderbook |
Every figure here is estimated, never observed. A displayed quote is not a fill: size can be withdrawn, and a real order moves the book it is measured against. The reference is the mid rather than the best bid, because crossing the spread is money the seller actually pays. Where a symbol returns no depth but a live quote, the cost is computed from the top of book alone and everything below it is unknown, not absent.
Splitting an exit into parts helps only if the book refills between them, and how fast it refills cannot be read off a single snapshot. So the desk returns a best case, which assumes full replenishment, and a worst case, which assumes none. The truth is somewhere inside, and the bound is stated rather than a midpoint invented.