qbuntuqbuntu
rejectedno_edge· equity· factor· momentum· time-series

Time-Series Momentum (JP Growth Stocks)

slug: ts-momentum-jp-growth
performance summary
Sharpe (median)
-0.51
Max DD
-12.4%
Win rate
Alpha (ann.)
p-value
0.29
backtest period: 2022-03-012026-06-01
Sharpe across 120 grid runs:median -0.51best 0.45 (not representative)worst -1.82p25–p75 -0.82-0.14

Hypothesis

Moskowitz, Ooi, Pedersen (2012): each stock's own past return predicts its future return (time-series momentum). If positive → LONG, if negative → SHORT. Equal weight across active positions.

Why it didn't work

Across 120 grid combinations, median Sharpe=-0.51, best=0.45. Primary failure mode: no_edge.

Facts (7)

Average monthly return correlation with other strategies in DOWN regime: 0.12
Pairwise Pearson correlation of monthly returns across 42 strategies, filtered to DOWN regime months (N=3, N225 < SMA20 < SMA60)
correlation0.12
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.45 (p=0.36).
period 2022-03-01–2026-06-01; cost=5bps
sharpe_ratio0.45
Median Sharpe across 120 grid runs is -0.51.
Full grid of 120 parameter combinations.
sharpe_ratio-0.51
Median Sharpe in DOWN regime is -1.40 across 120 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio-1.40
Median Sharpe in FLAT regime is -0.43 across 120 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.43
Median Sharpe in UP regime is -0.20 across 120 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-0.20

Runs (30)

