I have written the details and snapshots to Zerodha, and requested them to investigate and then take it up with MCX. I am not asking compensation, but have asked them to take this up so as to retain Trader's Confidence.
This is a well known situation. Trader puts SL at x but SL is hit before chart reaches x. Data table shows x plus or minus 1 or 2. This situation has also been discussed several times. See Zerodha thread for one such discussion (don't remember link).
As per my understanding of explanation given by Zerodha: For example if 10,000 trades take place in a given second, exchange does not transmit to brokers/vendors all 10,000 trades that happened. Less than 10,000 trades are transmitted, say 8 thousand (again for example). The 2 thousand trades not transmitted can contain trades at any price, usually within 1 or 2 points of high/low for that second/minute. This is a fundamental limitation of exchange, not of any Data table/Chart of any broker or datafeed vendor.
Can exchange transmit ALL data? Can brokers/data vendors forward ALL ticks to trading terminal/chart? Can retail traders like us handle ALL ticks (bandwidth and software problems etc)? Any one knows ??
A first step is for exchange to provide updated intraday 1min OHLC at eod.
A second step is to update intraday 1min OHLC at every 5min interval.
Eventually updated OHLC every 10 seconds or so.
Until then we should expect occasional SL hits within 1 or 2 points of data shown in chart/table. Options get hit like this the most as they are the most volatile.
My knowledge is very limited, someone more knowledgeable is welcome to point out mistakes and give more info.