Oil and gold are both commodities. They are not stocks, and do not behave like stocks. Their price is affected largely by futures contracts, just as with wheat or corn or coffee.
If users in March think oil will be higher in July, it will be higher in July, because they will have paid higher prices in March for July delivery, and they won't sell it at a loss when the time comes.
This is what happened in 2008 when the price of oil plunged but the cost of gasoline stayed up.
But when a lot of speculative money floods into the commodities market, weird and wild things happen. Some of the recent spike in grains was from spec money looking for a deal. Many of the futures contracts were being bought by groups that can not accept delivery. When that money left, the prices went down some.
From what I have seen and heard, some of the same investors went to energy (not just oil). When they see that the time is right, that money will go and the prices will drop some.