Skip to content
All hypotheses

Hypotheses

Same-Calendar-Month Return Seasonality, Dollar-Neutral Cross-Section of 18 Sector + Country ETFs (USEQ 1-DAY, Monthly Rebalance at Month-End Close, Long Top-k / Short Bottom-k by Seasonal Excess Return)

This is a cross-sectional return-seasonality strategy. Sources: Heston & Sadka (2008, JFE), and Keloharju, Linnainmaa & Nyberg (2016, JF), who find the effect in country indices, sectors and other asset classes. The…

Hypothesis

This is a cross-sectional return-seasonality strategy. Sources: Heston & Sadka (2008, JFE), and Keloharju, Linnainmaa & Nyberg (2016, JF), who find the effect in country indices, sectors and other asset classes. The universe is a FIXED, rule-defined panel of 18 US-listed ETFs that are in the USEQ catalog with long daily history: the 9 original Select Sector SPDRs (XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV, XLY; from 1998-12) and 9 country/region iShares (EWJ, EWG, EWU from 1996; EWZ, EWT, EWY from 2000; EFA 2001;……Show moreShow less

This is a cross-sectional return-seasonality strategy. Sources: Heston & Sadka (2008, JFE), and Keloharju, Linnainmaa & Nyberg (2016, JF), who find the effect in country indices, sectors and other asset classes. The universe is a FIXED, rule-defined panel of 18 US-listed ETFs that are in the USEQ catalog with long daily history: the 9 original Select Sector SPDRs (XLB, XLE, XLF, XLI, XLK, XLP, XLU, XLV, XLY; from 1998-12) and 9 country/region iShares (EWJ, EWG, EWU from 1996; EWZ, EWT, EWY from 2000; EFA 2001; EEM 2003; FXI 2004). Because these are ETFs, there is no point-in-time membership problem (L190). An ETF becomes eligible once it has at least min_years (5) complete calendar years of history. Signal for ETF i and upcoming month m: seasonal_excess = mean return of i in calendar month m over the last lookback_years years, minus its mean return in the other months of those years (the KLN seasonal-minus-non-seasonal form, which removes the ETF's general drift). On the last trading session of each month (from src/data/market_calendar.py, half-days included), rank the eligible ETFs. Go long the top_k and short the bottom_k, dollar-neutral. Each leg is sized by inverse 60-day volatility, and gross exposure is 100% of equity on the 2x Reg-T account. Orders fill at the month-end close. There is no next-session-open hook, so the strategy trades at that close and holds through the whole next month. Each leg also has a 15% intrabar protective stop (a platform-matched reduce-only stop_market). This mechanism has not been run in the corpus. Prior seasonality runs were single-asset day-of-week and turn-of-month timers on BTC, QQQ and SPY. The strategy is pure OHLCV with no BTC and no Binance.

Backtest and paper results are hypothetical. Trading involves risk of loss.