qbuntuqbuntu
rejectedno_edge· equity· anchoring· factor· momentum

52-Week High Momentum (JP Growth Stocks)

slug: high52w-momentum-jp-growth
performance summary
Sharpe (median)
-0.56
Max DD
-39.9%
Win rate
Alpha (ann.)
p-value
0.22
backtest period: 2022-05-022026-06-01
Sharpe across 320 grid runs:median -0.56best 0.30 (not representative)worst -1.36p25–p75 -0.80-0.27

Hypothesis

George & Hwang (2004): proximity to 52-week high as momentum signal. Stocks near their 52-week high continue to outperform. Signal = Close / max(Close, 250d). LONG highest ratio, SHORT lowest.

Why it didn't work

Across 320 grid combinations, median Sharpe=-0.56, best=0.30. Primary failure mode: no_edge.

Facts (7)

Average monthly return correlation with other strategies in DOWN regime: 0.06
Pairwise Pearson correlation of monthly returns across 42 strategies, filtered to DOWN regime months (N=3, N225 < SMA20 < SMA60)
correlation0.06
Average monthly return correlation with other strategies (full period): 0.08
Pairwise Pearson correlation of monthly returns across 42 strategies, full backtest period
correlation0.08
Best grid Sharpe ratio is 0.30 (p=0.57).
period 2022-05-02–2026-06-01; cost=5bps
sharpe_ratio0.30
Median Sharpe across 320 grid runs is -0.56.
Full grid of 320 parameter combinations.
sharpe_ratio-0.56
Median Sharpe in DOWN regime is -2.07 across 320 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio-2.07
Median Sharpe in FLAT regime is -0.58 across 320 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.58
Median Sharpe in UP regime is -0.01 across 320 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-0.01

Runs (30)

runparamssharpeUPFLATDOWN
lookback_days=125, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0000
cost_bps: 5
n_stocks: 5
regime_gate: false
-1.02-1.31-0.82-4.00
lookback_days=125, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True
r-high52w-momentum-jp-growth-0001
cost_bps: 5
n_stocks: 5
regime_gate: true
-1.07-1.47-0.82-4.00
lookback_days=125, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0002
cost_bps: 10
n_stocks: 5
regime_gate: false
-1.13-1.40-0.94-4.35
lookback_days=125, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=True
r-high52w-momentum-jp-growth-0003
cost_bps: 10
n_stocks: 5
regime_gate: true
-1.17-1.52-0.94-4.35
lookback_days=125, holding_days=1, n_stocks=50, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0012
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.55-0.78-0.55+0.37
lookback_days=125, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0018
cost_bps: 10
n_stocks: 5
regime_gate: false
-1.28-0.32-1.57-9.01
lookback_days=125, holding_days=10, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0032
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.51+0.40-0.83-0.45
lookback_days=125, holding_days=10, n_stocks=50, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0046
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.50+0.44-0.68-1.55
lookback_days=125, holding_days=20, n_stocks=50, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0060
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.40+0.36-0.53-1.99
lookback_days=125, holding_days=60, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0064
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.02+0.49+0.04-2.36
lookback_days=125, holding_days=60, n_stocks=20, cost_bps=10, regime_gate=True
r-high52w-momentum-jp-growth-0075
cost_bps: 10
n_stocks: 20
regime_gate: true
-0.22+0.28-0.17-1.87
lookback_days=180, holding_days=1, n_stocks=20, cost_bps=5, regime_gate=True
r-high52w-momentum-jp-growth-0089
cost_bps: 5
n_stocks: 20
regime_gate: true
-0.66-0.85-0.49-3.19
lookback_days=180, holding_days=5, n_stocks=10, cost_bps=10, regime_gate=True
r-high52w-momentum-jp-growth-0103
cost_bps: 10
n_stocks: 10
regime_gate: true
-1.15-1.45-0.97-3.78
lookback_days=180, holding_days=5, n_stocks=20, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0106
cost_bps: 10
n_stocks: 20
regime_gate: false
-1.36-1.16-1.19-4.67
lookback_days=180, holding_days=10, n_stocks=10, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0118
cost_bps: 10
n_stocks: 10
regime_gate: false
-1.11+0.52-1.45-2.11
lookback_days=180, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0132
cost_bps: 5
n_stocks: 10
regime_gate: false
-1.06+0.84-1.50-5.61
lookback_days=180, holding_days=60, n_stocks=5, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0146
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.65-0.20-0.79-3.32
lookback_days=250, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0160
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.46-0.08-0.53-2.20
lookback_days=250, holding_days=1, n_stocks=50, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0174
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.90-1.08-0.71-1.45
lookback_days=250, holding_days=5, n_stocks=50, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0188
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.75-1.84-0.13-1.36
lookback_days=250, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0202
cost_bps: 10
n_stocks: 20
regime_gate: false
-0.76+0.12-0.83-2.56
lookback_days=250, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0216
cost_bps: 5
n_stocks: 20
regime_gate: false
-0.52+0.42-0.67-5.46
lookback_days=250, holding_days=60, n_stocks=10, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0230
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.52+0.30-0.54-9.98
lookback_days=500, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0240
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.26+0.42+0.13+0.27
lookback_days=500, holding_days=1, n_stocks=10, cost_bps=5, regime_gate=True
r-high52w-momentum-jp-growth-0245
cost_bps: 5
n_stocks: 10
regime_gate: true
-0.05+0.10-0.25+1.50
lookback_days=500, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=True
r-high52w-momentum-jp-growth-0259
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.05+0.14-0.08-0.40
lookback_days=500, holding_days=5, n_stocks=50, cost_bps=5, regime_gate=True
r-high52w-momentum-jp-growth-0269
cost_bps: 5
n_stocks: 50
regime_gate: true
+0.30+0.14+0.45+0.08
lookback_days=500, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0274
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.82+0.19-1.22-0.42
lookback_days=500, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False
r-high52w-momentum-jp-growth-0288
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.64+0.04-0.64-4.09
lookback_days=500, holding_days=20, n_stocks=50, cost_bps=10, regime_gate=False
r-high52w-momentum-jp-growth-0302
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.25-0.17-0.03-1.76

Target universe

Tokyo Stock Exchange Growth Market, ~495 stocks, tv >= 30M JPY
source: qbuntu-analysis · kabu STATION REST API + J-Quants daily bars
computed asof: 2026-07-30T01:20:50

Related strategies