Industry Leaders Global: Revenue Rankings Tested Across 13 Markets

Industry Leaders CAGR by Exchange (2001-2025)

Contents

  1. The Strategy
  2. Results: All 13 Exchanges
  3. What the Pattern Shows
  4. Why India Works and Others Don't
  5. Japan and UK: Notable Markets
  6. Exchanges Excluded
  7. Run It Yourself
  8. Limitations

We ran the same strategy on 13 stock exchanges: take the top 3 companies by revenue in every industry showing 5%+ growth, hold equal weight, rebalance annually. The test ran from 2001 to 2025.

One market beat SPY. Most didn't. The pattern reveals something about when revenue leadership actually matters.

Industry Leaders CAGR by Exchange (2001-2025)
Industry Leaders CAGR by Exchange (2001-2025)


The Strategy

Signal (applied to each exchange separately): 1. Industry average YoY revenue growth >= 5% 2. Company is in the top 3 by current FY revenue within that qualifying industry

Portfolio: Equal weight. Annual July rebalance. Exchange-specific market cap floors.

Benchmark: SPY (8.89% CAGR over the test period), used as a consistent global reference.

Full methodology at backtests/METHODOLOGY.md.


Results: All 13 Exchanges

Exchange Market CAGR vs SPY Max DD Invested
BSE_NSE India 11.88% +2.98% -16.2% 20/24
NYSE+NASDAQ+AMEX US 8.65% -0.25% -36.2% 24/24
TSX Canada 7.95% -0.95% -31.4% 24/24
LSE UK 7.64% -1.25% -27.8% 24/24
XETRA Germany 6.25% -2.65% -35.6% 24/24
STO Sweden 6.35% -2.55% -36.7% 18/24
KSC South Korea 6.12% -2.77% -23.5% 18/24
TAI Taiwan 6.19% -2.70% -13.9% 18/24
JPX Japan 5.11% -3.79% -52.4% 23/24
SHZ+SHH China 4.20% -4.69% -59.9% 24/24
SIX Switzerland 4.09% -4.80% -46.3% 24/24
SET Thailand 4.01% -4.88% -44.6% 20/24
HKSE Hong Kong 3.58% -5.32% -30.8% 24/24

CAGR in local currency. SPY benchmark in USD. "Invested" = years with 10+ qualifying stocks.


What the Pattern Shows

India is the outlier. At +2.98% vs SPY, it's the only market that demonstrates the revenue leadership premium the academic literature describes. The margin isn't marginal, it's consistent over 24 years.

The US nearly matches. At -0.25%, the gap is negligible. A strategy holding 229 stocks equally weighted across all growing US industries tracks SPY closely by construction. With that level of diversification, the average outcome is the market average.

Western developed markets trail modestly. Canada (-0.95%), UK (-1.25%), Germany (-2.65%), Sweden (-2.55%) all underperform, but by amounts that are within normal noise for a strategy with this level of diversification. These aren't disasters. They're markets where the revenue leadership signal doesn't generate consistent excess returns.

Asia-Pacific is disappointing. Japan (-3.79%), China (-4.69%), Hong Kong (-5.32%), and Thailand (-4.88%) show the widest gaps. South Korea (-2.77%) and Taiwan (-2.70%) are closer to the middle of the pack.

Taiwan has the lowest max drawdown. -13.92% over 24 years is remarkable risk management for a concentrated tech-export economy. The high cash periods (strategy not invested in 6 of 24 years) explain part of this.


Why India Works and Others Don't

The signal (revenue leadership in growing industries) should theoretically work everywhere. The idea is that dominant companies in growing industries have durable moats. But the data shows it only adds value in India. Why?

Industry concentration. In India, the top 3 companies by revenue often control 50-80% of industry revenue. In Germany, the UK, or Japan, industries are more fragmented. A manufacturing industry with 12 similarly-sized players doesn't produce the same moat effect as one with 3 dominant players.

Growth rates. India's economy grew at 7-9% annually for most of the test period. When the whole economy is expanding at that rate, revenue leaders in growing industries are compounding fast. In Japan (0-1% nominal growth for much of the period), being the revenue leader in a stagnant industry doesn't help.

Capital market efficiency. The US, UK, Germany, and Japan are highly efficient markets. Revenue leadership is publicly known. If it reliably predicted outperformance, it would already be priced in. India's markets, while large, have historically been less covered by institutional research, potentially allowing some pricing inefficiency to persist.


Japan and UK: Notable Markets

Japan (JPX): 5.11% CAGR, -52.4% max drawdown

Japan's revenue leaders trail SPY by 3.79% annually. The large drawdown (-52.44%) reflects Japan's market structure: high cyclicality and significant volatility even for large-cap revenue leaders. Japanese corporate culture historically prioritized revenue and market share over shareholder returns, which may reduce the relationship between revenue leadership and stock performance.

