Zerodha logo

Why did my market order get executed as a limit order?

Your market order gets executed as a limit order because exchanges enable Market Price Protection (MPP) for all BSE instruments and some illiquid NSE stocks. The exchanges introduced MPP to protect you from orders executing at prices significantly different from the Last Traded Price (LTP) due to wide bid-ask spreads.

How market price protection works

When you place a market order for an illiquid stock on NSE, the exchange will either:

  • Convert your order to a limit order, or
  • Cancel your order

The exchange determines this based on specific criteria mentioned in the circular.

When you place a market order on BSE, the exchange converts it to a limit order with 3% market protection from the LTP. Your order will execute at the next best available bid or offer within this 3% range.

Example scenario

If you place a buy market order for DENABANK-BSE with an LTP of ₹12:

  • The exchange converts your market order to a limit order
  • Your order gets 3% market protection (₹12 + 3% = ₹12.36)
  • Your order will execute at the next best offer within ₹12.36

This protection ensures you don't pay significantly more than the current market price due to temporary price gaps or low liquidity.

Still need help?

Create a ticket

Open tickets

We see that you have the following ticket(s) open:

If you have the same query, check and update the existing ticket here. In case of a new query, click on Continue.

Continue