Wall Street advanced Friday as strong economic data encouraged investors and sent the Standard & Poor's 500-stock index to a four-year high for the second straight session.
Government economic reports were positive, just as they were in the previous session. The Labor Department's producer price index, which measures inflation in wholesale prices, was flat in June, while core PPI -- with food and fuel costs removed -- fell 0.1 percent.
In addition, the Federal Reserve reported industrial production rose 0.9 percent in June, the biggest increase in 14 months. And business inventories rose only 0.1 percent in May, according to the Commerce Department, meaning that sales are brisk and businesses aren't stuck with large inventories.
After spending most of the session lower, the Dow rose 11.94, or 0.1 percent, to 10,640.83. It was the Dow's best close since March 16.
Broader stock indicators closed higher after also trading lower much of the day. The S&P 500 rose 1.42, or 0.1 percent, to 1227.92, and the Nasdaq composite index gained 3.96, or 0.2 percent, to 2156.78, beating the previous session's 2005 high.
Bonds traded in a narrow range for much of Friday and ended slightly higher, with the yield on the 10-year Treasury falling to 4.17 percent from 4.18 percent late Thursday.
Positive inflation data, reports of strong retail sales activity and a sharp drop in oil prices combined for a strong week on Wall Street. The S&P climbed 1.33 percent over the course of the week and the Nasdaq rose 2.08 percent.
The S&P and Nasdaq have been up for seven straight sessions, while the Dow rose six of the past seven trading days.
General Electric fell 10 cents, to $35.53. The company reported quarterly profit up 24 percent, but lowered its projection of third-quarter earnings.
McDonald's rose $1.39, to $30.99, after reporting higher monthly sales.
Chiron lost $1.24, to $36.03, after reducing the number of vaccine shipments it expects to make. The company found tainted vaccines in a German production plant.
New York Stock Exchange composite index rose 0.19, to 7403.59.
American Stock Exchange index rose 2.13, to 1539.97.
Russell 2000 index of smaller-company stocks rose 0.72, to 663.74.
NYSE: 1.74 billion shares, down from 2.02 billion on Thursday. Advancers narrowly outnumbered decliners.
Nasdaq: 1.52 billion shares, down from 1.86 billion. Advancers narrowly outnumbered decliners.
Crude oil for August delivery: $58.09, up 29 cents.
Gold for current delivery: $420.70 a troy ounce, up from $419.60 on Thursday.