Equity benchmark Sensex rallied over 1,400 points in opening session on Wednesday as Prime Minister Narendra Modi's Rs 20 lakh crore stimulus package to revive the coronavirus-hit economy boosted domestic investor sentiment.
After touching a high of 32,845.48, the 30-share index pared some early gains to trade 818.68 points or 2.61 per cent higher at 32,189.80.
Similarly, NSE Nifty soared 213.50 points, or 2.32 per cent, to 9,410.05.
ICICI Bank was the top gainer in the Sensex pack, surging around 7 per cent, followed by L&T, Axis Bank, Bajaj Finance, Hero MotoCorp, M&M, UltraTech Cement and Maruti.
On the other hand, Nestle India, Bharti Airtel, Sun Pharma and Reliance Industries were trading in the red.
In the previous session, the BSE barometer settled 190.10 points or 0.60 per cent lower at 31,371.12, and broader Nifty declined 42.65 points, or 0.46 per cent, to 9,196.55.
Foreign portfolio investors offloaded equities worth Rs 1,662.03 crore in the capital market on Tuesday, provisional exchange data showed.
According to analysts, domestic investors cheered the government's massive stimulus package to revive the pandemic-stricken economy.
The Prime Minister on Tuesday announced massive new financial incentives on top of the previously announced packages for a combined stimulus of Rs 20 lakh crore.
He said the package will be around 10 per cent of the GDP and "will play an important role in the 'Atmanirbhar Bharat Abhiyan' (self-reliant India campaign).
The special economic package will have emphasis on land, labour, liquidity and laws, and will be for "our labourers, farmers, honest tax payers, MSMEs and cottage industry", Modi said.
Meanwhile, bourses in Shanghai, Hong Kong, Tokyo and Seoul were trading with losses as fears of a second wave of coronavirus infections gripped global markets.
On Wall Street, stock exchanges settled on a negative note.
International oil benchmark Brent crude futures were trading 1.53 per cent lower at $29.52 per barrel.
In India, the death toll due to COVID-19 rose to 2,415 and the number of cases climbed to 74,281, according to the health ministry.
Globally, the number of cases linked to the disease has crossed 42.61 lakh and the death toll has topped 2.91 lakh.