The Sensex and Nifty managed to close in the green for the eight straight session, outperforming their global peers amid flow of positive economic data that revived overall investor sentiment. While the Sensex recovered about 406 points from its intra day lows and closed 112 points or 0.33% higher at 34,305 level, the Nifty rose 0.46% higher at 10,528 level.
The indexes entered positive territory nearly 2.5 hours before the market closing after US air strikes on Syria appeared to be having scant impact on trading, and oil prices fell back.
Hero MotoCorp (2.02%), Kotak Mahindra Bank (1.88%) and Adani Ports (1.85%) were the top gainers on Sensex.
According to government data, inflation based on wholesale prices eased marginally to 2.47 per cent in March on cheaper food articles, especially pulses and vegetables.
Wholesale inflation was 2.48 per cent in February and 5.11 per cent in March last year.
Besides, reflecting further improvement in the economic situation, industrial production grew by a healthy 7.1 per cent in February while the key retail inflation slipped to a five-month low of 4.28 per cent in March, official data showed on Thursday.
Tata Motors which closed 4.96% lower at 339 level was the top Sensex loser on reports that Britain's biggest carmaker Jaguar Land Rover will cut around 1,000 jobs and production at two of its English factories due to fall in sales caused by uncertainty around Brexit and confusion over diesel policy.
Infosys followed Tata Motors and lost over 3.10% at 1,132 level after the firm cut its margin guidance for FY19, and disclosed plan to sell Panaya and Skava during its Q4 earnings announcement on Friday.
The 30-share barometer, which cracked the 34,000-mark at the outset, hit a low of 33,899.34 on profit-booking in recent gainers amid sustained outflows by foreign funds.
However, towards the middle of the session, revival of buying, spread over a broad front, helped wiping out initial losses and touched the day's high of 34,341.46 before settling higher by 112.78 points, or 0.33 per cent, at 34,305.43.
The index had risen 1,173.88 points in the past seven sessions.
The 50-share NSE Nifty too moved in a wide range on hectic selling and buying and finally closed 47.75 points, or 0.46 per cent, higher at 10,528.35. Intra-day, it hovered between 10,396.35 and 10,540.15.
Market breadth was negative with 1,253 stocks closing higher against 1416 stocks ending lower on BSE.
Global shares were mixed in Asia on Monday, with Chinese benchmarks leading declines in Asia. The air strikes on Syria appeared to be having scant impact on trading, and oil prices fell back. Eyes were on Chinese GDP data due on Tuesday. The FTSE 100 in Britain dropped 0.4 percent to 7,236.05 while Germany's DAX added 0.2 percent to 12,464.26. The CAC 40 in France was flat at 5,316.11. The future for the S&P 500 climbed 0.6 percent while the future for the Dow Jones industrial average was also up 0.6 percent, pointing to early gains on Wall Street.