Regulatory update: Pausing Market orders via APIs

Hi folks! :waving_hand:

Based on the latest regulations from NSE/BSE/MCX with regards to Algo-trading, market orders are not allowed.

From 1st October, 2025, all market orders from Upstox will not be processed.
The Exit all positions will also be paused.

We understand that converting market orders to limit at LTP orders with MPP is a solution to this, but this adds considerable latency. Hence, this is not being enabled at the moment.

Best,
Mohit
Team Upstox

Honestly, I’m quite disappointed with this update. My application logic is built entirely around market orders since they guarantee execution without me worrying about price levels. With this change, a large part of my workflow breaks.

Replacing market with ā€œlimit at LTPā€ introduces uncertainty of my order being filled and something that my setup isn’t designed for. Execution certainty is critical for me, and I’m concerned about partial fills or missed trades if the price shoots from the LTP.

I’d love to hear from other developers here who are already using limit orders in their algos:

  • How do you set your buffers to ensure the order always goes through?
  • How do you balance between execution certainty and avoiding bad fills?

Any best practices would help, because right now, I don’t see a clean replacement for simple market orders.

— A concerned dev

Hi @Raghav_35590666

I understand your POV, but discontinuation of market orders is a regulatory requirement by the exchanges and SEBI.

We are NOT replacing the market with ā€œlimit at LTPā€ for the same reason as you said and the added latency.

For Options trading, you can put 1%-2% MPP in your limit price from LTP, It will execute entire order bro.

is it for the exit also? As of now my exit is handled by a websocket on market orders directly.

Hi @MohitGolecha

There is a suggestion for exit all api, instead of pausing API, you can update your API to place limit order with MPP. So that millions of users don’t have to change their software. Otherwise many users will face financial losses if they are not aware of this change.

I understand this is a regulatory mandate, but wanted to check if Upstox can explore any optional workaround for users who prefer it — and can still choose it.

Also, is there any scope for Upstox (individually or through industry associations) to appeal or represent this concern to the exchanges/SEBI? Algo traders in particular rely heavily on market orders, and this change has a big impact on existing workflows.

One follow-up question: will the sandbox environment also start rejecting market orders, or will it continue to allow them for simulation purposes? This is important since I rely on sandbox flows to test algos, and any change there would require updates to those simulations as well.

@Raghav_35590666 Yes, the sandbox environment mimics the production environment. Therefore, all validations applicable in production also apply in sandbox.

1 Like

@MohitGolecha
This is the most Dumb thing exchanges have done, what will happen to auto square of functionality in all brokers just curious, There is high chance our orders will not execute. it will change market, what is the need of this regulation, where we can read more about this, I could not find anything in the internet.

@athma_prathisti

Market orders are disabled only for API and AlgoProviders not for brokers, their system will run as it is. From their platform users can execute Market orders. Market orders are disabled only for APIs.

1 Like

@Jagdish_j_ptl
Thanks, any reference you have where we can read more about this. Brokers will also use API only, just that they are allowed, I am just curious why they wanted to do this.

I didn’t found any reference for this.

Am I missing something? The documentation still shows market orders and when I tested my app, market orders were getting executed. Is this reverted back now?