The 30-share BSE Sensex rose 141 points or 0.18% to settle at 77,479. The broader NSE Nifty gained 51 points or 0.22% to end at 23,567.
From the Sensex pack, JSW Steel, Tata Steel, ICICI Bank, Reliance Industries, and Kotak Mahindra Bank were the top gainers, rising over 1% each. On the other hand, Sun Pharma, M&M, NTPC, SBI, and Wipro were the top laggards.
Nifty Pharma index dropped 0.5%, dragged by heavyweight Sun Pharma, which closed 2.2% lower after its Dadra facility received a warning letter from the US drug regulator. Sun Pharma was the top Sensex loser.
The private bank index rose 1.16%, after Macquarie said it preferred them, given stable asset quality outlook and attractive valuations.
Nifty Metal index gained 1.8%, after top consumer China reiterated it will stick to a supportive monetary stance, boosting sentiment.
Nifty Realty index also closed 2% higher, led by Prestige, Lodha, and Oberoi Realty.
Among individual stocks, Uno Minda closed 2.3% higher after the global brokerage firm Goldman Sachs increased its target price to Rs 1,350 as it maintained a buy call on the stock.
Meanwhile, the market capitalisation of all listed companies on BSE surged by Rs 1.86 lakh crore to Rs 435.81 lakh crore. The market breadth was skewed in the favour of the bulls. About 2,285 stocks gained, 1,568 declined, and 128 remained unchanged on the BSE.