The Dow Jones industrial average ended up 180 points, or 1.2 percent, at 15,176 Thursday.
The market got off to a weak start, then rose steadily throughout the day. The advance accelerated in the last hour. The Dow is coming off its first three-day slump since December.
The Standard & Poor's 500 index gained 23 points, or 1.5 percent, to 1,636. The Nasdaq composite rose 44 points, or 1.3 percent, to 3,445.
The number of Americans seeking unemployment benefits fell last week, and retail sales increased 0.6 percent in May from April.
Five stocks rose for every one that fell on the New York Stock Exchange. Volume was average at 3.4 billion shares.