Bank stocks, including ICICI Bank and HDFC Bank, were winners, while State Bank of India got a boost after raising its lending and retail term deposit rates.
The 30-share index opened higher at 20,354.73 from the previous close of 19,962.16 and climbed to as much as 20,580.57. The Sensex was at 20,562.99 at 1304 hours, up 600.83 points or 3.01 per cent from yesterday.
The NSE 50-share barometer Nifty rose by 193.85 points, or 3.29 per cent, to 6,093.30.
The major gainers included SBI (8.02 pc), ICICI Bank (6.84 pc), Tata Steel (6.08 pc), Maruti Suzuki 5.8 pc) and ONGC (5.63 pc).
Also Read
The rupee surged past the 62 level against the dollar and was quoted at 61.96 per dollar at 1050 hours, compared with yesterday's close of 63.38.
Asian stocks were higher in early trade, with benchmark indices in Hong Kong, Indonesia, Japan and Singapore rising by 1.54 to 4.5 per cent.
The stock markets in mainland China, Taiwan and South Korea were closed for a holiday.