The 30-share Sensex, which had lost 512.38 points in the previous two sessions, edged up 32.12 points, or 0.10 per cent, to close at 33,250.93 after trading between 33,463.80 and 33,111.54.
During the day, the benchmark swung almost 350 points (both sides).
The 50-share NSE Nifty ended flat, up 5.80 points, or 0.06 per cent, at 10,308.95. Intra-day, it touched a high of 10,368.45 and a low of 10,266.95.
"Renewed buying in consumer durables restricted further fall in the market on expectations of reducing taxes for products coming under 28 per cent GST tax bracket. Albeit, investors are watchful ahead of key domestic macros CPI inflation and IIP data and global oil price fluctuation to get the direction," said Vinod Nair, Head of Research, Geojit Financial Services.
Bharti Airtel was the topper surging 2.39 per cent to Rs 507, followed by Asian Paints (2.08 per cent) at Rs 1,195.25.
Tata Motors ended up 0.36 per cent at Rs 440.30 after the company on Thursday reported a three-fold jump in consolidated profit for the quarter to September.
Asian markets were indecisive and European shares turned lower.
ICICI Bank, Tata Steel, Reliance Industries, Hindustan Unilever, SBI, NTPC, Dr Reddy's, Adani Ports, Bajaj Auto, Wipro, Infosys and TCS posted moderate to modest gains.
However, ITC, Coal India, ONGC, Lupin, HDFC, Cipla, Axis Bank, Hero MotoCorp and Kotak Bank remained under pressure, down up to 2 per cent.
While consumer durables advanced the most by 3.23 per cent, followed by power, banking, metal and capital goods, healthcare, auto and FMCG ended in the red.
Broader markets put up somewhat a better show, with BSE mid-cap and small-cap indices jumping up to 0.98 per cent.
(Except for the headline, this story has not been edited by NDTV staff and is published from a syndicated feed.)
Get the latest election news, live updates and election schedule for Lok Sabha Elections 2019 on ndtv.com/elections. Like us on Facebook or follow us on Twitter and Instagram for updates from each of the 543 parliamentary seats for the 2019 Indian general elections.