APEX factor · Sector
Sector momentum bets that stocks in industries that have been rallying keep rallying for the next 1-3 months. Most of the equity-momentum premium decomposes into sector trends: Energy moves together when oil rallies, Tech moves together when growth comes back into favour. The factor rides the wave at the industry layer rather than the single-stock layer.
In 2023, every semiconductor stock — NVDA, AMD, AVGO, MU — moved up roughly together as AI capex took off. The within-industry dispersion mattered (NVDA outperformed) but the across-industry dispersion mattered more (semis beat utilities by 50%). Sector momentum captures the industry-level wave: which sectors are aggregating the most positive APEX scores right now, and which are aggregating the most negative. A high-quality stock in a falling sector still tends to fall; a mediocre stock in a leading sector still tends to rise. The factor reflects this gravitational pull explicitly.
for each ticker T in sector S: sector_score_S = mean( APEX_overall(t) for t in S ) // current cross-sector signal sector_mom_S = ln( sector_index_S / sector_index_S[t-21] ) // 21-day sector momentum sector_breadth_S = (count bullish in S) / count(S) // breadth confirmation sector_raw = w₁·z_score(sector_score_S) + w₂·z_score(sector_mom_S) + w₃·z_score(sector_breadth_S) sector = z_score(sector_raw) // assigned to all tickers in S
Three-anchor blend: aggregate APEX per sector (engine's view), sector index momentum (price-level confirmation), and breadth (is the sector rallying broadly or only on a handful of names — narrow rallies are fragile per Lo-MacKinlay 1990). Same sector score is assigned to every ticker in the sector, intentionally — within-sector dispersion belongs to the other 11 factors. Blend weights are not disclosed; the structure follows Moskowitz-Grinblatt 1999 plus the breadth correction.
Sector membership comes from the universe table (GICS classification at sector level — 11 buckets: Tech, Healthcare, Financials, Consumer Disc, Consumer Staples, Industrials, Energy, Materials, Utilities, Real Estate, Communication). Sector-aggregate APEX scores are computed during the 06:00 UTC universe sweep using the prior day's per-ticker scores, so no temporal leakage. Sector-index momentum uses an equal-weight composite within the GICS sector to avoid contamination from the megacap tail. Breadth is the fraction of within-sector tickers carrying a bullish APEX verdict that day.
Sector is the slowest-moving factor in the composite — it's measured at the industry layer, so it changes weekly rather than daily. It pairs with Spillover (Cohen-Frazzini 2008): when sector momentum is rising AND a major supplier is propagating positive flow, the SUPPLY-CHAIN MOMENTUM pattern fires. Sector also amplifies single-stock momentum — a high-momentum stock in a high-momentum sector is doubly bullish, and we capture this in the regime-conditional weights rather than as a separate confluence pattern. In risk-off regimes, sector amplifier is reduced — sector rotation reverses unpredictably during macro shocks.
Two limitations. (1) GICS bucket coarseness. Tech contains both NVDA (semis) and CRM (enterprise software); they trade differently most quarters. The 11-bucket GICS taxonomy is too coarse for fine sector rotation. We're aware of GICS sub-sector and could refine, but the trade-off is sample size — 50-stock sub-sectors give noisy aggregates. (2) Macro shocks reset sectors abruptly. The energy sector's 2020 collapse and 2022 rebound were both regime-driven, and sector momentum mis-fired at both turns. The regime amplifier mitigates by halving sector's weight in risk-off, but sectors that abruptly become regime-driven (energy after a war, healthcare in a pandemic) remain a known noise source.
Every ticker page shows the per-factor decomposition. The Sector score is one of twelve composing the 0–100 APEX composite.