CycleMap Global cyclical cluster monitor
Data as of
Cycle phase × market structure · global

Buy the bottom of the cycle — where the moat still sets the price.

Global cyclical stocks are organised into a four-level tree: Theme → Industry → Sub-industry → Niche. Every node gets a cycle phase from its own equal-weight index, combining a detrended price oscillator with the earnings cycle (where margins sit in their 10-year range). Every niche gets a Monopoly Index: how concentrated its supply is, how hard it is to enter, how disciplined producers are, and how well margins held up through past troughs. The best entries sit in the bottom arc of the clock and on its outer ring. Each stock dossier adds an entry plan, with accumulation bands 1–2σ below the 3-yr trend.

Selection funnelEvery label in this report is one step of the same funnel, and each step is a subset of the one before. Click a step to load it into the screener.
Since last update
Action listRule-based calls that combine cycle bottom, pricing power, value, trap risk, momentum, entry band, commodity confirmation and regime fit. Click a row for the dossier.
Idea board
Key takeawaysComputed live from the data in this report.

Macro regime lens

How each theme, niche and stock has historically performed in the major economic regimes, measured as annualised return relative to the global cyclical universe during those weeks (2005 onwards). Regimes are classified each week from market data available at the time: T-bill and 10-yr yields, the TIPS/Treasury breakeven proxy, copper/gold for growth, the dollar index, the yield curve, VIX and Brent. The lens you pick below re-scores the screener, scorecard, Idea Board and every stock dossier.

Regime tape, 2005 → today

Each lane shows when a regime was on (it needs to hold in 3 of 4 weeks). Hover a band for its dates, or click it to set the lens.

What usually comes next?

Odds a regime appears within 26 weeks

Historical frequency that each regime shows up within 26 weeks, given today's growth×inflation quadrant, against the base rate (grey tick). Blue = more likely than usual, amber = about normal, grey = less likely. Conditioned on the quadrant only, so active regimes can score below 100%.
Regime lens

Theme × regime: relative performance

Annualised excess return vs the cyclical universe, shrunk toward zero for short samples. Blue = outperformed, red = underperformed. Blue headers are active now. Click a column to set the lens, or a theme to open it.

Niches: winners & losers

Regime-onset playbook

What led and lagged in the first 26 weeks after a regime began (cumulative excess vs universe, averaged across past onsets and shrunk for few episodes). Use it to prepare for the next turn.

When does bottom-fishing pay?

Macro dashboard

Shaded = weeks when the selected regime was active.

The cycle clock

