Gold futures rose to the highest level in four weeks as a decline in the U.S. dollar and rising oil prices boosted the metal's appeal as an investment hedge. Silver gained more than 4 percent.

Gold for June delivery climbed as high as $923 an ounce on the Comex division on the New York Mercantile Exchange, a level not reached since April 22. The contract closed up $14.40, or 1.6 percent at $920.20. June gold climbed as high as $924.10 an ounce in electronic trading.

Crude-oil futures surged to a record $129.60 a barrel and have doubled in the past year after billionaire hedge-fund manager Boone Pickens said prices will reach $150 a barrel this year as demand outpaces supply. Goldman Sachs Group Inc. and Deutsche Bank AG have also raised forecasts in the past month.

A government report today showed U.S. producer prices, excluding food and fuel, rose more than forecast in April. As a result, the cost of food last month surged the most in 18 years.

The dollar declined as much as 1.1 percent against the euro on speculation the European Central Bank will keep interest rates high. The ECB has kept rates at 4 percent since June 2007.

Weakness in the U.S. dollar typically benefits dollar-denominated commodities, such as gold and crude oil, because it makes them cheaper for holders of other currencies.

Also on the Nymex, July silver gained 70 cents to close at $17.73 an ounce. The price has advanced 19 percent this year, while gold climbed 9.8 percent.

July copper futures closed flat at $3.78 a pound. July platinum fell $10.40 to finish at $2,147.80 an ounce and June palladium shed $1.10 to end at $450.25 an ounce.