One Order Can Execute Across Multiple Prices
Up to this point, executions involved either:
- a single price level, or
- multiple executions at the same price.
However, the book can contain multiple resting orders at different prices
This lesson examines the case where asks are already recorded in the book and a buy order arrives afterward
A single incoming buy order may execute across multiple ask price levels.
A buyer is always interested in the lowest available ask price that satisfies their limit. Within the asks ledger, the best price is the lowest price currently recorded.
Execution therefore begins with the lowest ask price and proceeds to higher ask prices until the buy order is filled or no further matching prices remain.
Stage 1. Multiple Asks Arrive at Different Prices
Event: Four sellers submit asks at different prices.
The orders are recorded in the asks ledger.
The asks differ by both price and arrival time.
No trade occurs yet because all ask prices are higher than the single bid price.
Stage 2. A Large Buy Order Arrives
Event: At a buyer submits an order to buy 14 apples @ $17 per apple.
The order is recorded in the bids ledger.
The buy price $17 overlaps with multiple asks. Execution can proceed.
IMPORTANT! Execution includes only asks that will be reached under price-priority execution. By the end of this lesson, it will be evident why the quantity offered at $17 does not contribute to the execution.
Stage 3. Execution Proceeds by Price, Then Time
Execution proceeds in several steps according to the following rules:
- Orders at better prices execute before orders at worse prices.
- When prices are equal, earlier orders execute before later ones.
Execution 1
3 apples are exchanged at $14 The $14 is the lowest ask price in the book.
- A - ask order @ $14 removed.
- B - bid order’s @ $17 amount reduced from 14 to 11
- C - trade tape latest record is 3 apples @ $14 recorded at
Execution 2
After the $14 ask is removed, $15 becomes the lowest remaining ask price
- D - 5 apples are taken from the ask at $15
- E - $17 bid order’s amount reduced from 11 to 6
- F - trade tape latest record is 5 apples @ $15 recorded at
Execution 3
The $16 ask is the last remaining price that satisfies the buyer's $17 limit. The book is updated accordingly:
- G - ask order for 6 apples at @ $16 removed.
- H - bid order for 6 apples at @ $17 removed.
- I - trade tape latest record is 6 apples @ $16 written at
After the execution at $16 the buy order submitted at has no remaining quantity, and the ask at $17 is never matched.
Execution Summary
After execution:
- the asks at $14 $15 and $16 are fully removed after their quantities were fully executed in successive executions against the buy order
- J - the ask at $17 remains open,
- the buy order @ $17 is fully removed.
Although a single incoming buy order triggered the execution cascade, it resulted in multiple subsequent entries on the trade tape. Each execution is a separate event and leaves its own permanent record - C F and I
The latest reported price is $16
A Crucial Clarification
Although the buyer submitted a limit of $17 no execution occurred at $17 in this example, so $17 is never recorded in the trade tape.
Prices are reported only when a trade is executed.
A single order can trigger multiple executions, but each execution is recorded independently on the trade tape.
Each execution is recorded at the price written in the specific order that is consumed in that execution step.
A buy order’s limit defines the highest price at which execution is permitted.
A sell order’s limit defines the lowest price at which execution is permitted.
Limits constrain execution; they do not determine the prices that are recorded.