Say the current price of a stock is 99.9, and investor A places a buy order with a limit of 101, and investor B places a sell order with a limit of 99 (why would they use limits instead of markets in this case? see here).

What price will the stock sell at? Supposedly, any price between 99 and 101 satisfies the exchange. One could argue in favor of a 99.9 price (current price), or for 100 (the average).

From what I can tell, the price will actually be 99 (the minimum). Is this indeed the case? What's the rationale behind it?

  • 7
    It should be noted that there is no "current price", there is only the last price at which a buy/sell transaction was made (plus the currently highest bid and lowest offer).
    – TripeHound
    Commented Jul 5, 2019 at 7:04

4 Answers 4


As stated by others, $99.90 is the last price not the current price.

Your question assumes that there are no existing orders on the order book for this stock. That is never the case with major US stock exchanges.

As I wrote in my answer in your link, when competing for a better fill on your order, the only way to "bypass others in the queue" (price improvement) is to offer a higher bid (buying) or a lower ask (selling) than others on the order book. You cannot get in front of someone at a given price who is already on the order book.

We have National Best Bid and Offer (NBBO) in the US. This SEC regulation requires that broker buys at the best available ask (lowest) price and sells at the best available bid (highest) price when trading for customers. If you place a market order to buy at a higher price than the best ask price, you will buy at the ask price. If the size of your order exceeds the current ask volume, you will buy all of those shares and if no one comes in to sell additional shares at that ask price, the next lowest ask price in the book now becomes the best ask price (higher than the shares you just bought). If your buy price meets or exceeds the new ask price, you will buy more shares and the process continues until either your order is filled or there are no more shares available to meet your price (partial fill). Selling involves the same procedure but involves the bid and is in the opposite direction.

Now suppose that during regular hours the market is tight at $100 and during after hours the quote is $98 x $102 and you come in to buy at $101 or sell at $99. Any market participant can accept your price and sell to you at $101 or buy from you at $99. More than likely, it will be the market maker or a trader using a hidden order that contains instructions to buy up to a certain price (above $98) or sell down to a certain price (below $102).

  • you can get in front of someone at the same price in the order book by going to a different exchange or using a non-price-time-priority exchange that matches orders based on size. The order also doesn't have to go to an exchange at all and could be internalized by the broker before it gets there.
    – xirt
    Commented Jul 6, 2019 at 20:01
  • If dealing with NBBO, you can't get in front of someone unless you offer a better price. Commented Jul 7, 2019 at 13:37
  • No. You just have to match the price at the NBBO and arrange to have the order come to you first via PFOF. That’s why most retail brokers aren’t exchange members - they get paid too much to route their order flow to whoever wants it before it gets to the exchange. On a price time priority exchange yes. But that doesn’t mean you can’t post at the same price on EDGA or play some PFOF shenanigans.
    – xirt
    Commented Jul 7, 2019 at 14:36

It depends on the order the orders are placed.

If A asks first, B accepts this order (and is willing to go down to 99, but if there is an ask at 101, why should it go to 99?).

If B bids first, A accepts this (and is willing to go up to 101, but again, there is no need to).


Say the current price of a stock is 99.9

Lets assume here that there is an offer for the stock posted on the book at $99.90.

investor A places a buy order with a limit of 101, and investor B places a sell order with a limit of 99

This is potentially creating what is called a 'crossed market' (where the bid exceeds the offer and vice versa).

How this is handled depends on the time and to which exchange the orders are transmitted.

Now, assuming there is already an offer on the book at 99 (the "current price" the OP suggested), the process works like this:

What price will the stock sell at?

If the order is being transmitted to the exchange where the 99.0 offer is posted, the order will immediately interact with that posted price, trading at 99 until the either the quantity on the book is removed or the quantity of the order is removed.

If the order were a very large order, then it would continue to trade against the next price level up (e.g. 100.99, 100.98.. and so on).

If the situation were reversed, and a 101 bid had been posted, and someone wanted to sell at 99, they will get filled at 101 first, until that quantity had been removed, working down to 99. Effectively the limit order is being treated like a market order, with the exception that it only applies if the price is within the limit order's specified range.

However, the order protection rules applies which prevents exchanges from posting bids that match offers posted on other exchanges ("locking the market") or posting bids that exceed the price on other markets ("crossing the market").

If the order was sent to an exchange that wasn't the one holding the 99 offer, then that exchange will either 'hide' the order (so it is not displayed on the NBBO), route the order to the exchange at the NBBO, or reject the order. These behaviors can usually be controlled on the order level. Alternatively the exchange could just ignore the rule and go out and lock the market... but suffer the consequences if its behavior is being reviewed by the regulator at the time.

In general, most exchanges pass on the burden of handling the locked and crossed markets onto its members, particularly its market makers. They are then fined if they engage in a "pattern or practice" of locking or crossing markets. Some exchanges make this process easier by automatically exhibiting the behaviors described above unless the broker overrides them (and takes responsibility).

Note: the order protection rules apply only during normal trading hours, not in the after-hours or pre-open markets.


As @TripeHound pointed out, there is no such thing as "current price". The stock market is based on the "willing buyer willing seller" rules. Based on the rule, the seller placing an order(99) that will grab up by the buyer with the price of 99.

In fact, during trading, there is a latency issue involve during trading. When a country market show High-frequency trading(HFT) , it is possible to Hack and profit from a HFT system.

A third party with a low latency connection to the stock exchange can indeed detect the price different and intercept the trade to make a margin from there.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .