"At this point, people think the bad news is baked into the market," Nick Kaupp, a floor trader told The Wall Street Journal. "In the past, customers have pulled their bids on numbers like those. But today they didn't."
By close, the Dow Jones industrial average rose 259.18 points, or 3.09 percent, to 8,635.42. The Standard and Poor's 500 rose 3.65 percent, 30.85 points, to 876.07. The Nasdaq composite index gained 63.75 points, 4.41 percent, to 1,509.31.
On the New York Stock Exchange, 2,187 stocks advanced and 914 declined on volume of 6.8 billion shares traded.
The benchmark 10-year U.S. Treasury bond fell 1 12/32 to yield 2.71 percent.
The euro fell to $1.2732, compared to $1.2788 Thursday. Against the Japanese yen, the dollar rose to 92.87 yen from 92.28 yen Thursday.
In Tokyo, the Nikkei average lost 6.73 points to 7,917.51, off 0.08 percent.
In London, the FTSE 100 index lost 114.24 to 4,049.37, off 2.74 percent.