Mumbai: The Indian rupee on Wednesday closed at a near three-week high against US dollar ahead of key gross domestic product (GDP) data and the Reserve Bank of India’s (RBI) bi-monthly policy meeting.

The home currency ended at 67.44 against the US dollar—a level last seen on 11 May, up 0.65% from its previous close of 67.87. The currency opened at 67.78 a dollar and touched a high of 67.42.

The 10-year bond yield ended at 7.745% from its Tuesday’s close of 7.756%. Bond yields and prices move in opposite directions.

Traders are awaiting GDP data due to be released after 5.30pm on Thursday and RBI’s bi-monthly policy meeting from 4-6 June.

GDP expanded 7.3% in the first three months of 2018, the 24-29 May poll of 55 economists predicted, a touch faster than the 7.2% achieved in the last three months of 2017 and well above China’s pace of 6.8% for the quarter ending in March, Reuters reported.

So far this year, the rupee has weakened 5.2%, while foreign investors have sold $83.10 million and $4.40 billion in equity and debt markets, respectively.

Benchmark Sensex Index fell 0.12% or 43.13 points to 34,906.11. Since January, it has gained 2.6%.

Asian currencies weakened, while the yen rose on haven demand, as a political crisis in Italy that’s spurred speculation the country could leave the euro reverberated across markets.

South Korean won was down 0.44%, Malaysian ringgit 0.31%, Indonesian rupiah 0.24%, Thai Baht 0.2%, Taiwan dollar 0.19%, Thai baht 0.19%, China renminbi 0.14%. However, Japanese yen was up 0.11%.

The dollar index, which measures the US currency’s strength against major currencies, was trading at 94.939, up 0.13% from its previous close of 94.82.

Bloomberg contributed this story