The blue-chip NSE Nifty 50 index added 1.81% to close at 15,175.30, while the benchmark S&P BSE Sensex gained 1.97% to end at 50,540.80. For the week, both the indexes rose more than 3%.
The Nifty Bank Index jumped 3.82% after a more than 1% drop on Thursday, helped by a 4.3% rise in SBI after the country's largest lender by assets reported a record quarterly profit.
The blue-chip Nifty 50 index closed 0.83% lower at 14,906.05 and the S&P BSE Sensex ended 0.68% lower at 49,564.86 after trading flat for most of the day. Most major sub-indexes closed in the red.
Financial stocks, which had cushioned losses earlier in the day, gave up gains. Index heavyweight ICICI Bank fell 1.1% and HDFC Bank settled 1.6% lower.
The blue-chip NSE Nifty 50 index closed down 0.52% at 15,030.15, while the benchmark S&P BSE Sensex settled 0.58% lower at 49,902.64.
ICICI Bank and HDFC Bank closed 1.22% and 1.25% lower, respectively. Both stocks were top boosts to the Nifty on Monday and Tuesday, and are still up about 5% for the week.
India's total coronavirus cases surged past the 25 million mark on Tuesday. Daily cases rose by 263,533, remaining below the 300,000 mark for a second day, a level last seen on April 21, while deaths increased by a record 4,329.
The NSE Nifty 50 index settled 1.67% higher at 14,923.15, snapping a three-session losing streak, while the benchmark S&P BSE Sensex ended up 1.74% at 49,580.73.
The Nifty Auto index added 1.9%, led by a 10.43% rise in Balkrishna Industries after the tyre maker posted a rise in quarterly profit on Friday.
The NSE Nifty 50 index fell 1.04% to 14,696.50, while the S&P BSE Sensex slid 0.96% to 48,690.80.
Adding to investor concerns, India reported a record surge in coronavirus deaths in the past 24 hours, pushing its overall death toll over a quarter million.
The NSE Nifty 50 index closed 0.73% higher at 14,724.8 and the S&P BSE Sensex rose 0.56% to 48,949.76, their highest close since April 29, after struggling to make headway earlier in the session.
India reported more than 400,000 coronavirus infections over the last 24 hours, taking the total tally past 21 million, while deaths rose by a record 3,980, health ministry data showed.
The NSE Nifty 50 index dropped 0.94% to 14,496.5, while the benchmark S&P BSE Sensex closed 0.95% lower at 48,253.51, after swinging in choppy trading for most of the session.
The surge of the highly infectious Indian virus variant has swamped the health system, forced states to enter lockdowns and ignited calls for a lockdown at the national level.
The NSE Nifty 50 index closed 0.2% higher at 14,894.9, while the benchmark S&P BSE Sensex gained 0.06% to 49,765.94. Both indexes rose more than 1% each earlier in the session.
Steelmakers Tata Steel Ltd and JSW Steel Ltd were among the biggest gainers on the Nifty 50 on Thursday, surging 6.2% and 9.6%, respectively, to record highs.
The NSE Nifty 50 index fell 0.45% to 14,341.35, while the S&P BSE Sensex slid 0.42% to 47,878.45.
The indexes lost 1.89% and 1.95% for the week, respectively, as the imposition of restrictions in major cities threatened to derail a nascent economic recovery.
The NSE Nifty 50 index rose 0.77% to 14,406.15 at close, while the S&P BSE Sensex gained 0.79% to end at 48,080.67.
US pharmaceutical giant Pfizer Inc on Thursday said it was in talks with the Indian government for supply of its vaccines, adding it would set a not-for-profit price for them.
The NSE Nifty 50 index was down 1.77% at 14,359.45 and the S&P BSE Sensex fell 1.81% to 47,949.42.
Private banks also suffered as they dropped 2.6%, with top private-sector lender HDFC Bank losing 1.1%, as investors sold off positions fearing that the resurgence in COVID-19 cases would hurt banks' asset quality.
The NSE Nifty 50 index ended 0.5% higher at 14,581.45, while the S&P BSE Sensex gained 0.5% to 48,803.68.
The move came as fresh coronavirus cases in the country hit a record of more than 200,000, prompting the national capital of Delhi to announce movement restrictions for weekends.