US stocks rallied for a third straight day Tuesday, buoyed by hopes for more stimulus from the Federal Reserve and the European Central Bank to boost weak economies.
The Dow Jones Industrial Average finished at 13,168.60, up 51.09 points, or 0.39 percent.
The tech-rich Nasdaq gained 25.95 (0.87 percent) at 3,015.86, while the S&P 500-stock index rose 7.12 (0.51 percent) to 1,401.35, pushing both indices above the key levels of 3,000 and 1,400, respectively.
Stocks were driven higher "as investors speculate on upcoming stimulus measures from the ECB," Wells Fargo Advisors analysts said.
"Further Fed action was also a positive catalyst after Regional President Eric Rosengren reiterated his stance to expand monetary policy."
The sole economic indicator of the day, the Federal Reserve's June consumer credit report, showed credit growth rose 3.0 percent from May, the weakest pace since October 2011.
"Though the slowdown in credit balance growth was larger than expected, it is not too surprising given consumers' subdued confidence and weak income growth," said Timothy Daigle at Moody's Analytics.
Energy, financial and industrial stocks benefited from the expectations of further stimulus.
Amid a sharp rise in crude oil prices, Dow energy heavyweights Chevron and ExxonMobil were up 0.6 percent and 0.5 percent, respectively.
Fellow Dow member American Express added almost 1.0 percent, Bank of America added 0.4 percent, Caterpillar gained 1.0 percent and Boeing climbed 2.2 percent.
The blue-chip index's worst performer was Pfizer, down 2.1 percent, after the drugmaker and Johnson & Johnson announced they were ending trials of an Alzheimer's disease treatment. J&J fell 0.8 percent.
Drugstore chain CVS Caremark fell 1.7 percent after posting better-than-expected earnings in the second quarter, but revenues disappointed.
Do-it-yourself retailer Home Depot rose 0.8 percent after revealing it was buying US Home Systems, a kitchen and bath products and services firm, in a $93.4 million cash deal. USHS soared 38.3 percent to $12.53.
Bond prices fell. The 10-year Treasury yield rose to 1.63 percent from 1.56 percent Monday, while the 30-year increased to 2.72 percent from 2.65 percent. Bond yields move inversely to prices.