Gold on Wednesday steadied near its highest in over six years as focus returned to economic woes with 10-year US Treasury yields slumping to a three-year low, while a slight improvement in risk sentiment slowed bullion's advance.
Spot gold fell 0.03pc to $1,546.25 per ounce at 11:00 am EDT (1500 GMT), still near last week's $1,554.56, its highest since April 2013.
US gold futures remained unchanged at $1,555.70.
“Gold can move a bit higher, a big driving macro force is the decline in global yields, which seems to be spreading.
When you have gold, at least you can get your money back if prices change. If you buy sovereign bonds, you won't get your money back," said Edward Meir, analyst at INTL FCStone.
US Treasury yields fell as the benchmark 10-year yield hit its lowest since July 2016, after US manufacturing data showed the first contraction since 2016 on worries about a weakening global economy and US-China trade tensions.
US President Donald Trump threatened on Tuesday that he would be “tougher" on Beijing in a second term as president if talks dragged on.
However, global stock markets gained after a parliamentary vote raised chances of another delay to Brexit while a political gridlock in Italy seemed to have eased.
Investors also kept a close watch on developments in Hong Kong, after the region's leader Carrie Lam withdrew a controversial extradition bill that had triggered months of violent protests in the Asian financial hub.
However, some lawmakers said it still remains uncertain if this action would help end the protests.
Meanwhile, traders fully priced in a 25 basis point interest rate cut at the US Federal Reserve's meeting later this month, according to CME's FedWatch tool.
Lower interest rates reduce the opportunity cost of holding non-yielding bullion and weigh on the dollar. The dollar fell against a basket of currencies.
Indicative of sentiment, holdings of SPDR Gold Trust, the world's largest gold-backed exchange-traded fund, rose to 890.04 tonnes on Tuesday, their highest since November 2016.
Spot silver rose 0.4pc to $19.31 per ounce, after hitting $19.57 earlier, its highest since September 2016.
“It (silver) has climbed further to a three-year high of $19.6 per troy ounce this morning, bringing the psychologically important $20 mark into reach. Silver is continuing to outperform gold – the gold/silver ratio has dropped below 80 for the first time in over a year," Commerzbank analysts wrote in a note.
Elsewhere, spot platinum gained 2.3pc to $980.00 per ounce after jumping 3pc at $986 earlier in the session, it's highest since February 2018. Palladium was up 0.7pc at $1,553.25.