Stock markets in Toronto and New York ended the day with gains on Monday as crude oil jumped by five per cent and metals prices surged.

The S&P/TSX composite index was up 32 points at the close to 12,846. But that was well off its high earlier in the day, when it was ahead by 172 points. Energy stocks were the lead gainers. Financials ended the day with a slight loss. The big banks begin reporting their quarterly results on Tuesday. 

Crude oil futures soared $1.64 to settle at $33.39 US a barrel on talk of an output freeze led by Russia and Saudi Arabia.

"Stock market prices and oil prices have been tracking each other like a shadow through the first part of the year," said Michael Scanlon, managing director and portfolio manager for John Hancock Asset Management.

The rise in oil came despite a report from the International Energy Agency which forecast that oil prices would not see any substantial rebound until at least 2017 with the supply glut expected to continue.

The Canadian dollar, which often moves in tandem with the price of oil, was up 3/10ths of a cent to close at 72.93 cents US.

The Dow Jones industrial average shot up 229 points, or 1.4 per cent, and closed at 16,621.

Base metal prices were up after a rise in China's steel industry raised the prospect of a revival in metals demand, given that China is the world's biggest consumer of metals. Gains in copper and zinc boosted the materials sector.

But gold, which has been rallying lately as a perceived safe haven, slipped $20.70 to settle at $1,210.10 US an ounce as investors felt comfortable about accepting more risk.

With files from The Associated Press