Angle = position in the cycle (trough at 6 o'clock, rising up the left, peak at 12, falling down the right). Radius = Monopoly Index (outer ring = more pricing power). Tails show the last 3 months of travel. Switch the level to drill from themes down to single stocks.
Cluster tree· sorted by opportunity
Node · phaseMonopoly idxOpp.

Cycle atlas

The whole universe as one zoomable tree. Rings run Theme → Industry → Sub-industry → Niche → stock, colored by each node's own cycle phase. Click a segment to zoom in, click the centre to zoom out, and click a stock to open its dossier.

Pricing-power anatomy

Pricing power comes in two kinds. Structural (Monopoly Index) comes from concentration, barriers and discipline, and lets a company raise prices every year. Shock (scarcity pricing power) comes when supply can be suddenly cut by a chokepoint, rerouting, sanctions, export controls or outages, or can't be added for years, while buyers can't do without it. Every niche is plotted on both. Ringed dots are in the bottom zone of their cycle.
Shock levers nearest the bottom· shock power ≥ 65, sorted by distance to trough

Chokepoint & scarcity map

Where supply can be cut and who gains pricing power when it is. The animated green line shows the Red Sea case: when Bab-el-Mandeb closes, Asia–Europe ships reroute around the Cape (green) instead of through Suez (red). That's 10–14 extra days per voyage, enough to absorb roughly 8% of the world's ships. Click any marker for the sectors and products that benefit.

Commodity pulse

The price of what a sector sells sets its cycle. Each commodity is run through the same cycle oscillator and checked for a live shock: a 13-week move in the top or bottom 10% of its own history. A stock's bottom counts as confirmed when its driver commodity is bottoming too. Historically, that mattered a lot (see the evidence card).

Commodity cycle clock

Labelled: live shocks and commodities in the bottom zone. Hover any dot for details.

Does commodity confirmation matter?

Shock propagation

How a supply shock travels down the value chain: chokepoint → scarce product → the sectors that must buy it. Producers of the scarce product gain pricing power (winners), while buyers who can't substitute absorb the cost (losers). Hover to trace a path, or click a product to see who wins and who pays.

Value-chain deep dives

Pricing power often concentrates in a single input with no substitute, a tiny share of the buyer's cost and a handful of suppliers: helium in industrial gases, photoresists in chip chemicals, transformers in the grid, antimony in munitions. Each card scores the product, explains the shock mechanism and links the listed stocks most exposed to it (dot = their cycle phase).

Sector scorecard

Every industry on one grid, with a darker cell meaning a stronger reading. Trap risk runs warm, so darker means riskier. Click an industry to expand its niches and a written briefing, or click a column header to sort.

Cycle breadth by theme

Share of each theme's stocks in each cycle phase, ordered around the cycle. Blue and green (left) are the bottom zone.

Opportunity map

Every stock that passes the filters, plotted by Bottom score (how close it is to a cycle trough, on price and earnings) against Pricing Power (niche Monopoly Index + the company's own through-cycle margins + share leadership). Top-right = enter.

Does the phase signal work?

Risk by entry phase

Medians and tails are more reliable than averages (a few 10× winners skew means). Survivorship bias mostly hides bankruptcies in the Late Decline and Trough rows, so the true gap in favour of Early Recovery is likely wider.

Does an earnings turn help?

Quarterly data since ~2018, with a 60-day reporting lag so only public numbers are used. "Earnings turning" = TTM margin above its level 2 quarters ago, or sales growth accelerating.

Do monopoly bottoms pay more?

Bottom zoneAll other phases

How to read a signal

  • 1Early Recovery = prime candidate: the stock has already survived its trough and turned up while still below its 3-yr trend. Historically its median return matched buying the trough, with about 40% less tail risk and the least survivorship bias.
  • 2Trough, basing: starter position only (Stage in). Late Decline or Trough still falling: wait. This is where most cyclical bankruptcies happen (17% chance of a 50%+ drawdown within the year).
  • 3Earnings turning: reported margins rising, or sales growth accelerating. In Early Recovery this lifted the median 12m return from +16% to +27% and cut the 40%-loss rate from 6% to about 1%. Analyst estimate upgrades (consensus EPS up over 30/90 days, more upgrades than cuts) count as an early pass, marked "◔ early", because analysts usually move before reported numbers.
  • 4Aligned cycle stack: the stock, its niche and its industry are all in the bottom zone. A stock that's down alone may be broken, not cyclical.
  • !Peak phase + peak margins: the classic cyclical trap. P/E looks cheap because earnings are at their high.

Screener

Default ranking: Action tier first, then entry score within each tier. The Blocker column shows the first funnel gate a stock fails, i.e. why a high entry score isn't Accumulate. The four tree-level filters cascade (picking a theme narrows the industry list, and so on). Filters combine with AND across filters and OR within a filter. Click any row for the full cycle dossier.
Presets

Niche dossiers

One card per niche (the finest level of the tree), grouped by theme. Each card shows the niche's equal-weight index over 15 years, with a cycle barcode underneath (blue = below trend, red = above) and the detected troughs marked. "Hist. edge" is the niche's average forward 12-month return when it was in the bottom zone, compared with all other times.

Methodology

Everything is computed from live TradingView scanner data (prices, USD market caps, margins, 20-yr annual and 32-quarter fundamentals) and 20 years of weekly local-currency prices, aligned to Friday week-ends across exchanges. Re-run python3 refresh.py to update.

① Cycle phase (price)

For each stock and for each tree node's equal-weight index:

  • O = EMA₈(log price) − SMA₁₅₆w(log price): price relative to its 3-yr trend, z-scored.
  • M = 13-week change in O, z-scored.
  • Cycle position = angle of (O, M): 0% = trough, 25% = mid-upswing, 50% = peak, 75% = mid-downswing.
  • Phases: Trough (92–106%), Early Recovery (6–20%), Expansion, Peak (40–60%), Downturn, Late Decline (78–92%).

② Monopoly Index (market structure)

  • Structural (60%), scored per niche: global supply concentration (45%), barriers to new supply (35%) and observed pricing discipline (20%).
  • Empirical (40%): niche-median 10-yr gross margin, 10-yr median and minimum EBITDA margin (trough resilience) and margin stability, ranked across niches.
  • Higher tree levels = market-cap-weighted average of their niches.
  • Stock Pricing Power = 60% niche index + 25% own margin and ROIC record + 15% leadership within its niche.

④ Shock (scarcity) pricing power

  • Structural shock (70%), scored per niche: demand inelasticity (40%: essential, no substitute, small cost share), supply rigidity (35%: capacity lead time, storability, spare capacity, qualification) and chokepoint exposure (25%: lanes, sanctions, export controls, single-country supply).
  • Empirical convexity (30%): the niche's historical upside tail (95th percentile minus median of 26-week returns), ranked across niches.
  • Combined pricing power = 60% Monopoly Index + 40% shock power. It drives stock Pricing Power and node Opportunity.
  • Single-product scarcity score = 35% demand + 30% supply + 20% chokepoint + 15% supplier concentration.

③ Scores

  • Bottom = 65% price (closeness to just past the trough, depth below trend, low in 10-yr range, 3-yr drawdown) + 35% earnings (TTM or latest-FY margin percentile, revenue contraction).
  • Quality = net debt / EBITDA and FCF sign: the balance-sheet strength needed to survive the trough.
  • Value = rank of mid-cycle EV/EBITDA, i.e. today's multiple × (current EBITDA ÷ 10-yr median EBITDA). Lower is better; financials use P/B.
  • Trap risk = falling 10-yr revenue (35%) + more than 2 yrs below trend (25%) + niche bottoms that historically kept falling (25%) + margins still falling from lows (15%).
  • Entry = Bottom0.42 × Pricing Power0.40 × Quality0.08 × Value0.10 × (1 − 0.3 × trap risk).
  • Funnel (strictly nested): Universe → bottom zone → pricing power ≥ 60 → Sweet spot (+ bottom ≥ 55, trap < 50, quality ≥ 20) → survived the trough (Early Recovery) → Accumulate (+ momentum basing/turning, commodity not contradicting, regime fit ≥ −3%, price ≤ 3-yr trend, earnings turning = TTM margin up vs 2 quarters ago or sales growth accelerating, or analyst upgrades: consensus EPS +2% over 30d or +5% over 90d with no more cuts than raises (early signal, tagged; snapshots are now saved every run so it can be back-tested later)). Stage in = sweet spot in a trough that has stopped falling (starter only), or Early Recovery awaiting a confirmation. Sweet spots still falling go to Watch. The bottom score targets early recovery (cycle position ≈ 10%) rather than the trough itself, which reduces bankruptcy and survivorship risk. Watch = bottoming but short on pricing power or bottom score, or high pricing power still in Downturn. Late-cycle = peak phase with peak margins. Avoid = trap risk ≥ 50 or a stressed balance sheet. Entry score ranks stocks within each step. Default ranking everywhere = action tier, then entry score. A high entry score with a lower tier means a gate is failing (see the Blocker column).
  • Aligned stack (shown separately): the stock, its niche and its industry are all in the bottom zone.