Gold prices rose to the highest in more than one week on Friday and posted a weekly gain, as investors bet on the safe-haven metal to hedge against the economic impact of the coronavirus outbreak.
Spot gold rose 0.3% to $1,581.25 per ounce by 1554 GMT, after touching $1,582.60, its highest since Feb. 3. For the week, bullion has so far gained about 0.7%.
U.S. gold futures rose 0.4% to $1,585.50.
"The coronavirus scenario is still unclear and the on-off headlines on the situation are making the stock markets volatile, forcing investors to take refuge in safe-haven gold," George Gero, managing director at RBC Wealth Management.
"Even with the virus gone, gold is expected to trade in the $1,550-$1,600 range as other uncertainties like lower interest rates across the major central banks, Middle East tensions and other political risks still exist."
Chinese authorities on Thursday reported 121 new deaths and 5,000 new coronavirus cases in mainland China, and economists scaled back growth expectations for the world's second-largest economy as they assessed the impact of the outbreak.
Global stock markets have had a volatile week as investors took and quit positions in riskier assets driven by the frequently changing headlines around coronavirus outbreak in China.
Wall Street opened slightly higher, with gains kept in check by concerns about the economic hit from the outbreak.
Further supporting gold's rise, U.S. Treasury yields declined after soft retail sales data amid virus concerns.
U.S. consumer spending appears to have slowed further in January, which raises concerns about the economy's ability to continue expanding at a moderate pace.
"We still target a decline in U.S. Treasury yields, in addition to dollar weakness from a trade-weighted angle. We believe this gives gold a good risk-reward even if we see no further bouts in equity market uncertainty," UBS analysts said in a note.
Among other precious metals, palladium fell 0.87% to $2,330.53 an ounce.