Late-buying saved the day for markets today as the benchmark Sensex overcame its early losses and advanced by a modest 60 points, helped by banking and blue-chips to log the best weekly gain since October.
Recovery in European markets in early trade too lifted mood.
The broader NSE Nifty topped the 7,200-level.
Investors were seen building their positions in anticipation of reforms announcement in the forthcoming Budget.
Both indices registered their best weekly gains since October last year, with the Sensex soaring 723.03 points, or 3.14 per cent, and Nifty 229.80 points, or 3.29 per cent.
Higher levels, however, could not be maintained as participants locked in gains. The gauge had gained 457.25 points in the previous two sessions.
The Sensex resumed the session lower at 23,640.32 and slipped further as renewed weakness in crude oil on oversupply worries hit sentiment.
But it staged a strong comeback on emergence of buying and covering-up of short positions by speculators before closing at 23,709.15, up 59.93 points, or 0.25 per cent.
The NSE Nifty crossed the 7,200-mark in a volatile trade. At the close, it was higher by 19 points, or 0.26 per cent, at 7,210.75.
Out of the 30-share Sensex pack, 18 ended higher.
The largest state-owned lender, SBI, rose 3.20 per cent to Rs 164.65 after the bank raised Rs 3,000 crore from bonds to fund business growth.
Other big gainers included Hero MotoCorp, Asian Paints, Bajaj Auto, NTPC, Bharti Airtel and M&M.
Among losers, Maruti Suzuki, BHEL, Coal India, Axis Bank, Dr Reddy’s Lab, HDFC Ltd, Sun Pharma, Adani Ports, Cipla, HDFC Bank and Hindustan Unilever fell by up to 2.02 per cent, which restricted the upside in the indices.
Sector-wise, the BSE auto index gained the most by surging 0.87 per cent, followed by technology 0.56 per cent, power 0.41 per cent, IT 0.40 per cent and banking 0.33 per cent.
While small-cap rose 0.16 per cent, mid-cap ended 0.12 per cent lower.
Foreign investors net bought shares worth Rs 418.64 crore yesterday, showed provisional data.
European stocks were higher in their early trade while Asia was mixed at the close.