Quantitative Finance Stack Exchange is a question and answer site for finance professionals and academics. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If a large sell order hits many bids from the book, is the order filled at once? Or is it filled one bid at a time with a chance for any new orders to come in between each trade?

share|improve this question
up vote 5 down vote accepted

Most exchanges will cross a large order with numerous smaller orders so long as the large order sufficiently crosses the book to cause a fill. This is obviously dependent on specific instructions on the large order causing the cross as well as the orders on the other side of the book.

As for the second part a new order coming in should only cross with the large order if it offers price improvement over other orders in the book as they will have time priority. A single large order will sweep the other side of the book to fill and this typically happens in a single atomic step although I don't believe that there is any requirement to do so.

This is all exchange dependent. Check out Trading and Exchanges or Algorithmic Trading and DMA as both these books cover crossing mechanics in considerable detail.

share|improve this answer
thank you for the references. They are kinda steep for me via amazon, though. I guess the question is (in a typical exchange), is it even possible for a new order to come in, while the sweep of the bid book is in progress? On a very slow exchange, or very fast algorithms, it could happen? – Bobbi Bennett Jun 21 '11 at 1:25
Updated my answer. Typically it sweeps the book on exchanges although I don't believe that there is any requirement that they do so. – Steve Jun 21 '11 at 20:53

It depends if the large incoming sell order is a market order or a limit order.

If it is a market order, it will immediately "sweep" through as many levels of the bid book as neccessary to get the required volume. There is no chance for someone to add more bids to execute against the market order.

A limit order will execute against all the bid volume that it can without selling below the limit price. Then the remaining volume will go resting in the book, at which point there is a chance for new buyers to come in and execute against it.

share|improve this answer

Here is a good mental model. The exchange's matching engine processes incoming orders one at a time: all effects of an order on the book are settled before any further incoming orders for the same instrument are looked at.

So, when a marketable order comes in, it is matched against resting orders "atomically", producing one or more fills. If this completely fills the incoming order, that's it. If some part of the order could not be matched, the remainder is either placed on the book or cancelled (or in some cases routed to a different exchange). Any subsequent incoming orders wait their turn until all of this is done.

With many modern matching engines all of this happens very quickly: for example, BATS claim an average order matching latency of 200 microseconds. I understand this even includes a network roundtrip.

share|improve this answer
plus one for the critical word 'atomically'. – Bobbi Bennett Jun 27 '11 at 1:49

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.