Sector Mean Reversion on Thailand (SET): 8.82% CAGR, +0.80% vs S&P 500

Growth of THB 10,000 in Sector Mean Reversion Thailand (SET) vs S&P 500 from 2000 to 2025

Thailand's sector rotation strategy returned 8.82% annually from 2000 to 2025, in THB, against the S&P 500's 8.02%. The +0.80% annual excess is slim but real. More interesting is the 57.05% down capture: in years when the global market falls, this strategy absorbs just 57% of SPY's downside, on average. The trade-off is a small universe (27 average stocks), 9 cash periods out of 104, and three consecutive years of significant underperformance from 2023 to 2025.

Contents

  1. Method
  2. What Is Sector Mean Reversion?
  3. Run This Screen Yourself
  4. What We Found
  5. Most Selected Sectors (95 invested quarters)
  6. Notable Years
  7. Full Annual Returns
  8. Backtest Methodology
  9. Limitations
  10. Takeaway
  11. Part of a Series
  12. References

Method

  • Data source: Ceta Research (FMP financial data warehouse)
  • Universe: SET (Stock Exchange of Thailand), market cap > THB 5B (~USD $140M)
  • Period: 2000-2025 (26 years, 104 quarterly periods)
  • Rebalancing: Quarterly (January, April, July, October)
  • Signal: Buy all stocks in the bottom 2 sectors by 12-month trailing equal-weighted return
  • Portfolio construction: Equal weight all qualifying stocks in selected sectors
  • Benchmark: S&P 500 Total Return (SPY)
  • Cash rule: Hold cash if fewer than 5 stocks qualify
  • Currency note: Returns are in THB (local currency). Benchmark is SPY in USD.

Historical financial data with 45-day lag to prevent look-ahead bias. Full methodology: backtests/METHODOLOGY.md


What Is Sector Mean Reversion?

The strategy buys the two most out-of-favor sectors by trailing 12-month return at the start of each quarter. The thesis is that sector underperformance is partly cyclical, sectors that have fallen hardest often recover as sentiment normalizes, credit conditions ease, or earnings troughs pass.

Thailand adds a specific context to this. SET is an export-driven, commodity-influenced market. Energy, Materials, and Industrials cycle through extended droughts tied to global commodity prices, regional trade flows, and domestic political cycles. When those sectors fall out of favor, the oversell can be deep, and the recovery, when it comes, can be fast. The 2002-2003 and 2009-2010 runs in this data reflect exactly that pattern.


Run This Screen Yourself

The current sector rankings and stock screen are live on Ceta Research Data Explorer. Run the two queries below in sequence.

Step 1: Rank sectors by 12-month trailing return (SET universe)

WITH prices AS (
 SELECT
 e.symbol,
 e.adjClose,
 CAST(e.date AS DATE) AS trade_date
 FROM stock_eod e
 JOIN profile p ON e.symbol = p.symbol
 WHERE p.sector IS NOT NULL
 AND p.sector != ''
 AND p.marketCap > 5000000000
 AND p.exchange IN ('SET')
 AND CAST(e.date AS DATE) >= CURRENT_DATE - INTERVAL '400' DAY
 AND e.adjClose IS NOT NULL
 AND e.adjClose > 0
),
recent AS (
 SELECT symbol, adjClose AS recent_price, trade_date AS recent_date
 FROM prices
 QUALIFY ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY trade_date DESC) = 1
),
year_ago AS (
 SELECT symbol, adjClose AS old_price, trade_date AS old_date
 FROM prices
 WHERE trade_date <= CURRENT_DATE - INTERVAL '252' DAY
 QUALIFY ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY trade_date DESC) = 1
),
stock_returns AS (
 SELECT r.symbol, pr.sector,
 (r.recent_price / ya.old_price - 1) * 100 AS return_12m
 FROM recent r
 JOIN year_ago ya ON r.symbol = ya.symbol
 JOIN profile pr ON r.symbol = pr.symbol
 WHERE ya.old_price > 0
 AND r.recent_price > 0
 AND (r.recent_price / ya.old_price - 1) BETWEEN -0.99 AND 5.0
 AND r.recent_price >= 0.50
)
SELECT
 sector,
 ROUND(AVG(return_12m), 2) AS avg_return_12m_pct,
 COUNT(DISTINCT symbol) AS n_stocks,
 ROW_NUMBER() OVER (ORDER BY AVG(return_12m) ASC) AS rank_worst_to_best
