If a bitcoin exchange offers Market Orders, let's suppose there are X buy orders at market price, and Y sell orders at market price (no limit orders):

How are these matched and at what price, since there is no "lowest or highest" price currently on the order book?

  • Then, all trades would be executed at the last trade price. Price remains the same irrespective of trade volume.
    – vi.su.
    Commented Apr 25, 2013 at 3:06
  • @vi.su, I've never seen that documented to occur that way and would argue that is not correct according to the definition of a Market order. Commented Apr 25, 2013 at 5:23
  • Is this a Bitcoin question? Commented Apr 25, 2013 at 5:49
  • @StephenGornick, I am not sure. but, per your answer, there would be no trades; yet there are buyers and sellers who are willing to trade at current market price.
    – vi.su.
    Commented Apr 25, 2013 at 7:51

3 Answers 3


Market buy order means buy for whatever is current lowest ask. Market sell order means sell for the current highest bid. Market orders should be executed as long as there is any buyer and seller, but may not be filed for the desired quantity. In the case that there are no limit orders on either side, market maker would establish a spread for profit. In fact, market makers profit from market orders and existing limit orders spread also in ordinary circumstances.

  • 2
    Factual crap. You can not have 2 market orders active at the same time - a market order is executed against whatever is in the book on the other side. THEN then ext order is put in. 2 market orders would NOT define a spread as a spread requires fixed prices. Fail on the basics how exchanges work.
    – TomTom
    Commented Apr 6, 2015 at 16:00

This situation would not exist. True market orders (buy or sell) cannot just "hang" around. If they are not executed immediately against existing limit orders, then they should be cancelled. The case in which they would not be executed would be if there are no orders on the other side. In which case it depends on how the system handles the orders but it should either say it can't fill it and never place the order to begin with.

  • 1
    That pretty much is it. A good exchange processes order requests in sequence. A market order is seen, processed, then ends either filled or in an error condition. A limit order gets entered into the queue. As such, it is not possible to only have market orders. THAT SAID - you may as well have no market order at all. CME does that (not bitcoin, a real exchange). A market order is transformed, internally, into a limit order with the limit on the other side. That stops brutally runaway pricing.
    – TomTom
    Commented Apr 6, 2015 at 16:02

Contractually, the market BUY order had no SELL (ASKs) to trade against. So that order remains unfilled.

At the same time the market SELL order had no BUY (BIDs) to trade against. So that order also remains open.

And they remain open until either cancelled or until a limit order arrives.

  • Uh? No, this doesn't make sense: if they are market orders, and there isn't anything in the order book, they should just be rejected. Market orders shouldn't fallback to limit orders, as this answer seems to imply. AFAIK.
    – o0'.
    Commented Apr 25, 2013 at 9:44
  • Actually they do on real exchanges. CME has no market order - a market order is internally seen as a limit order with quote some limit. This allows a market maker to pick up the "remaining".
    – TomTom
    Commented Apr 6, 2015 at 16:03

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