Stocks overcame initial losses as oil prices fell yesterday. The Standard & Poor's 500-stock index rose to its highest close of the quarter.

Wal-Mart Stores helped lead the rally as crude oil and heating oil dropped to three-month lows, giving consumers more money to spend at retailers. Financial and real estate shares rose on speculation that the decline in energy costs would limit the Federal Reserve's interest rate increases.

The Dow Jones industrial average rose 93.89, or 0.9 percent, to 10,640.10. The S&P 500 rose 10.31, or 0.8 percent, to 1230.96, the highest since Sept. 19. The Nasdaq composite index gained 20.87, or 1 percent, to 2196.68.

Benchmark indexes erased earlier declines that were sparked by a disappointing forecast from Cisco Systems and accounting errors at General Motors.

Crude oil for December delivery fell 1.9 percent, to $57.80 a barrel, in New York, the lowest since July 21, after the International Energy Agency reduced its forecast for 2006 world oil consumption. Heating oil fell 2.6 percent, to $1.7435 a gallon, the lowest since Aug. 5.

Wal-Mart, the world's largest retailer, gained 84 cents, to $49.04. Target, Wal-Mart's rival, rose $2.29, to $58.85.

Movers

General Motors fell $1.12, to $23.51, the lowest in 13 years. The company quadrupled its second-quarter loss to $1.07 billion and said it will restate 2001 profit because of accounting errors.

Intel gained 44 cents, to $25.24. The chipmaker's planned $25 billion buyback would be the second-largest repurchase after Microsoft's $30 billion buyback.

Dell rose 19 cents, to $29.21. The computer company said it will buy back at least $1.7 billion worth of stock in the fourth quarter.

Cisco fell 60 cents, to $17.15. The computer network equipment maker forecast lower revenue than analysts expected.

Simon Property Group, the largest U.S. shopping-mall owner, rose $2.42, to $74.26.

Equity Office Properties Trust, the No. 1 owner of office buildings, rose 99 cents, to $30.40.

Indexes

New York Stock Exchange composite index rose 29.14, to 7530.13.

American Stock Exchange index fell 6.01, to 1681.89.

Russell 2000 index of smaller-company stocks rose 5.10, to 664.93.

Volume

NYSE: 2.39 billion shares, up from 2.18 billion on Wednesday. Advancers outnumbered decliners 3 to 2.

Nasdaq: 1.95 billion shares, up from 1.63 billion. Advancers outnumbered decliners 3 to 2.

Commodities

Crude oil for December delivery: $57.80, down $1.13.

Gold for current delivery: $466.60 a troy ounce, up from $466.30 on Wednesday.