The 30-share BSE index was trading 279.13 points or 0.69 per cent lower at 40,428.18, and the broader NSE Nifty fell 80.05 points or 0.67 per cent to 11,857.60.
The 30-share BSE index opened on a weak note and gyrated over 600 points during the day. However, it gained ground in the last hour of the session to finish at 40,794.74, up 169.23 points or 0.42 per cent.