The BSE Sensex gains 0.56 per cent, while the broader Nifty gains 0.58 percent, heading for a second consecutive session of gains after hitting a nearly 1-1/2 month closing low on Wednesday.
Recent underperformers attracted investor attention. Tata Power Ltd, which fell 3.05 percent in the last three sessions, gained 1.97 percent on value buying.
Bharti Airtel gained 0.81 percent. The stock is down 8.78 percent since it posted disappointing earnings on April 29.
However, caution largely prevails ahead of the general election results due next week and investors were trimming portfolios and encashing positions, traders said.
Overseas investors sold index futures worth 3 billion rupees ($50.00 million) on Thursday, continuing their selling spree to a seventh out of eight sessions. However, they bought shares worth 3.63 billion rupees in the cash segment, provisional exchange data shows.
Asian shares mostly slumped on Friday as a tense situation in Ukraine made investors cautious, though a tame inflation report from China calmed some nerves.
BSE Sensex up 38 points on selective buying by investors
Extending yesterday's gains, the benchmark BSE Sensex rose over 38 points in early trade today on selective buying by investors amid a mixed trend on other Asian bourses.
The 30-share index, which had gained 20.14 points in yesterday's volatile session, rose further by 38.72 points, or 0.17 per cent, to 22,382.76 with stocks of power, banking, IT, realty, metals and FMCG sectors moving up.
The National Stock Exchange index Nifty also moved up by 6.40 points, or 0.10 per cent, to 6,666.25.
Brokers said buying was selective as participants preferred to adopt a cautious approach ahead of the results of the Lok Sabha elections.
A mixed trend at other Asian markets influenced the trading sentiment here, they added.
In Asia, Hong Kong's Hang Seng index fell by 0.37 per cent, while Japan's Nikkei gained 0.59 per cent in early trade.
The US Dow Jones Industrial Average ended 0.20 per cent higher in yesterday's trade.