Gold prices gained momentum on Wednesday as the dollar dipped on speculation the U.S. central bank would cut interest rates this year amid concerns about waning global economic growth.
Spot gold was trading 0.5% higher at $1,332.80 per ounce, a rebound from the previous session when it fell to a 10-day low of $1,319.35.
U.S. gold futures settled $5.60 higher at $1,336.80.
"Today, global equities are weaker, there is some safe-haven buying, and buying ahead of the U.S. Fed meeting next week," said Bob Haberkorn, senior market strategist at RJO Futures.
"If the Fed cuts rates in June, youre going to see some substantial gains here in the precious metals market ... People are trying to get ahead of that and add some gold to their portfolio."
Global equities snapped a seven-day winning streak after U.S. President Donald Trump said he had no interest in moving ahead with a trade deal with China unless Beijing agreed to four or five "major points."
Adding to concerns, U.S. consumer prices barely rose in May, likely increasing pressure on the Fed to cut interest rates this year.
Fed policymakers will meet on June 18-19. Markets have priced in at least two U.S. rate cuts by the end of 2019. Futures imply around an 80% chance of a rate cut as early as July.
Lower interest rates make safe-haven assets such as gold, which does not yield interest, more attractive while weighing on the dollar. The U.S. currency was trading largely unchanged against a basket of currencies on Wednesday.
Holdings of SPDR Gold Trust, the world's largest gold-backed exchange-traded fund, fell marginally to 756.18 tonnes on Tuesday from 756.42 tonnes on Monday.
The gold bulls have the overall near-term technical advantage and regained momentum today," Jim Wyckoff, senior analyst at Kitco, said in a note. He added that the next upside price target would be a close in August futures above June's high of $1,352.70.
Among other metals, silver was up 0.6% to $14.79 per ounce, while platinum inched 0.2% higher to $814.50.
Palladium was little changed at $1,394.30 per ounce, having hit a six-week high of $1,404 earlier in the session. The autocatalyst metal was trading higher for a fifth consecutive session.