FROM stock_returns
GROUP BY sector
HAVING COUNT(DISTINCT symbol) >= 3
ORDER BY avg_return_12m_pct ASC;

Note the two sectors with the lowest avg_return_12m_pct. Use those names in Step 2.

Step 2: Stocks to buy (replace sector names with Step 1 output)

-- Replace 'Energy' and 'Basic Materials' with your Step 1 results
WITH prices AS (
 SELECT e.symbol, e.adjClose, CAST(e.date AS DATE) AS trade_date
 FROM stock_eod e
 JOIN profile p ON e.symbol = p.symbol
 WHERE p.sector IS NOT NULL
 AND p.sector != ''
 AND p.marketCap > 5000000000
 AND p.exchange IN ('SET')
 AND CAST(e.date AS DATE) >= CURRENT_DATE - INTERVAL '400' DAY
 AND e.adjClose IS NOT NULL
 AND e.adjClose > 0
),
recent AS (
 SELECT symbol, adjClose AS recent_price, trade_date AS recent_date
 FROM prices
 QUALIFY ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY trade_date DESC) = 1
),
year_ago AS (
 SELECT symbol, adjClose AS old_price, trade_date AS old_date
 FROM prices
 WHERE trade_date <= CURRENT_DATE - INTERVAL '252' DAY
 QUALIFY ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY trade_date DESC) = 1
),
stock_returns AS (
 SELECT r.symbol, pr.sector, pr.companyName, pr.exchange, pr.marketCap,
 r.recent_price,
 (r.recent_price / ya.old_price - 1) * 100 AS return_12m
 FROM recent r
 JOIN year_ago ya ON r.symbol = ya.symbol
 JOIN profile pr ON r.symbol = pr.symbol
 WHERE ya.old_price > 0
 AND r.recent_price > 0
 AND (r.recent_price / ya.old_price - 1) BETWEEN -0.99 AND 5.0
 AND r.recent_price >= 0.50
)
SELECT
 symbol, companyName, sector,
 ROUND(return_12m, 2) AS return_12m_pct,
 ROUND(recent_price, 2) AS current_price,
 ROUND(marketCap / 1e9, 2) AS market_cap_billions_thb
FROM stock_returns
WHERE sector IN ('Energy', 'Basic Materials')
ORDER BY sector ASC, return_12m_pct ASC;

What We Found

Thailand produces a slim positive excess return over 26 years. The headline numbers are modest by emerging market standards, but the down capture of 57.05% is genuinely attractive, better than most exchanges in the study.

Growth of THB 10,000 in Sector Mean Reversion Thailand (SET) vs S&P 500 from 2000 to 2025
Growth of THB 10,000 in Sector Mean Reversion Thailand (SET) vs S&P 500 from 2000 to 2025

Metric Portfolio S&P 500
CAGR 8.82% 8.02%
Excess CAGR +0.80%
Max Drawdown -58.44% -45.53%
Annualized Volatility 27.26%
Sharpe Ratio 0.232 0.357
Sortino Ratio 0.419
Calmar Ratio 0.151
Up Capture 93.15%
Down Capture 57.05%
Win Rate vs SPY 45.19%
Avg Stocks per Period 27.4
Cash Periods 9 of 104

The 57.05% down capture is the most useful number in this table. It means the strategy, on average, fell about half as much as SPY in negative market years. That's not a defensive design feature, there's no explicit hedge, but it reflects that Thai beaten-down sectors sometimes happen to be domestic and commodity-driven, not correlated with US equity drawdowns.

The Sharpe of 0.232 is below SPY's 0.357. With 27.26% annualized volatility and only +0.80% excess return, the risk-adjusted case is weak. The 45.19% win rate means the strategy beats SPY in fewer than half of individual calendar years. The alpha comes from the magnitude of wins in good years (2002, 2003, 2009, 2010, 2022), not their frequency.

