Spot gold was up 1.2 per cent at $1,090.95 an ounce at 1500 GMT (8:30 p.m. in India), off a peak of $1,093.10, its highest since November 16. US gold futures for February delivery were up $12.50 an ounce at $1,090.90.
The metal has broken through a key chart level at $1,088, which could indicate prices have bottomed for now after twice rebounding from the $1,045 area in December, analysts said.
"(The) geopolitical situation along with a cocktail of global market sell-offs is fuelling this move," said Naeem Aslam, chief market analyst at Ava Trade.
World stocks fell for a fifth day as China fuelled fears about its economy by allowing the yuan to weaken further, and a nuclear test by North Korea added to a growing list of political worries.
North Korea said it successfully tested a miniaturised hydrogen nuclear device on Wednesday, setting off alarm bells in Japan and South Korea.
Relations between Saudi Arabia and Iran collapsed over the weekend after the kingdom's execution of a Shi'ite cleric, a prominent critic of Saudi policy, set off a storm of protests in Tehran.
"Some risk aversion prompting safe-haven flows has helped gold," Societe Generale analyst Robin Bhar said. "Physical demand has been pretty strong at the lower levels."
"As we go higher, we could see some of that physical demand beginning to slow. Now we need investors to jump back in and look to hedge some of the uncertainties over global growth, over China, with positioning in gold."
Traders will examine the minutes of the Federal Reserve's last meeting when they are released later on Wednesday for clues about the US central bank's plans for interest rate hikes.
Gold fell 10 per cent last year on fears higher US rates would lift the opportunity cost of holding non-yielding bullion. The Fed raised rates for the first time in nearly a decade last month and is expected to hike rates further this year.
Silver was up 0.8 per cent at $14.08 an ounce, while platinum was down 0.9 per cent at $880.65 an ounce and palladium was down 3.3 per cent at $516.72 an ounce.
Palladium prices fell to their lowest in nearly five-and-a-half years in earlier trade at $514.20 an ounce. The autocatalyst metal, as a largely industrial commodity, is more exposed than gold to economic weakness.
© Thomson Reuters 2016