Why does my market order get changed to a limit order while trading certain scrips?

In the case of Rishiroop today, when a buy market order was placed, there were zero sellers at that point in time. When this is the case, the market order converts into a limit order with limit price = last traded price.
The reason it converts is because of this: The upper circuit limit for Rishiroop was 95.85 today. Imagine you placed a market order after seeing that the LTP was 79.70. Now if your market order remained open in the system even though there was no seller and then a new seller comes and places a sell limit order at 95, your buy market order should execute at 95. To avoid this danger, it converts to a limit order.

Also, when a stock hits upper circuit limit, there will be only buyers and no sellers. So if you place a buy market order in a stock which has already hit upper circuit, this market order will also convert to a limit order with limit price = upper circuit price.

2 Likes