Annual returns: Sector Mean Reversion Thailand (SET) vs S&P 500, 2000-2025
Annual returns: Sector Mean Reversion Thailand (SET) vs S&P 500, 2000-2025

Most Selected Sectors (95 invested quarters)

Sector Quarters Selected
Energy 27 (28%)
Communication Services 24 (25%)
Technology 23 (24%)
Basic Materials 23 (24%)
Industrials 19 (20%)
Utilities 18 (19%)

Energy was selected in more than a quarter of all invested quarters. Thailand's oil and gas sector. PTT and its affiliates, cycles through extended periods of underperformance tied to global crude prices, refinery margins, and government pricing policy. Communication Services reflects Thailand's telecom oligopoly (ADVANC, TRUE), which has faced structural pressure from data pricing and consolidation. Technology and Basic Materials round out the picture with petrochemical and electronics companies sensitive to export demand.


Notable Years

2002-2003: +43.09% and +88.19%. The best consecutive run in the backtest. Thailand was recovering from the 1997 Asian financial crisis hangover, and beaten-down sectors snapped back hard as commodity prices recovered and regional trade flows normalized. The 2003 excess of +64.07% over SPY is the largest single-year margin in the study. Energy and Materials, which had been cheap for years, led the reversal.

2008-2009: -53.07% then +81.78%. The pattern that defines high-beta emerging markets. The strategy lost 53.07% in 2008, worse than SPY's -34.31%, then gained 81.78% in 2009, the strongest recovery year in the data. This is the down-capture figure in action: the 2008 loss was worse than SPY, but the 2009 rebound far exceeded it. If you stayed in through the 2008 loss, the 2009 gain was violent and fast.

2013: -10.18%, excess -37.95%. Thailand's worst excess return year. The country experienced prolonged political unrest through 2013, protests, government dissolution, and ultimately the 2014 coup. During domestic political crises, foreign investors pulled capital broadly, dragging down sectors regardless of their fundamental cycle. The beaten-down sectors the strategy owned kept falling. SPY returned +27.77%. The -37.95% excess gap is the widest underperformance margin in the 26-year period.

2022: +11.24%, excess +30.23%. The strategy's strongest recent year. When global tech sold off in 2022 and SPY fell -18.99%, Thailand's Energy and Materials sectors held up and gained. Commodity prices were elevated, Thai exports were recovering, and the sectors the strategy owned were largely domestic and commodity-driven rather than rate-sensitive. This is when the low down capture shows up in reverse: the strategy's sector mix just didn't share the same drivers as the US market in 2022.

2023-2025: -2.75%, -5.16%, -15.02% (excess: -28.75%, -30.44%, -32.90%). Three consecutive years of significant underperformance. Thailand's economy has faced real structural headwinds: weak tourism recovery post-COVID, sluggish manufacturing, political instability, and currency pressure. The strategy kept rotating into beaten-down Energy, Communication Services, and Technology sectors that continued to fall. SPY compounded at double-digit returns over the same period. Three years of -28% to -32% annual excess loss is a significant sequence and the primary reason the long-term excess return is only +0.80%.


Full Annual Returns

Year Portfolio S&P 500 Excess
2000 0.00% (cash) -10.50% +10.50%
2001 +8.74% -9.17% +17.91%
2002 +43.09% -19.92% +63.01%
2003 +88.19% +24.12% +64.07%
2004 -8.77% +10.24% -19.01%
2005 +16.97% +7.17% +9.80%
2006 -10.46% +13.65% -24.11%
2007 +34.69% +4.40% +30.29%
2008 -53.07% -34.31% -18.76%
2009 +81.78% +24.73% +57.05%
2010 +39.23% +14.31% +24.92%
2011 +9.14% +2.46% +6.68%
2012 +20.37% +17.09% +3.28%
2013 -10.18% +27.77% -37.95%
2014 +20.70% +14.50% +6.20%
2015 +7.77% -0.12% +7.89%
2016 +18.47% +14.45% +4.02%
2017 +25.15% +21.64% +3.51%
2018 -28.46% -5.15% -23.31%
2019 +5.02% +32.31% -27.29%
2020 +16.92% +15.64% +1.28%
2021 +15.40% +31.26% -15.86%
2022 +11.24% -18.99% +30.23%
2023 -2.75% +26.00% -28.75%
2024 -5.16% +25.28% -30.44%
2025 -15.02% +17.88% -32.90%

