The Bombay Stock Exchange pared initial gains to close 34 points higher today in mixed trade, as volatile markets overseas prompted investors to play it safe.
The Sensex, which had gained 213 points in the previous session, rose further by 33.62 points to 18,114.83, a level last seen on July 22.
Similarly, the broad-based National Stock Exchange index Nifty rose by 7.90 points to 5,439.55, after touching a high of 5,459.20.
The Sensex touched an intra-day high of 18,167.45 points during the session. However, the gains were capped by mixed sentiment in the Asian region and a lower opening in Europe.
In the 30-BSE index components, 14 stocks gained while 16 ended with losses. Shares in banking, oil and gas, healthcare and metal sector remained bullish.
The banking sector gained the most, with the sectoral index rising 0.95 per cent to 11,929.16, as ICICI Bank -- the second-biggest lender -- gained 2.38 per cent to Rs 962.10, its highest close in more than three months.
The stock had yesterday surged by 3.8 per cent after Credit Suisse Group AG raised its rating for the shares to "outperform" after quarterly profit increased 17 per cent.
The oil and gas sector index was the second best performer, gaining 0.67 per cent to 10,333.93, after Reliance Industries spurted by Rs 11.65 to Rs 1,026.20.
The healthcare index rose by 0.37 per cent to 5,625.05 after Dr Reddy's Lab rose by Rs 17.85 to Rs 1,369.10 and Lupin Lab by Rs 13.50 to Rs 1,916.35.
With buying activity spilling over a broad front, the small cap index rose by 0.33 per cent to 9,466.70 and the mid cap index by 0.31 per cent to 7,516.38.