runparamssharpeUPFLATDOWN
formation_days=20, holding_days=1, threshold_pct=0, cost_bps=5
r-ts-momentum-jp-growth-0000
cost_bps: 5
holding_days: 1
threshold_pct: 0
-0.98-0.30-1.30-1.37
formation_days=20, holding_days=1, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0001
cost_bps: 10
holding_days: 1
threshold_pct: 0
-1.65-0.83-2.02-2.31
formation_days=20, holding_days=1, threshold_pct=0.05, cost_bps=5
r-ts-momentum-jp-growth-0002
cost_bps: 5
holding_days: 1
threshold_pct: 0.05
-0.91-0.44-1.13-0.74
formation_days=20, holding_days=1, threshold_pct=0.1, cost_bps=5
r-ts-momentum-jp-growth-0004
cost_bps: 5
holding_days: 1
threshold_pct: 0.1
-0.93-0.53-1.10-0.76
formation_days=20, holding_days=5, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0007
cost_bps: 10
holding_days: 5
threshold_pct: 0
-1.14-1.41-0.85-2.73
formation_days=20, holding_days=5, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0011
cost_bps: 10
holding_days: 5
threshold_pct: 0.1
-0.97-1.10-0.86-1.33
formation_days=20, holding_days=10, threshold_pct=0.05, cost_bps=10
r-ts-momentum-jp-growth-0015
cost_bps: 10
holding_days: 10
threshold_pct: 0.05
-0.18+0.23-0.32+0.12
formation_days=20, holding_days=20, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0019
cost_bps: 10
holding_days: 20
threshold_pct: 0
-0.99+0.14-1.37-1.28
formation_days=20, holding_days=20, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0023
cost_bps: 10
holding_days: 20
threshold_pct: 0.1
-0.40+0.47-0.73+1.57
formation_days=20, holding_days=60, threshold_pct=0, cost_bps=5
r-ts-momentum-jp-growth-0024
cost_bps: 5
holding_days: 60
threshold_pct: 0
-0.05+0.30-0.14+0.54
formation_days=20, holding_days=60, threshold_pct=0.1, cost_bps=5
r-ts-momentum-jp-growth-0028
cost_bps: 5
holding_days: 60
threshold_pct: 0.1
+0.14-0.18+0.22+0.22
formation_days=60, holding_days=1, threshold_pct=0.05, cost_bps=5
r-ts-momentum-jp-growth-0032
cost_bps: 5
holding_days: 1
threshold_pct: 0.05
-1.01-0.79-1.00-10.42
formation_days=60, holding_days=5, threshold_pct=0, cost_bps=5
r-ts-momentum-jp-growth-0036
cost_bps: 5
holding_days: 5
threshold_pct: 0
-0.22-0.43-0.02-1.10
formation_days=60, holding_days=5, threshold_pct=0.1, cost_bps=5
r-ts-momentum-jp-growth-0040
cost_bps: 5
holding_days: 5
threshold_pct: 0.1
-0.18-0.78+0.17-1.25
formation_days=60, holding_days=10, threshold_pct=0.05, cost_bps=5
r-ts-momentum-jp-growth-0044
cost_bps: 5
holding_days: 10
threshold_pct: 0.05
+0.36-0.18+0.62-0.15
formation_days=60, holding_days=20, threshold_pct=0, cost_bps=5
r-ts-momentum-jp-growth-0048
cost_bps: 5
holding_days: 20
threshold_pct: 0
+0.45+0.06+0.74-0.62
formation_days=60, holding_days=20, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0049
cost_bps: 10
holding_days: 20
threshold_pct: 0
+0.23-0.11+0.50-0.86
formation_days=60, holding_days=20, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0053
cost_bps: 10
holding_days: 20
threshold_pct: 0.1
-0.03-0.39+0.27-1.02
formation_days=60, holding_days=60, threshold_pct=0.05, cost_bps=10
r-ts-momentum-jp-growth-0057
cost_bps: 10
holding_days: 60
threshold_pct: 0.05
+0.32+0.24+0.54-2.12
formation_days=120, holding_days=1, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0061
cost_bps: 10
holding_days: 1
threshold_pct: 0
-1.45-1.32-1.28-17.10
formation_days=120, holding_days=1, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0065
cost_bps: 10
holding_days: 1
threshold_pct: 0.1
-1.23-1.00-1.13-8.51
formation_days=120, holding_days=5, threshold_pct=0.05, cost_bps=10
r-ts-momentum-jp-growth-0069
cost_bps: 10
holding_days: 5
threshold_pct: 0.05
-0.58-0.21-0.57-1.57
formation_days=120, holding_days=10, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0073
cost_bps: 10
holding_days: 10
threshold_pct: 0
-0.34-0.77-0.19-0.39
formation_days=120, holding_days=10, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0077
cost_bps: 10
holding_days: 10
threshold_pct: 0.1
-0.31-0.16-0.21-1.20
formation_days=120, holding_days=20, threshold_pct=0.05, cost_bps=10
r-ts-momentum-jp-growth-0081
cost_bps: 10
holding_days: 20
threshold_pct: 0.05
-0.54-0.24-0.42-3.07
formation_days=120, holding_days=60, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0085
cost_bps: 10
holding_days: 60
threshold_pct: 0
-0.22-0.33-0.10-0.73
formation_days=120, holding_days=60, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0089
cost_bps: 10
holding_days: 60
threshold_pct: 0.1
-0.30-0.30-0.24-0.56
formation_days=250, holding_days=1, threshold_pct=0, cost_bps=5
r-ts-momentum-jp-growth-0090
cost_bps: 5
holding_days: 1
threshold_pct: 0
-1.17-0.15-1.54-3.29
formation_days=250, holding_days=1, threshold_pct=0, cost_bps=10
r-ts-momentum-jp-growth-0091
cost_bps: 10
holding_days: 1
threshold_pct: 0
-1.82-0.90-2.13-4.92
formation_days=250, holding_days=1, threshold_pct=0.1, cost_bps=10
r-ts-momentum-jp-growth-0095
cost_bps: 10
holding_days: 1
threshold_pct: 0.1
-1.70-1.06-1.99-3.29

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-28T01:10:02

Related strategies