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

If Market Price Protection (MPP) is on for your order, Rupeezy sends it to the exchange as a Limit order at a protected price band around the LTP, instead of a plain market order — that's why it behaves like a limit order.

Why does MPP send a Limit order instead of a Market order?

A market order alone has no price ceiling — in a fast-moving or thin market, it can fill far from the price you saw on screen (slippage). MPP protects you from that by calculating a price range around the LTP and sending your order to the exchange as a Limit order at that protected price. The exchange still fills you at the best available price first; it just won't fill you outside your protected range. Any quantity that can't be filled within that range stays open as a pending Limit order instead of chasing a worse price. See Market Price Protection (MPP) for the full protection-range table.

Are there other reasons this can happen?

Yes — if you placed the order during the pre-open session, it gets matched at the equilibrium price the exchange discovers, the same way a limit order would. See Why does my market order in the pre-open session change to a limit order?.

Things to keep in mind

  • This isn't a bug — both MPP and the pre-open mechanism are designed to protect you from an unpredictable fill price.
  • You can turn MPP off on the order screen if you'd rather take a plain market order without a protected price band.