Edges
Sector Rotation: Following Institutional Money
The edge in sector rotation does not live on the intraday chart. It is not a signal you act on in minutes or hours. It runs on monthly and quarterly timeframes — the cadence at which large institutional capital reallocates across equity sectors as economic conditions change. Acting on it faster than that is not a sharper version of the same strategy; it is a different strategy that captures noise rather than the underlying flow.
The mechanism is straightforward: as the economy moves through recognizable phases, different sectors of the equity market predictably lead and lag. Technology and consumer discretionary tend to lead in early economic recovery. Industrials and materials tend to lead in expansion. Healthcare and utilities tend to hold up in slowdowns. Consumer staples and energy tend to be last refuge in contraction. The sequence is not a fixed clock — it has exceptions, disruptions, and phase extensions — but it has held well enough across multiple cycles that systematic strategies exploiting it have a documented track record spanning decades.
The edge exists because institutional reallocation is slow. A large pension fund or sovereign wealth fund allocating 15% of a multi-billion-dollar portfolio across sectors does not execute that reallocation in a day or a week. The capital moves gradually, and as it moves, it lifts the destination sectors over weeks. A systematic strategy that identifies early momentum in the leading sectors can position ahead of the full institutional flow — not by predicting the cycle, but by observing the early price and momentum evidence and moving before the cycle narrative is broadly recognized.
Companion reading: Momentum + Volume covers the underlying momentum mechanics that drive the relative strength scoring used in the rotation signal below.
What Sector Rotation Is
Sector rotation is the process of reallocating capital across equity sectors based on their position in the economic cycle. It is a macro-driven strategy — the primary inputs are economic regime indicators, not individual company fundamentals or technical setups on single stocks. The question is not "is this company going to grow earnings?" but "is this part of the economy likely to outperform the others over the next one to three months?"
The implementation uses sector ETFs — instruments like XLK (technology), XLF (financials), XLE (energy), XLB (materials), XLI (industrials), XLV (healthcare), XLU (utilities), XLP (consumer staples), XLY (consumer discretionary), XLC (communication services) — to gain diversified exposure to each sector without needing to select individual stocks. Rotation means moving the allocation from sectors losing momentum to sectors gaining momentum, on a fixed schedule.
What it is not. Sector rotation is not stock picking applied at the sector level. It does not depend on inside knowledge or a fundamental view on any specific company. It does not require predicting exactly when the economic cycle will turn — it requires only observing, through price, that it already has begun to turn.
The Business Cycle Framework
The standard framework maps four economic phases to their historically favored equity sectors.
Recovery. GDP growth resuming after a trough; credit conditions easing; corporate earnings bottoming. Sectors that benefit: Technology (earnings recovery combined with rate sensitivity), Consumer Discretionary (households spending again), Financials (credit spreads tightening, loan growth resuming). These sectors are most sensitive to the early improvement in forward expectations, which is why they tend to lead before the economic data itself confirms the recovery.
Expansion. Sustained GDP growth; rising corporate earnings; tightening labor markets. Sectors that benefit: Industrials (infrastructure spending, manufacturing capacity utilization climbing), Materials (commodity demand expanding), Energy (demand rising as industrial activity increases). These sectors have more direct linkage to the physical economy and outperform as the expansion matures.
Slowdown. Growth rate declining from peak; earnings estimates beginning to roll over; yield curve flattening. Sectors that hold up: Healthcare (non-cyclical demand; defensive revenue streams), Consumer Staples (inelastic demand regardless of economic conditions). Investors rotate defensively as the expansion peak is recognized.
Contraction. Negative GDP growth; earnings declining; central bank easing beginning or anticipated. Sectors that offer relative shelter: Utilities (predictable regulated returns; dividend income substitutes for equity risk premium), Consumer Staples (food and household staples spending is largely recession-resistant), Energy (variable — depends on whether the contraction is accompanied by supply shocks or demand destruction).
The mapping is probabilistic, not mechanical. The 2020 COVID contraction did not follow the normal sector leadership sequence at all — the simultaneous demand shock and supply disruption produced a collapse and recovery pattern that was largely sector-agnostic in the descent and disproportionately rewarded technology and healthcare in the recovery, driven by structural factors unrelated to the normal cycle. The framework is a prior, not a certainty.
Why the Edge Exists
Institutional capital allocators operate on a different time horizon than the signals they observe. A large fund making a sector reallocation decision typically requires investment committee approval, internal modeling, gradual execution across multiple sessions, and communication to allocators or clients. From the first indication that a regime is shifting to the full execution of a reallocation across a major fund can take weeks.
Retail follows, which extends the trend. After institutional reallocation becomes visible in the sector ETF price data — which it does, because the capital moving is large enough to show up in relative performance — individual investors and smaller funds observe the momentum and allocate in the same direction. This second wave of capital extends the trend beyond what pure institutional reallocation would produce. The result is that sector momentum, once established, persists longer than the underlying economic data shift alone would explain.
Recognition lag. Economic phase transitions are not announced in advance. The determination that the economy has entered a new phase is typically made by consensus among economists and analysts several months after the phase has begun — which means that by the time the narrative is broadly recognized, the early-phase sectors have already outperformed substantially. A strategy based on price momentum rather than economic forecasting can capture the transition period: the price already reflects the economic shift before the forecast consensus catches up.
Relative Strength Scoring
The mechanical implementation measures momentum across sector ETFs and allocates to the top-ranked sectors on a monthly schedule.
Lookback period. A 63-trading-day lookback (approximately 3 calendar months) is the standard starting point. This window is long enough to capture genuine sector leadership shifts rather than short-term noise, and short enough to respond to regime changes within a reasonable lag. Shorter windows (10–20 days) cause the signal to rotate too frequently — each monthly rebalance produces a different top-N set, which generates excess transaction costs and captures reversal risk. Longer windows (120–180 days) are slower to respond to genuine phase transitions, causing the strategy to stay in last cycle's leaders into the current cycle's laggards.
Ranking. Each sector ETF's 63-day total return is computed and ranked from highest to lowest. The top 3 (out of 10) sectors by this rank constitute the target allocation. The portfolio holds equal-weight positions in these 3 sectors and rebalances to the new top-3 at the end of each month.
Why equal-weight within the top-N. Weighting by momentum score would tilt heavily toward whichever sector had the single strongest recent return, which often means a sector that had a sharp short-term spike rather than sustained leadership. Equal-weight across the top-N diversifies across the current cycle's leading sectors without betting everything on the highest-momentum name.
When It Fails
Cycle disruptions. The sector rotation model assumes economic phases transition in sequence. The COVID pandemic (2020), the post-COVID inflation shock (2021–2022), and the banking stress of 2023 all represented cycle disruptions where sector relationships deviated materially from historical patterns. A strategy that mechanically followed the business cycle model held the wrong sectors for extended periods during these disruptions.
Sectors that break the cycle model. Technology and energy frequently behave in ways that are inconsistent with their theoretical cycle mapping. Technology has leadership characteristics across multiple cycle phases due to secular growth dynamics. Energy behavior is heavily influenced by geopolitical supply factors (OPEC decisions, conflict-driven supply disruptions) that operate independently of the demand-side economic cycle.
Over-trading by shortening the rebalance window. The most common implementation mistake is shortening the rebalance period from monthly to weekly or daily in an attempt to be more responsive. A 63-day momentum signal rebalanced weekly still observes the same 63-day window — but it acts on short-term noise within that window, generating trades that are not justified by genuine regime change. Transaction costs, bid-ask spreads on ETFs, and short-term reversal effects accumulate. The evidence for sector rotation as an edge concentrates in the monthly rebalance period; compressing the horizon degrades the edge.
How to Code It in Python
import pandas as pd
def relative_strength_scores(sector_prices: pd.DataFrame, lookback: int = 63) -> pd.Series:
# sector_prices: columns are sector ETF tickers, rows are dates
returns = sector_prices.pct_change(lookback).iloc[-1]
return returns.rank(ascending=False) # rank 1 = strongest
def rotation_signal(sector_prices: pd.DataFrame, top_n: int = 3, lookback: int = 63) -> list:
scores = relative_strength_scores(sector_prices, lookback)
return scores[scores <= top_n].index.tolist() # top N sectors to hold
relative_strength_scores computes the total return over the lookback window for each sector ETF in the input DataFrame, then ranks them from strongest to weakest. Rank 1 is the strongest-performing sector; rank 10 is the weakest. Using .rank(ascending=False) means lower rank number = higher return, which is the intuitive convention.
rotation_signal calls the scoring function and returns the list of sector tickers in the top N by rank. With top_n=3, the output is the three sector ETF tickers to hold for the current month. The calling code is responsible for diffing this list against the current holdings to generate the actual buy and sell orders at the monthly rebalance.
The lookback of 63 days matters. Shortening it to 10 or 20 days converts the signal from a sector rotation strategy to a short-term momentum strategy measured at the sector level — a different edge with different characteristics, higher turnover, and higher sensitivity to short-term reversals. The 63-day lookback is not arbitrary; it is the approximate horizon over which cycle-driven institutional reallocation becomes visible in relative performance. If you shorten it to 5 days and the signal fires weekly, you are measuring something different.
Data source. Sector ETF price data is widely available at no cost — Yahoo Finance, Alpha Vantage (free tier), Tiingo, and others provide daily adjusted closes for the XL-series ETFs. The strategy does not require tick data or premium feeds.
The Oyamori Approach
Sector rotation is one of the simpler edges to automate with accessible data: daily ETF prices, a monthly cron job, and a small allocation decision. Oyamori tracks relative strength across sector ETFs as a standard indicator in the macro signals catalog, surfacing the current top-3 by 63-day momentum alongside the historical hit rate for that ranking under current economic conditions.
The system also flags when sectors are behaving anomalously relative to their cycle-phase expectations — which is often the earliest warning that a cycle disruption is underway. A rotation model that is aware it may be in a disruption period can reduce allocation sizing or stand aside in uncertainty rather than executing mechanically on a framework that may no longer apply.
Next: Order Flow Imbalance →