Value buying along with positive global cues pushed India's key equity indices -- S&P BSE Sensex and NSE Nifty50 -- higher during the late-afternoon trade session on Monday.
However, both the indices had a gap down opening from their respective previous closes.
Globally, Asian shares were mixed on Monday on thin volumes at the outset of the last trading week of the year as countries grappled with the spread of the Omicron coronavirus variant.
On the domestic front, volumes on both indices continue to be below normal due to holiday thinned trade.
Among sectoral indices, Healthcare and Banks have risen the most, whereas Metals and Oil & Gas have fallen the most.
At 3.30 p.m., the S&P BSE Sensex ended 296 points higher at 57,389.87 points, or 0.46 per cent from its previous close.
Similarly, the broader 50-scrip Nifty at the National Stock Exchange (NSE) rose to 17,050 points from its previous close.
"Nifty erased morning losses and came into positive territory post noon on December 27," Deepak Jasani, Head of Retail Research, HDFC Securities.
According to Gaurav Garg, Head of Research, CapitalVia Global Research: "Indian benchmarks managed to trade in green despite a negative opening in the morning as the market rebounds from Omicron shock.
"Domestic sentiments impacted by positive cues from other Asian markets as Singapore's manufacturing data showed a double-digit growth in November month.
(With inputs from IANS)