At the interbank foreign exchange market, the rupee opened at 69.40 a dollar and advanced to a high of 69.07 during the day.
Extending its gains for second session, Sensex settled 157.14 points, or 0.40 per cent, higher at 39,592.08.
Gold is trading at Rs 34,170 per 10 gram in the national capital Wednesday due to tepid demand from local jewellers.
On MCX, crude oil for delivery in July contracts was trading higher by Rs 64, to Rs 4,100 per barrel.
Local gold prices hit a record 35,960 rupees per 10 grams on Tuesday, having jumped more than 10 per cent over the past month.
Oil prices have been squeezing higher on escalating tensions in the Middle East.
Rupee is trading at 69.48 against dollar, amid simmering geopolitical tensions in the Middle East and higher crude oil prices.
The broader NSE Nifty was quoting 32.60 points, or 0.28 per cent, up at 11,829.05.
After trading in the red for a better part of the day, Sensex pared losses and settled 311.98 points up.
Gold is trading at Rs 34,470 per 10 gm in the national capital Tuesday on increase in demand from local jewellers.