The BSE Sensex edged 0.14 percent higher after a choppy trading session on Monday, as hopes of stability in Greece improved global risk appetite and offset weak corporate earnings at home.
The main 30-share BSE index closed 24.15 points up at 17,772.84, with almost two-thirds of its components gaining.
Choppiness is a sign of nervousness. This is a thumb rule. We are at a level which is difficult to sustain at a fundamental basis, said Arun Kejriwal, an analyst at research firm KRIS.
We have some reason to celebrate on account of Greece coming to some sort of compromise, we have some reasons to celebrate that results are not as bad as expected. So we are just about holding, he said.
The Greek parliament's approval of austerity measures to secure a much-needed bailout lifted the euro and European shares, although with further steps needed before the shadow of a debt default can be lifted, gains may be limited.
Foreign funds have pumped in about $4 billion into Indian shares this year, in sharp contrast to net outflows of about $500 million in 2011, data from the market regulator showed.
A very strong liquidity momentum is going on... If liquidity is the order of the day, then fundamentals tend to take a back seat, said Jagannadham Thunuguntla, head of research at SMC Global Securities in New Delhi.
Top lender State Bank of India (SBI) recovered some of its losses to end 2.2 percent lower, weighing on the benchmark the most. The bank beat market expectations with a 15 percent rise in third-quarter net profit as interest income rose. However, net non-performing assets rose.
ICICI Bank (ICBK.NS), the biggest private sector lender ended almost flat, while smaller rival HDFC Bank (HDBK.NS) added 0.86 percent.
Shares in Wipro Ltd (WIPR.NS), India's No. 3 export-driven software services firm, slumped 2.9 percent to become the biggest percentage losers on the main index after Goldman Sachs downgraded it to sell from neutral. The bank said the company may continue to lag its large-cap peers in terms of revenues and earnings per share.
Energy conglomerate Reliance Industries (RELI.NS), India's biggest listed firm and which contributes more than a tenth to the benchmark, rose 0.71 percent to 849.25 rupees. On Sunday, the company said it signed a pact with France's Dassault Aviation (AVMD.PA) for partnering in the Indian defence and homeland security sector.
DLF Ltd (DLF.NS), the country's largest listed developer, ended 0.24 percent lower, after dropping as much as 5.4 percent, as its quarterly profit fell 45 percent and the company warned of rising costs in upcoming quarters.
Reliance Communications (RLCM.NS) ended down 0.05 percent after the country's No.2 mobile operator reported its 10th straight quarter of declining profit as interest costs soared.
Bigger rival Bharti Airtel (BRTI.NS) fell 0.64 percent, while Idea (IDEA.NS) dropped 1.4 percent.
Shares of Tata Power Ltd (TTPW.NS) ended 2.53 percent lower after the company posted a 40 percent fall in its consolidated third-quarter net profit.
The 50-share NSE index closed 0.16 percent up at 5,390.20. In the broader market, there were about equal number of losers for every gainer, with 751.9 million shares changing hands.
At 1012 GMT, the FTSEurofirst 300 index of top European shares was up 0.66 percent. World stocks, as measured by the MSCI world equity index, rose 0.48 percent.
STOCKS THAT MOVED
* Suzlon Energy Ltd (SUZL.NS) fell 7.6 percent after the wind turbine maker on Saturday posted a wider December-quarter loss of 2.86 billion rupees.
* Diary and bakery products maker Britannia Industries (BRIT.NS) rose almost 5 percent after its December-quarter net profit climbed 45 percent.
* Television broadcaster Sun TV (SUTV.NS) slumped 6.3 percent after its December quarter net profit fell 25 percent.