Gold prices fell to a near four-month low on Tuesday as the US dollar gained and investors sought out riskier assets, dampening the safe-haven metal's appeal.
Spot gold was down 0.2 percent at $1,271.75 per ounce as of 12:35 p.m. EDT (1635 GMT), after falling to its lowest since Dec. 26 at $1,265.90 earlier in the session.
US gold futures fell 0.23 percent to $1,273.90 an ounce.
"Gold traders are on the sidelines because of the strength in the dollar, stock and bond markets," said George Gero, managing director at RBC Wealth Management.
"Gold (market) is taking a back seat, waiting for something solid like inflation numbers or some political changes in the US; until then, prices are expected to trade in the lower ranges."
Denting appeal for bullion, the dollar index held near a three-week high as a drop in market volatility boosted demand for riskier assets, with higher US bond yields also offering support to the US currency.
Also, US stocks were trading higher on better-than-expected corporate results.
"There is risk-on sentiment, and no flight to safety now, even with what happened in Sri Lanka," said Phillip Streible, senior commodities strategist at RJO Futures.
Attacks on churches and luxury hotels in Sri Lanka on Sunday killed over 300 people and wounded more than 500.
Adding to gold's headwinds are better-than-expected economic readings recently from both the US and China, contributing to the metal's decline of about 6 percent from its 2019 peak touched in February.
Markets are now awaiting the release of US GDP data later in the week for an indication of the strength of the world's largest economy.
Analysts and traders said gold's break below key support levels last week, including the 100- and 50-day moving averages, signalled further downside for prices.
Indicative of sentiment, holdings of SPDR Gold Trust, the world's largest gold-backed exchange-traded fund, were at their lowest since Oct. 26.
In other metals, silver fell 1.1 percent to $14.82 per ounce, after dropping to its lowest level since Dec. 26 at $14.71.
Platinum was down 1 percent, to $886.85 per ounce, having hit a two-week high of $911.75 in the previous session.Palladium fell 0.4 percent to $1,380.79 per ounce, after falling as much as 3.5 percent in the previous session.