According to the depositories data, foreign investors pulled out a net sum of Rs 1,668.8 crore from equities.
Investor sentiments strengthened after the Reserve Bank of India signalled to continue with accommodative stance.
The BSE Sensex settled at 40,445.15, down 334.44 points or 0.82 per cent.
Gold is trading at Rs 38,895 per 10 gram in the national capital, according to HDFC Securities.
The fall in crude oil futures was mostly due to trimming of positions by traders, in line with weak global cues, analysts said.
The BSE gauge Sensex moved 103.13 points higher to trade at 40,882.72 in opening deals.
Domestic unit was trading in a narrow range as investors are awaiting fresh cues on the US-China trade front.
The group has been withholding 1.2 million bpd and the increased amount represents about 1.7 per cent of global oil output.
At the closing bell, the 30-share BSE Sensex was lower by 70.70 points or 0.17 per cent at 40,779.59.
BSE Sensex was trading 100.56 points, lower at 40,749.73 at 1149 hours.