Bond yields rebounded solidly and stock indexes notched new highs Friday as Wall Street closed out a choppy, holiday-shortened week of trading with the market’s third consecutive weekly gain.

The S&P 500 index rose 1.1% to an all-time high for the second time this week. The benchmark index more than made up for its losses a day earlier, giving it a 0.4% gain for the week. The gains were broad with about 90% of the stocks in the S&P 500 closing higher. Banks, technology companies and industrial stocks powered much of the rally.

The gains followed bursts of selling this week as bond yields fell sharply, a sign that investors might turn cautious after a recent run of record highs for stocks. Bond yields also reversed course Friday. The yield on the 10-year Treasury note jumped to 1.36% from 1.28% a day earlier.

“Today was ‘just let’s take a breath on all of this position-changing,” said Tom Martin, senior portfolio manager with Globalt Investments.

The S&P 500 index rose 48.73 points to 4,369.55. The Dow Jones Industrial Average gained 448.23 points, or 1.3%, to 34,870.16, also a record high. The Nasdaq composite added 142.13 points, or 1%, to 14,701.92, the tech-heavy index’s third all-time high this week.

Small-company stocks did much better than the rest of the market. The Russell 2000 index rose 48.33 points, or 2.2%, to 2,280.

The market rally comes as investors turn their attention toward company earnings, which kick off next week, starting with major banks including JPMorgan Chase, Citigroup, Bank of America and Wells Fargo. Analysts expect another strong quarter for Wall Street, due to the improving economy and fewer Americans defaulting on loans compared with earlier in the pandemic.

Banks have been among the best-performing stocks in the S&P 500 this year. The KBW Bank Index of the 24 largest banks is up 27% this year alone, compared with the 16% gain of the S&P 500.