Note: Japanese FY data was verified and confirmed clean. Adjusted close data has some known anomalies in FMP for a subset of symbols, all above the ¥100B market cap threshold used in this backtest.

UK (LSE): 7.64% CAGR, -27.8% max drawdown

UK results are the closest to the US among international markets. At -1.25% vs SPY, the strategy trails modestly with a relatively low max drawdown. UK large-cap revenue leaders in banking, energy, consumer goods, and pharma are globally diversified businesses, which may reduce the domestic revenue-leadership premium.


Exchanges Excluded

ASX (Australia) and SAO (Brazil): Excluded due to confirmed data quality issues in adjusted close prices (split adjustment artifacts that inflate backtest returns). Results aren't reliable.

JNB (South Africa): The strategy held cash in 10 of 24 periods due to insufficient qualifying stocks. With only 14 invested periods and a universe of ~270 stocks, statistical significance is low.

SES (Singapore): Only 17 of 24 periods had qualifying stocks, with fewer than 15 average holdings. Thin universe limits reliability.


Part of a Series: US | India

Run It Yourself

Current global screen:

WITH latest_rev AS (
 SELECT i.symbol, p.industry, p.exchange, p.companyName,
 i.revenue, i.date AS filing_date,
 ROW_NUMBER() OVER (PARTITION BY i.symbol ORDER BY i.dateEpoch DESC) AS rn
 FROM income_statement i
 JOIN profile p ON i.symbol = p.symbol
 WHERE i.period = 'FY' AND i.revenue > 0
 AND p.industry IS NOT NULL AND p.industry != ''
),
prior_rev AS (
 SELECT i.symbol, i.revenue AS prior_revenue,
 ROW_NUMBER() OVER (PARTITION BY i.symbol ORDER BY i.dateEpoch DESC) AS rn
 FROM income_statement i WHERE i.period = 'FY' AND i.revenue > 0
),
company_growth AS (
 SELECT c.symbol, c.companyName, c.exchange, c.industry,
 c.revenue, p.prior_revenue, c.filing_date,
 (c.revenue - p.prior_revenue) / p.prior_revenue AS rev_growth
 FROM latest_rev c JOIN prior_rev p ON c.symbol = p.symbol
 WHERE c.rn = 1 AND p.rn = 2 AND p.prior_revenue > 0
),
company_filtered AS (
 SELECT cg.*, mc.marketCap FROM company_growth cg
 JOIN key_metrics_ttm mc ON cg.symbol = mc.symbol
 WHERE mc.marketCap > 0
),
industry_agg AS (
 SELECT exchange, industry, COUNT(*) AS n_companies,
 ROUND(AVG(rev_growth) * 100, 2) AS avg_growth_pct
 FROM company_filtered GROUP BY exchange, industry
 HAVING COUNT(*) >= 3 AND AVG(rev_growth) >= 0.05
),
leaders AS (
 SELECT cf.symbol, cf.companyName, cf.exchange, cf.industry,
 ROUND(cf.revenue / 1e9, 2) AS revenue_b,
 ROUND(cf.rev_growth * 100, 2) AS rev_growth_pct,
 ia.avg_growth_pct AS industry_growth_pct,
 ROUND(cf.marketCap / 1e9, 2) AS mktcap_b, cf.filing_date,
 ROW_NUMBER() OVER (PARTITION BY cf.exchange, cf.industry ORDER BY cf.revenue DESC) AS rev_rank
 FROM company_filtered cf JOIN industry_agg ia ON cf.exchange = ia.exchange AND cf.industry = ia.industry
)
SELECT symbol, companyName, exchange, industry, revenue_b,
 rev_growth_pct, industry_growth_pct, mktcap_b, filing_date, rev_rank
FROM leaders WHERE rev_rank <= 3 ORDER BY exchange, industry, rev_rank LIMIT 500

Run this query on Ceta Research Data Explorer


Limitations

Local currency returns vs USD benchmark: Each exchange's portfolio returns are in local currency. The SPY benchmark is in USD. Exchange rate movements aren't reflected in the comparison. A market with 6% CAGR in local currency but 3% annual currency depreciation vs USD would look better here than it performs for a USD investor.

Varying data quality by exchange: FMP financial data quality varies. Some exchanges have thinner coverage in early years (2001-2006). This is most relevant for Thailand, Taiwan, and Korea in the early periods.

Different market cap thresholds: Each exchange uses a market cap threshold calibrated in local currency. This keeps the selectivity roughly consistent but doesn't create perfectly comparable universes.

SPY as universal benchmark: SPY measures US large-cap performance, not global market performance. Using MSCI World or a local index benchmark would give a more market-specific comparison.


Data: Ceta Research (FMP financial data warehouse), July 2001 through July 2025. Returns in local currency per exchange. SPY benchmark in USD. Full methodology: github.com/ceta-research/backtests/blob/main/METHODOLOGY.md.

Read more