Rolling Beta

Rolling beta tracks systematic risk through time instead of collapsing it into one number. FolioLab implements it as a calendar-yearbeta: the run groups the aligned excess returns by year and reports one beta for each year. The yearly buckets do not overlap, and the result is a map from the year to the beta of that year.

Overview

A single static beta estimated over a long historical period masks important changes in an asset's risk characteristics. Firms undergo structural transformations -- mergers, divestitures, leverage changes, and strategic pivots -- that alter their exposure to market risk. Rolling beta addresses this by repeatedly estimating beta over overlapping sub-samples, producing a time series of beta estimates that reveals trends, regime shifts, and cyclical patterns in systematic risk.

Any such estimate needs a bucket, and the bucket choice is a bias-variance trade-off. A short bucket reacts quickly to change but produces noisy estimates. A long bucket yields smoother estimates but lags a structural change. Practitioners often use an overlapping window that advances one day at a time. FolioLab makes a different choice: it partitions the sample into calendar years. Each observation enters exactly one estimate, so the reported betas are statistically independent buckets rather than a smoothed series, and each one lines up with the calendar period a reader already has in mind.

Mathematical Formulation

Excess Return Definitions

For each period , define the excess returns for the asset and the market:

where is the asset return, is the market return, and is the risk-free rate at time .

Beta within One Calendar Year

Write for the set of trading days that fall in calendar year . The beta of that year is the sample covariance over the sample variance, both taken on the excess returns of that year alone:

Both moments use the unbiased divisor . This is the static CAPM beta formula applied to one year of data, and it equals the OLS slope of a regression fitted on that year.

The Yearly Sequence

One estimate per calendar year gives a short sequence keyed by the year itself:

The buckets are disjoint: no observation contributes to two estimates, and the estimate does not advance one day at a time. The first and the last year of a sample are usually partial, and they are kept whenever they still hold enough observations. A ten-year daily history therefore produces at most ten betas, not thousands.

The Rules FolioLab Applies

RuleEffect
GroupingThe aligned daily series is grouped by calendar year. The buckets never overlap.
Sample minimumA run with fewer than 252 daily portfolio returns (about one trading year) returns an empty map. Fewer than 10 aligned portfolio and benchmark observations in total also returns an empty map.
Year minimumA year with fewer than 20 aligned observations is skipped, so a thin first or last year does not appear.
Degenerate yearA year whose benchmark excess variance is at or below 1e-12, or whose beta is not finite, is skipped.
Output shapeA map from the integer year to one beta, returned per method as rolling_betas. There is no daily beta series and no configurable window length.

The risk-free rate is converted to a daily rate and subtracted from both legs before the grouping, so every yearly beta is an excess-return beta. A 60-day, 252-day, 756-day or 60-month window is a common choice elsewhere in the literature. None of them is available here, because the bucket is the calendar year.

Advantages & Limitations

Advantages

  • Time-varying risk: Captures the dynamic evolution of systematic risk, which a single static beta cannot.
  • Regime detection: Reveals structural breaks and regime shifts in an asset's market sensitivity.
  • Simplicity: Straightforward extension of static OLS beta; no additional model assumptions required.
  • Visual insight: Produces intuitive time-series plots that communicate risk dynamics to non-technical stakeholders.

Limitations

  • Arbitrary boundaries: The calendar year is a convention, not a market regime. A regime that turns in June is split across two estimates.
  • Coarse resolution: One estimate per year detects a slow drift, but it cannot date a structural break inside a year.
  • Estimation noise: A single year holds about 250 daily observations, so a yearly beta still carries a wide standard error.
  • Equal weighting: All observations within a year receive equal weight; exponentially-weighted alternatives may be preferred.
  • Thin years are dropped: A year with fewer than 20 aligned observations produces no estimate, which removes a short first or last year from the output.

References

  1. Ferson, W. E., & Schadt, R. W. (1996). "Measuring Fund Strategy and Performance in Changing Economic Conditions." Journal of Finance, 51(2), 425-461.
  2. Brooks, R. D., Faff, R. W., & McKenzie, M. D. (1998). "Time-Varying Beta Risk of Australian Industry Portfolios: A Comparison of Modelling Techniques." Australian Journal of Management, 23(1), 1-22.
  3. Alexander, C. (2008). Market Risk Analysis, Volume II: Practical Financial Econometrics. John Wiley & Sons.

Not investment advice. Past performance is not indicative of future results.