Rising for the second day, the rupee on Thursday ended another 13 paise higher at 61.46 against the dollar after banks and exporters sold the US currency as it weakened overseas.
Sustained foreign capital inflows also boosted the rupee, a forex dealer said.
The rupee resumed higher at 61.57 per dollar against the previous close of 61.59 and dropped immediately to 61.70 on initial dollar demand from banks and importers.
After moving in a range of 61.35 to 61.70, it ended at 61.46 a dollar, a gain of 13 paise or 0.21 per cent. The local currency is at the highest level since closing at 61.27 on October 18.
"Foreign institutional investors are seen showing interest in the Indian markets. Globally, the US dollar was seen continuing with its weakness amid concerns that the ongoing pace of QE (quantitative easing) will remain in place in the current year," said Abhishek Goenka, CEO of India Forex Advisors.
Foreign institutional investors bought a net Rs 644.80 crore (Rs 6.44 billion) of shares on Wednesday, according to preliminary data from the stock exchanges.
Pressure on the currency also eased after RBI on Wednesday said it has received $10.1 billion under two schemes announced last month to attract foreign funds.
In New York, the US dollar was flat or slightly higher yesterday against most major rivals, excluding the yen, as concerns about China's banks triggered safe-haven buying, analysts said.
In London, the dollar struggled near a nine-month low versus a basket of currencies on Wednesday after soft US jobs data dimmed chances of a cut in US monetary stimulus before next year.
The Indian benchmark Sensex crossed the 21K mark after 35 months in intra-day trading and ended 42 points lower at 20,725.43.