Gold declined on Wednesday as investors took profits from a six-week high, but the metal remained supported by good physical buying and firm oil prices.

Traders said fresh money from investment funds appeared to be flowing back into metals due to an improved technical picture following strong rallies in the past week, but the metal would struggle to move substantially higher in the near term.

Sentiment is probably more positive than it was earlier but investors are still uncertain about direction. Prices have more upside potential but I don't think there would be a rally past $690-$695 in the near term without an additional catalyst, said Suki Cooper, analyst at Barclays Capital.

Physical demand looks quite strong. It certainly has cushioned prices but I don't think it will drive prices substantially higher, she said.

After solid gains this week, gold fell to $679.25/679.85 an ounce by 5:57 a.m. EDT from a peak of $683.40 in New York on Tuesday, its highest level since July 24.

Traders noted that the Bank of Spain said it sold no gold in August after selling 24.8 tonnes in July.

Gold is inching slowly higher within its range ($639.10-$694.60) which has dominated the market for the past five months. This maintains a fairly neutral to positive trading environment, said Karen Jones, technical analyst at Commerzbank.

The market has repeatedly failed this year at the $688/$694 zone and does not appear ready to tackle this tough resistance.

Investors await key U.S. economic data. Non-farm payrolls are due on Friday, while Wednesday features weekly mortgage market figures, the ADP private sector employment numbers and the Federal Reserve's Beige Book report on economic conditions.

The data may support expectations that the U.S. central bank will cut its fed funds rate to 5.0 percent from 5.25 percent.

A rate cut often tends to weaken the dollar, making gold cheaper for holders of other currencies and lifting bullion demand. Gold is also seen as a hedge against oil-led inflation.

The dollar was slightly higher against the euro. Oil held above $75 a barrel, within sight of an all-time high, as investors balanced tightening U.S. crude stocks against OPEC's reluctance to boost supplies when it meets next week.

Crude oil prices might remain a supportive factor as the rally yesterday was based on concern the inventories declined further and warnings that the hurricane season would be far from over, Dresdner Kleinwort said in a daily research note.

In other metals, silver fell to $12.22/12.26 an ounce from $12.30/12.33. Platinum rose to its highest in nearly a month at $1,277 an ounce before falling to $1,273/1,277, versus $1,271.50/1,278.50 in New York. Palladium was at $331/334 an ounce, down 80 cents.

Palladium is slowly regaining its footing after a recent sell-off as Chinese jewellers ramp up production ahead of next year's Olympic and investors buy the metal on price dips.

Palladium has bounced around 6 percent since tumbling to a nine-month low of $313 an ounce in late August as fears of a global liquidity crisis sparked a sell off in financial markets and spilled into commodities.

(Additional reporting by Chikafumi Hodo in Tokyo and Lewa Pardomuan in Singapore)