Why a market order is rejected on an F&O contract with no trades
A market order is rejected on an F&O contract with no trades because the contract has had zero traded volume for the day, leaving no last-traded price for the exchange to fill against. Kite returns the message “The market order was rejected since there are no trades in this instrument. Try placing a LIMIT order,” which restates an NSE rule that market orders are not allowed on non-traded equity and F&O contracts.
The fix is a limit order priced aggressively, which executes like a market order while capping the price at which you can be filled. This article covers the exact message, the no-last-traded-price cause, the separate outright block on stock-option market orders for illiquidity, the index-option open-interest thresholds, the impact-cost danger that the rule exists to prevent, and how to construct a limit order that behaves like a market order without the freak-fill risk.
Conflict-of-interest disclosure. This guide is published by the WebNotes Editorial Team for informational purposes and is written independently. WebNotes operates a Zerodha account-opening referral programme, disclosed on the pages that carry the referral link; this guide does not carry it and earns no referral commission from the procedure described here.
What the message says
You place a market order on an F&O contract, usually a far out-of-the-money option strike or a far-month future, and the order is rejected before it reaches the exchange. The reason reads “The market order was rejected since there are no trades in this instrument. Try placing a LIMIT order.” The order does not appear in the exchange order book, because Zerodha’s pre-trade validation layer stops it, the same layer that handles other order rejections on Kite and never sends them on.
The trigger is precise: the contract has had no trade at all during the current session, so it carries no last-traded price (LTP). A market order is an instruction to fill at the best available price, and the matching engine needs a reference price and a resting counter-order to do that. With zero volume and no LTP, there is nothing to anchor the fill, so the exchange refuses the market order rather than execute it at an arbitrary price.
Why the block exists: no last-traded price and impact cost
The rule sits in NSE circulars for the equity, futures and options segments, which restrict market orders on contracts that have not traded during the day. The reason is impact cost. On an illiquid contract, the offers resting in the order book can sit far above the last price, and a market order sweeps through every one of them until it is filled.
Zerodha illustrates the danger with a worked case. A trader in a hurry sends a market order to buy 5 lots of a thin call option, expecting a maximum loss of Rs 12,500. Only 1 lot is offered at Rs 0.5, and the remaining 4 lots are offered at Rs 5. The market order fills 1 lot at Rs 0.5 and 4 lots at Rs 5, so instead of Rs 12,500 the trade blocks Rs 1,02,500. The trader loses close to Rs 1 lakh purely to the gap between the offers, not to any move in the underlying. The no-trades restriction, and the limit-order workaround, exist to stop exactly this.
Numbers and rules around the rejection
| Item | Detail | Source |
|---|---|---|
| Exact Kite message | “The market order was rejected since there are no trades in this instrument. Try placing a LIMIT order” | Zerodha support, Kite error messages |
| Cause | Zero traded volume for the day, no last-traded price | NSE segment circulars |
| Stock-option block | Market and SL-M orders blocked outright for illiquidity | Zerodha RMS policy |
| Nifty and Bank Nifty options | Market orders allowed on two weekly and two monthly contracts (current and near) | Zerodha RMS policy |
| FinNifty, MidCpNifty, Sensex options | Market orders allowed only above 20,000 quantity (500 lots) open interest | Zerodha RMS policy |
| Worked impact-cost case | Rs 12,500 intended, Rs 1,02,500 filled | Zerodha support example |
These thresholds are set by NSE rules and Zerodha’s risk-management policy, not by the order window, so they hold across the F&O segment, not only on a single contract.
The separate stock-option block
The no-trades rejection is volume-based and applies to any non-traded contract. A second, broader restriction applies to stock options regardless of whether they have traded: market and stop-loss-market (SL-M) orders are blocked outright on stock options for illiquidity, with the message “Market orders for stock options are blocked due to illiquidity. Try placing a Limit order.” Stock options as a class carry thin order books and wide spreads, so Zerodha removes the market-order option entirely for them rather than rely on a per-day volume check.
Index options are treated by liquidity tier. Market orders are allowed on the most-traded index contracts only: two weekly and two monthly contracts, current and near, for Nifty 50 and Bank Nifty options. For FinNifty , MidCpNifty and Sensex options, market orders are allowed only when the contract’s open interest exceeds 20,000 quantities, the equivalent of 500 lots. Below that the market order is rejected and a limit order is required, the same liquidity logic that drives the MIS block on FINNIFTY on certain expiry days.
The fix: a limit order that behaves like a market order
The workaround is a limit order priced past the current best quote, so it fills immediately but with a price cap. To buy, set the limit price well above the last-traded price; to sell, set it well below. The matching engine fills your order against every resting offer up to your limit, exactly as a market order would up to the impact cost, but it stops at your limit and never fills beyond it. The limit price you enter is the protection: in the Rs 1,02,500 case above, a limit of Rs 0.6 would have filled the single lot at Rs 0.5 and left the rest unfilled, capping the spend at the intended level rather than letting it run to Rs 5.
Check the market depth before you set the limit. Look at the resting offers (for a buy) or bids (for a sell) and set your limit at or just past the level you are willing to accept across the quantity you want. This converts the speed of a market order into a filled-or-capped limit order, which is the entire point of the NSE restriction and Zerodha’s advice to “place a LIMIT order.”
What this is not
This rejection is distinct from the other ways an F&O order fails, and the right fix differs for each. It is not a price-band rejection , which concerns a limit price outside the day’s circuit limits . It is not the limit-price-protection (LPP) rejection, where a limit price falls outside the dynamic band the exchange keeps around the live price to stop freak trades; that one rejects a limit order, while the no-trades message rejects a market order. It is not an RMS rejection for margin. And it is not a freeze-quantity cap on order size. The no-trades message is specifically about a market order on a contract with zero volume, and the cure is always a sensibly priced limit order.
See also
- Zerodha
- Kite by Zerodha
- Zerodha Console
- Market order on Kite
- Limit order on Kite
- SL-M order on Kite
- Trigger price versus limit price
- Order validity types
- Disclosed-quantity orders
- Iceberg order on Kite
- Why orders get rejected on Kite
- How to fix an RMS rejection on Zerodha
- How to fix a price-band rejection on Zerodha
- How to fix a theoretical-price rejection on Zerodha
- How to handle a freeze-quantity rejection on F&O
- Why MIS is blocked for FINNIFTY
- Open interest
- F&O trading
- F&O trading risks
- FINNIFTY futures on Zerodha
- Nifty 50
- Bank Nifty
- Circuit limits and price bands
- National Stock Exchange
- Bombay Stock Exchange
- Multi Commodity Exchange
- The stop-loss trigger price is not within the exchange permissible range
External references
- Zerodha support: The market order was rejected since there are no trades in this instrument
- Zerodha support: Market orders for stock options blocked due to illiquidity
- Zerodha support: Why can’t market orders be placed for certain index and stock option contracts
- Zerodha support: Why is the rejected order not displayed in the order book
- NSE India: circulars and downloads
References
- Zerodha support, “The market order was rejected since there are no trades in this instrument. Try placing a LIMIT order” (as of 21 June 2026).
- NSE circulars for the equity, futures and options segments restricting market orders on non-traded contracts (referenced on the Zerodha support page).
- Zerodha support, market orders for stock options blocked due to illiquidity, and the index-option open-interest thresholds of 20,000 quantities for FinNifty, MidCpNifty and Sensex (as of 21 June 2026).
- Zerodha support, impact-cost worked example, Rs 12,500 intended trade filling at Rs 1,02,500 on an illiquid call (as of 21 June 2026).