Skip to main content
Back to Tutorial
StarterCNMomentum7 min readUpdated 2026-01-28

50ETF Momentum Rotation · the most robust factor

Monthly cross-sectional momentum on CN blue chips with an Amihud illiquidity penalty. The simplest viable production momentum strategy.

Cross-sectional momentum is the most replicated anomaly in finance. This template is the minimum implementation that avoids the three classic mistakes.

Fork the template to follow along:
TemplateCNMomentum
50ETF Momentum Rotation

Monthly 12-1 momentum with Amihud illiquidity penalty

Sharpe
1.12
Return
+14.6%
Max DD
−16.4%
Forks
32

Why this works

Cross-sectional momentum is the single most robust equity factor globally — it shows up in every market regime studied (Jegadeesh & Titman 1993, replicated in CN by Chi et al.). The 12-1 construction specifically excludes the most recent month to dodge the short-term reversal effect. Amihud illiquidity penalty is the simplest way to avoid loading up on micro-caps that look great in backtest and untradeable in practice.

Common pitfalls

  1. Including the last month in the momentum window — it contaminates the signal with reversion noise.
  2. Ignoring liquidity. The 50ETF universe varies in tradability; without penalty your top picks are often the least liquid.
  3. Rebalancing daily. Momentum is a slow signal; daily rebalance just trades commission.

Try it yourself

Fork the template into your workspace. The entire configuration — code, parameters, backtest window, cost model — lands in a new private session. Tweak it, break it, and see how robust the edge actually is.

Backtest result

Sharpe
1.12
Return
+14.6%
Max drawdown
−16.4%
Win rate
+53.0%
Trades
96
Days
720

Equity curve

Strategy
Benchmark

Rank by r(t-12, t-1) adjusted by Amihud illiquidity. Long top 10, monthly. Volatility overlay halves exposure when SHIBOR 3M > 4%.

Ready to learn?

Fork it into your workspace.

The whole template — code, parameters, backtest config — lands in a new private session. Tweak it, run it, break it, learn.