The Indian rupee ended marginally weaker on Wednesday as dollar demand from local importers and oil companies pulled the currency off its two-week high that came on the back of inflows into equity and debt markets.

The rupee closed at 83.4550 against the U.S. dollar, slightly lower from its close at 83.41 in the previous session. The currency rose to a peak of 83.3450 during the session, its highest since June 5.

Asian currencies were mostly weaker, with the Phillipine peso down 0.2% and leading losses, while the dollar index was little changed at 105.2 after declining 0.2% on Tuesday.

The dollar and U.S. bond yields declined after softer-than-expected U.S. retail sales data boosted odds of rate cuts by the Federal Reserve later this year.

Interest rate futures are currently pricing in nearly two 25-basis point rate reductions this year, most likely starting in September.

The rupee gained in early trading, aided by likely inflows into local debt and equities but its gains were hurdled by importer and oil companies' dollar demand, a foreign exchange trader at a mid-sized private bank said.

Benchmark Indian equity indices, the BSE Sensex and Nifty 50, touched record highs and ended the session up by 0.05% and down 0.2%, respectively.

"The rupee is likely to hold in the 83-83.55 band in the next few trading sessions" with the Reserve Bank of India firmly capping sharp declines below 83.55, said Anil Kumar Bhansali, head of treasury at Finrex Treasury Advisors.

Investors will now keep an eye on U.S. jobless claims data due on Thursday, which will be followed by a closely watched U.S. personal consumption expenditure inflation print next week. (Reporting by Jaspreet Kalra; Editing by Sohini Goswami)