Gold futures gained in New York on Wednesday following weakness in the U.S. dollar and oil prices reached a new record, boosting the appeal of the precious metal as a hedge against inflation.

Gold for August delivery rose $2 to close at $946.50 an ounce on the Comex division on the New York Mercantile Exchange, marking its highest closing level since mid-April. The contract rose $16.20 an ounce on Tuesday.

The precious metal has climbed 13 percent this year, reaching an all-time high of $1,033.90 an ounce in March as the dollar weakened and oil soared.

Crude oil for August delivery rose $2.77, or 2 percent, to $143.74 a barrel at the 2:30 p.m. close of floor trading on the New York Mercantile Exchange. Oil hit $143.91 a barrel today, the highest since futures started trading in 1983, and has more than doubled in the past year.

With safe-haven buying as well as inflation hedging likely to draw further demand toward the gold market, the metal looks set to make further upside progress, wrote James Moore, an analyst at TheBullionDesk.com, in a research note.

Another stab at the $947 to $950 zone could be in the cards, barring a selling bout in oil, or the opposite in the dollar, said Jon Nadler, senior analyst at Kitco Bullion Dealers.

The dollar index , which measures the U.S. currency against a basket of six major currencies, was last at 72.097 compared with 72.374 late Tuesday.

Also on the Nymex, silver for September delivery contract rose 13.5 cents to close at $18.425 an ounce and September copper added 15.3 cents to finish at $4.0635 a pound.

July platinum dropped $11.70 to end at $2,074.50 an ounce and September palladium fell $2.05 to end at $470 an ounce.