The 45.19% win rate is visible here: the strategy beats SPY in fewer than half of individual years. The excess return comes from years like 2002 (+63.01%), 2003 (+64.07%), 2009 (+57.05%), and 2022 (+30.23%), large, concentrated wins. The strategy loses to SPY in most other years by smaller amounts. The math holds over 26 years, but it requires tolerance for long stretches of relative underperformance.


Backtest Methodology

Parameter Value
Signal 12-month trailing equal-weighted sector return
Selection Bottom 2 sectors each quarter
Universe SET (Stock Exchange of Thailand), market cap > THB 5B
Portfolio Equal weight all qualifying stocks in selected sectors
Rebalancing Quarterly (Jan, Apr, Jul, Oct)
Cash rule Hold cash if < 5 qualifying stocks
Transaction costs Size-tiered model
Data lag 45 days (prevents look-ahead bias)
Period 2000-2025 (104 quarterly periods)
Benchmark S&P 500 Total Return (SPY)

Limitations

Currency mismatch. All returns are in THB. The S&P 500 benchmark is in USD. THB has been reasonably stable against USD over the 26-year period, but the comparison isn't clean. For a USD-based investor, currency conversion would meaningfully alter the realized excess return in any given year and likely reduce the 26-year excess.

Small universe. With only 27 average stocks per period and 9 cash periods out of 104, this strategy is more concentrated than most exchanges in the study. Individual company outcomes matter more when you're holding 15-25 stocks. The 9 cash periods (versus 3 for the US) reflect times when the qualifying universe simply didn't reach the minimum stock count, typically in early years or during market dislocations.

Sector concentration. Energy and Communication Services together account for 51 of 95 invested quarters. This is effectively a two-sector bet cycling between PTT group stocks, Thai telecoms, and petrochemical companies. That's a narrow structural bet, not broad sector diversification.

Recent deterioration. The 2023-2025 run of -28.75%, -30.44%, -32.90% annual excess is the worst three-year stretch in the study. Thailand's post-COVID economic recovery has been slower than expected, and the sectors the strategy rotated into didn't revert. Three years of persistent underperformance can and does happen with mean reversion strategies, but it should be weighed against the slim +0.80% long-run excess.

Liquidity. SET large caps (above THB 5B) are reasonably liquid for institutional-scale positions, but bid-ask spreads and market depth are thinner than developed markets. Transaction costs in practice will be higher than the model's size-tiered estimates, especially at rebalance dates.


Takeaway

Thailand's sector mean reversion produced +0.80% annual excess over 26 years with a notably low down capture of 57.05%. The strategy absorbed just over half of SPY's downside in falling markets, on average. That's the genuine positive in this data.

The negatives are real too. The Sharpe of 0.232 is below SPY. The win rate of 45.19% means you're trailing the index in most individual years. The small universe of 27 average stocks creates concentration risk. And the 2023-2025 underperformance streak shows that the recent Thai market hasn't rewarded the beaten-down sector playbook.

The strategy's best decades were 2001-2010, when Thailand's commodity and export cycle drove large sector swings that reverted reliably. Whether that cycle resumes depends heavily on Thailand's economic trajectory, tourism recovery, manufacturing competitiveness, and regional trade dynamics, not on the signal's mechanics.

USD-based investors should discount both the returns and the comparison for currency.


Part of a Series

We tested this strategy across 14 exchanges. Other analyses in the series:


References

Moskowitz, T. J., & Grinblatt, M. (1999). Do industries explain momentum? Journal of Finance, 54(4), 1249-1290.


Part of a Series: US | Global | Global | US | UK | Taiwan | Taiwan | Switzerland

Data: Ceta Research, FMP financial data warehouse. Universe: SET (Stock Exchange of Thailand). Market cap > THB 5B (~USD $140M). Quarterly rebalance, equal weight, 2000-2025. Returns in THB. Benchmark: SPY (USD). Full methodology: METHODOLOGY.md. Past performance doesn't guarantee future results.

Read more