Banknifty ATM strike order anomaly 17070 error

@eaglem, thanks for correcting me. Looks like your points are more correct.
Yes, the exchange shouldnt do anything but order-matching and executing.

The above steps from me 1 and 2 could be happening at the broker end.

If these ‘other’ interfaces @ zerodha/their RMS is kicking-in and doing all these order management, can anyone from zerodha @siva @nithin explain/point me to the steps through which order flows and what are major stages? where and why we get the various order status as we see it in our terminals?

COMPLETE, OPEN, TRIGGER PENDING is self -explanatory,
what about OPEN-PENDING, VALIDATION PENDING, XX ORDER REQUEST RECEIEVD, CANCELLED, REJECTED and various rject reasons?

are there any such details available? if not can Karthik Rangappa add it to varsity?

1 Like

This support article might be helpful…

Also, do check out the topics under the category “Order Rejections”. These might also address some of your queries.

@Pratist Thanks! much appreciated for the inputs.

1 Like

I apologize @economiconed :pray:

I think I confused you with the wording of my reply. Rather than saying this problem likely happened at the exchange’s end, I should have instead said that this was an issue with the execution range not updating (that is what I think caused the trading to stop during the periods when zero volume is being shown in the charts, but I could be wrong). My main intention behind sharing the charts was to point out that this happened with every broker.


@Siva I was curious about something. I was going through a Consolidated circular (NSE/FAOP/44482) and in it, it was mentioned -

1.6 Trade Execution

Exchange has taken several order and risk management measures including limits and controls. To
further strengthen orderly trading, the exchange has put in place the following mechanism

  1. Orders shall be matched and trades shall take place only if the trade price is within the trade execution range based on the reference price of the contract.
  2. Reference price for each contract shall be computed as follows:
    :black_small_square: At market open it shall be the theoretical price based on the underlying price (Using implied volatility in case of options contracts and rate of interest which shall be revised daily with the applicable MIBOR rate) or base price of the contract in case underlying price is not available at the time of computation.
    :black_small_square: During trading hours it shall be the simple average of trade prices of that contract in the last 1 minute For contracts that have traded in the last 1 minute, the reference price shall be revised throughout the day on a rolling basis at 1 minute intervals
    :black_small_square: For all other contracts the reference price shall be the theoretical price based on the latest available underlying price and shall be revised throughout the day at regular intervals. (30 minutes)


  1. The Exchange may modify the execution range as and when necessary.

4.3 Market Data Broadcast

The Exchange provides market data (price and volume related) to its trading members in the form of Market by Price (MBP) and Market by Order (MBO) for Auction market. Some related data is also provided in the form of Trade Ticker, Open Interest (OI), Open High Low (OHL), Auction Inquiry broadcast, Master Updates, Market Open/Close Status message broadcast, Trade Execution Range (TER) etc. Market data broadcast is refreshed either at fixed time interval or are event driven. The Exchange also provides tick by tick order and trade information.

If we take the example of the 32400 PE strike shared above, as it was trading below Rs.50 initially, then its reference price would have been below Rs.50 and hence its execution range would have been Rs.20 on both sides of the reference price. (as per the table shared in that circular)

Segment Reference Price (Rs.) % of Reference Price Minimum absolute Range (Rs.)
Futures All 5% -
Options 0.05 to 50 - 20.00
Options >50 40% -

When the Bank Nifty index fell rapidly, the price of that strike increased, likely breaching the Rs.20 execution range limit and causing all orders priced more than Rs.20 away from the previous reference price to be rejected until the exchange updated the reference price with a new value.

Here, I wanted to ask -

  • As the exchange is suppose to update the reference price every minute (for the contracts that have been traded in the last 1 minute) as well as the exchange having the ability to modify the execution range whenever necessary, why did the exchange choose not to update the execution range/reference price for this contract?

  • Did the Trade Execution Range (TER) data coming in the Market data broadcast stop updating for this contract? During this time, were the old execution ranges for this contract still valid or did the exchange somehow freeze/stop trading in this contract once the underlying index moved swiftly?

  • Did the exchange want to wait for the volatility to subside before sending the new execution range for this contract or were their systems unable to calculate the new execution range as the underlying index became very volatile?

  • As more than 1 minute passed without any active trading in this contract, the exchange could have sent a theoretically calculated reference price based on the latest available underlying index value (as mentioned in the above circular). Did the exchange choose not to send that?

  • Suppose the underlying index/stock for a contract becomes extremely volatile and continues to remain so for very long period. Can the exchange hold off updating the execution range/reference price for as long as they desire or is there a time limit (like 30 minutes, etc) after which the exchange has to update the execution range/reference price for a contract?

  • Or is my whole assumption wrong and the exchange continued to update the execution range/reference price for this contract, but nobody was able to execute their orders in that range due to other reasons?

2 Likes

@Prayag a very very thanks for contributing & sharing a very useful information with us.
points you have raised are very important, may senior member by zerodha can clear it.
as per my view,
exchanges aren’t clean, nse has got exposed in co-location.
in past, i have a faced some issue in trading with mcx.
so in many such cases only broker can’t be blamed alone.
someone also demand clarification from exchange on this execution range updation.