Orderflow Atlas

Glossary

Market by Order (MBO)

Also called: MBO · Level 3 · L3 data · full order book

Market by order (MBO), or Level 3, shows every individual resting order with its own identifier and its place in the queue. Market by price aggregates size per level and hides that structure. The test is simple: is there an order ID per order? Without one, you have MBP.

What the identifier buys you

A depth of market ladder shows one number per price: the total resting size. That number is ambiguous. Four hundred lots at a price can be one participant with conviction or eighty small participants with none, and those two books behave in opposite ways when aggression arrives.

MBO resolves the ambiguity because each order carries an exchange-assigned identifier. You can watch a single order arrive, sit, get partially filled, be cancelled, or be replaced. Queue position becomes observable, and so does the difference between a level that is thick and a level that is defended.

The test that settles it

Most vendors market by price as "order flow", "order book", even "orders". The words are worthless. Ask one question: does the data structure expose an identifier per order? If the API returns a price, a size and a side but nothing that distinguishes two orders of the same size at the same price, it is MBP, whatever the brochure says.

There is a useful middle ground. Some feeds publish an order count per price level without the identifiers. That is not MBO, but dividing size by count gives an average order size per price — enough to tell a wall of small orders from a single large one, at a fraction of the cost.

Why it matters for icebergs

An iceberg order is inferred, never displayed. Under MBP you infer it from the aggregate refusing to shrink while trades print against it. Under MBO you can be more specific: the visible slice is consumed, and a new order appears at the same price with a fresh identifier, immediately, repeatedly. That is a signature rather than an impression.

It is still an inference. An exchange may or may not reassign an identifier on a refresh, and the rules differ by venue. Read the venue's specification before you build a detector on top of an assumption about it.

A worked example

In a synthetic book, the bid at 5 310.25 shows 412 lots. MBP gives you exactly that: 412. MBO decomposes it into twelve orders — 200, 100, 42, 25, 20, 8, 5, 5, 3, 2, 1, 1 — with the 200 at the front of the queue.

Aggression takes out the 200. One event later, a new 200-lot order appears at 5 310.25 with a different identifier, again at the back of a queue that has barely moved. Three cycles of this and the aggregate at that price has never dropped below 380, while 600 lots have traded through it. On the ladder the level simply looked stubborn.

The trap

Believing MBO shows you the book. It shows you the displayed, resting book. Hidden quantity, reserve quantity and anything routed elsewhere are not in it, so the size you can count is a lower bound on the size that will actually trade against you.

The second trap is cost-before-evidence. MBO is the most expensive tier in every stack, and the argument for it usually rests on a claim like "the book in retail-sized index futures is mostly one and two lot orders, so aggregate depth is meaningless". That claim circulates widely and has never been published with a sample, an instrument, a session or a method. It is measurable — an order count per level is enough to test it. Measure it on cheap data before you buy the expensive kind.

Frequently asked

What is the difference between MBO and MBP?
Market by price aggregates all resting size into one number per price level. Market by order lists each order separately with an exchange identifier and a queue position. Same book, different resolution: MBP tells you how much is there, MBO tells you how it is composed.
Is Level 2 the same as market by order?
No. Level 2 is normally market by price — aggregated depth over several levels. Market by order is usually called Level 3. The naming is inconsistent across vendors, which is why the identifier test is more reliable than the label.
Do you need MBO to read order flow?
No. Footprint charts, delta and the tape are all built from executions, not from the resting book, and they need no identifiers at all. MBO answers a narrower question about book composition and queue dynamics. Treat it as a specialised instrument, not a prerequisite.

Related terms