📈 Performance
- A strategy that selects stocks based on their historical same-calendar-month returns earns an average return of 13% per year (1963–2011).
- A metastrategy that takes long and short positions on 15 anomalies based on historical same-calendar-month premiums earns 1.88% per month (t-value = 6.43).
- Adding a seasonality factor to a portfolio of market, size, value, and momentum increases the Sharpe ratio from 1.04 to 1.67.
💡 Key Idea
Return seasonalities exist across stocks, factors, commodities, and international markets. Stocks that performed well in a specific month tend to do so again in the future. These seasonalities overwhelm unconditional expected return differences and are intertwined with other return anomalies.
📊 Economic Rationale
- Return seasonalities aggregate across systematic factors like size, value, and industry.
- Market-wide seasonality in risk premiums translates into cross-sectional seasonal effects.
- Anomalies such as accruals and equity issuances exhibit strong seasonal variation.
- The evidence does not support macroeconomic risk explanations.
🛠Practical Applications
- Factor Investing: Enhance factor portfolios by integrating seasonality signals.
- Timing Strategies: Adjust portfolio exposures based on seasonal anomaly strengths.
- Hedge Funds & Asset Managers: Use seasonality-based stock selection and factor tilts.
- Commodity & FX Trading: Leverage cross-sectional seasonal effects beyond equities.
🚀 How to Do It
Data
- Monthly stock returns from NYSE, AMEX, NASDAQ (1963–2011).
- Fama-French factor returns.
- International stock indices and commodity futures.
Model/Methodology
- Fama-MacBeth cross-sectional regressions to analyze seasonal return patterns.
- Portfolio sorts: Long-short portfolios based on historical same-calendar-month returns.
- Factor decomposition to determine the role of size, value, and industry exposures.
- Sharpe ratio maximization with seasonality factors.
Strategy
- Sort stocks by their historical same-calendar-month return over the past 20 years.
- Go long on the top-decile stocks and short the bottom-decile stocks.
- Hold positions for one month and rebalance at the start of each month.
- Repeat across different asset classes (equities, commodities, FX, indices).
📊 Table or Figure

📌 Key Evidence: Figure 1 shows slope coefficients from cross-sectional regressions of monthly stock returns against past returns at different lags, revealing persistent annual return patterns.
📜 Paper Details
- Authors: Matti Keloharju, Juhani T. Linnainmaa, and Peter Nyberg
- Published in: The Journal of Finance, August 2016
- DOI: 10.1111/jofi.12398
More detail ...
🔨 Constructing the Seasonality Factor
- Sort stocks into portfolios based on their historical same-calendar-month returns over the past 20 years.
- Go Long: Stocks in the top percentile of historical same-month returns.
- Go Short: Stocks in the bottom percentile.
- Compute the return spread between the long and short portfolios.
- The return spread forms the seasonality factor (HML-Seasonality).
🚀 Building a Strategy Using Seasonality in Anomalies
The paper shows that anomalies exhibit strong seasonal variation. A meta-strategy that rotates anomalies based on their historical same-calendar-month performance earns 1.88% per month (t-value = 6.43). This suggests that combining anomaly factors with seasonality can be profitable.
How to Construct the Strategy
- Select Anomalies: Use common factor anomalies (e.g., momentum, value, accruals, equity issuance).
- Compute Seasonal Signals: For each anomaly, calculate average performance in the same calendar month over the past 20 years.
- Rank Anomalies: Identify the top 3 best-performing anomalies and the worst 3 based on same-month returns.
- Go Long/Short: Construct a long-short portfolio, buying the top anomalies and shorting the worst.
- Monthly Rebalancing: Adjust holdings at the beginning of each month based on updated seasonal performance.