The Dow Jones industrial average ended Tuesday on its second all-time high in a week.
The Dow closed at 14,673.46, a gain of 59.98 points, or 0.4 percent. The Standard & Poor's 500 index also rose 0.4 percent, closing less than two points below its own all-time high set April 2.
The prices of metals like copper, gold, and silver have come back up this week after slumping for the first three months of the year on waning demand. Oil is also rising following a sharp decline last week.
On Tuesday the S&P 500 rose 5.54 points to 1,568.61. The index closed at a record high of 1,570.25 on April 2. The Nasdaq composite gained 15.61 points, or 0.5 percent, to 3,237.86.
The gains suggested that the Dow and S&P 500 may be poised to break out of a trading pattern they've followed for the last three weeks.
Stocks have mostly moved sideways since the middle of March. The Dow has alternated between small gains and losses after starting the year on a tear. Concerns over the situation in Europe have kept investors' confidence in check.
Small company stocks lagged the market. The Russell 2000 index two points, or 0.2 percent, to 929.34. The index has slumped this month after rising 12 percent in the first quarter and performing better than both the Dow and S&P 500.
Follow Becket Adams (@BecketAdams) on Twitter
The Associated Press contributed to this report.