After rising 284 points in early session, the 30-share Sensex was trading 244.04 points or 0.60 per cent higher at 40,825.75.
After rallying over 300 points, the 30-share BSE Sensex ended 169.14 points, or 0.42 per cent, higher at 40,581.71.
The 30-share Sensex was trading 149.75 points or 0.37 per cent higher at 40,562.32 in morning trade.
After swinging nearly 330 points, the Sensex finished 172.69 points or 0.43 per cent higher at 40,412.57.
The appreciating rupee and mixed leads from other Asian markets too influenced sentiment, traders said.
BSE Sensex closed 247.55 points or 0.61 per cent lower at 40,239.88.
The 30-share index was trading 33.67 points or 0.08 per cent lower at 40,453.76 in morning trade.
The 30-share BSE Sensex stabilised in afternoon trade and settled with gains of 42.28 points or 0.10 per cent at 40,487.43.
The US Federal Reserve interest rate decision on Thursday will be a major event that would be keenly tracked by markets globally.
The BSE Sensex settled at 40,445.15, down 334.44 points or 0.82 per cent.