Better-than-expected corporate results lifted US stocks on Tuesday, but oil prices plunged 9 percent as news of a fall in US consumer confidence to a record low and tumbling home prices stirred concerns about demand. US Treasury debt, meanwhile, rallied on the sale of a record $40 billion offering of two-year notes and speculation the Federal Reserve will buy long-dated government bonds. Wall Street rallied for a third session in a row on hopes that despite the drumbeat of negative news, government efforts to stabilize the flagging U.S. economy will start to work. A number of corporate results that beat analysts expectations also helped investors discount the dire data. “The further we get through earnings season, the better off we're going to be,” said Bruce Zaro, chief technical strategist at Delta Global Advisors in Boston. American Express led the Dow higher, gaining 9.5 percent after its results late Monday surpassed expectations. However, like many companies, it warned 2009 will be tough. Other companies reporting better-than-expected results included Travelers Cos Inc, the large U.S. home, auto and commercial insurer, candy maker Hershey Co and chip maker Texas Instruments. Shares of Travelers rose 6.2 percent, Hershey gained 6.8 percent while Texas Instruments added 3.7 percent. “We've had some more numbers coming through that have been -- I don't want to say good -- but to some extent not as bad as people had thought,” said Tim Smalls, head of U.S. stock trading at brokerage Execution LLC in Greenwich, Connecticut. The Dow Jones industrial average rose 58.70 points, or 0.72 percent, at 8,174.73. The Standard & Poor's 500 Index gained 9.14 points, or 1.09 percent, at 845.71. The Nasdaq Composite Index added 15.44 points, or 1.04 percent, at 1,504.90. European shares closed slightly higher after staging a late after results from Siemens, the German industrial conglomerate, calmed fears about earnings at companies reeling from the global slowdown. The FTSEurofirst 300 index of top regional European shares closed 0.1 percent higher at 785.64 points. The dollar was little changed against a basket of currencies as traders awaited the end on Wednesday of a two-day policy meeting of the Federal Reserve at which the central bank may announce new efforts to thaw frozen credit markets.