The Sensex ended 2% or 622 points higher at 30,818 and the NSE index too closed with gains of 2.1% or 187 points at 9,066 levels. About 1,074 shares have advanced, 655 shares declined, and 388 shares are unchanged.
Dr Reddy's Labs and HDFC surged 6%, M&M, GAIL and BPCL were among major gainers on the Nifty, while losers were Bharti Infratel, IndusInd Bank, Hero MotoCorp, Vedanta and Bharti Airtel.
All the sectoral indices ended higher, with Nifty Pharma jumped over 4% followed by the auto, energy, Financial and Bank Nifty.
The rupee ended 14 paise lower at 75.80 against the US dollar as headwinds due to US-China trade tiff and worries over the second wave of coronavirus infection weighed on investor sentiment.