India's GIFT Nifty was trading at 21,948 as of 8:15 a.m. IST, indicating the NSE Nifty 50 is likely to open above its last close of 21,778.70 and its all-time high of 21,801.45 hit on Thursday.

The Nifty and BSE Sensex have gained about 20% each this year, and are also on course for their best month of 2023 with 8% gains so far.

Both the blue-chip indexes are set to post their second-best year in six.

Meanwhile, small-caps and mid-caps have outperformed the benchmarks, gaining more than double that of Nifty and Sensex in 2023, despite valuation concerns.

All major sectors rose in 2023, with real estate, auto, pharma and state-owned banks advancing the most at between 33% and 81%.

The Nifty 50 has hit new record highs in 15 of 19 sessions in December so far.

"The market looks stretched on valuations," said Ashish Gupta, chief investment officer, and Shreyash Devalkar, head of equity at Axis Mutual Fund.

"Positive developments such as robust inflows from foreign and domestic investors, strong macroeconomic data and controlled inflation-targetting regime held Indian markets in good stead," added the two analysts.

Foreign portfolio investors bought Indian shares worth 1.65 trillion rupees ($19.85 billion) in 2023 so far, set for highest since 2020, while contributions into systematic investment plans, in which investors make regular payments into mutual funds, hit fresh record highs in eight months till November.

Wall Street equities closed higher overnight. Asian markets opened little changed. [MKTS/GLOB]

STOCKS TO WATCH:

** Tata Consumer Products: Scheme of arrangement between the company and Tata Coffee to be effective from Jan. 1, 2024.

** IndusInd Bank: Reserve Bank of India approves ICICI Prudential Asset Management and ICICI Prudential Life Insurance to buy up to 9.95% stake in the lender.

** Marine Electricals: Company wins order worth 318.5 million rupees from India's Ministry of Defence.

** Railtel Corporation of India: Company secures work order worth 1.20 billion rupees from South Central Railway.

($1 = 83.1310 Indian rupees)

(Reporting by Bharath Rajeswaran in Bengaluru; Editing by Varun H K)