qbuntuqbuntu

モメンタム×出来高(東証全銘柄)のバックテスト

Momentum × Volume Interaction (JP All Stocks)

slug: momentum-volume-jp-all

東証全銘柄(約3,747銘柄)でモメンタム×出来高をバックテストした。320通りの中央値 Sharpe は -0.01。p-value は 0.48。Max DD は -18.7%。期間は 2022-05-02〜2026-09-01。最良 Sharpe +1.08 は代表値ではない。

判定は rejected。中央値は promising(Sharpe > 0.5 かつ p-value < 0.05)にも marginal(Sharpe > 0.05 かつ最良 p-value < 0.10)にも届いていない。主因は no_edge。レジーム・取引回数・コストには分類されず、中央値が採用ラインに届いていない。

成績の中央値

Sharpe(中央値)
-0.01
Max DD
-18.7%
勝率
—
Alpha(年率)
—
p-value
0.48
期間: 2022-05-02 → 2026-09-01
320通りの Sharpe:中央値 -0.01最良 1.08 (代表値ではない)最悪 -1.38p25–p75 -0.30–0.33

仮説

原文は英語。

Lee & Swaminathan (2000): volume confirms momentum quality. Testing on the full Japanese stock universe.

採用しなかった理由

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

検証ファクト (5)

Best grid Sharpe ratio is 1.08 (p=0.03).
period 2022-05-02–2026-09-01; cost=5bps
sharpe_ratio1.08
Median Sharpe across 320 grid runs is -0.01.
Full grid of 320 parameter combinations.
sharpe_ratio-0.01
Median Sharpe in DOWN regime is 0.06 across 320 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio0.06
Median Sharpe in FLAT regime is -0.24 across 320 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.24
Median Sharpe in UP regime is 0.24 across 320 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio0.24

検証ラン (30)

runparamssharpeUPFLATDOWN
formation_days=20, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0000
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.16+1.15-0.69+0.07
formation_days=20, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True
r-momentum-volume-jp-all-0001
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.11+0.36-0.69+0.07
formation_days=20, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0002
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.01+0.98-0.85-0.12
formation_days=20, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=True
r-momentum-volume-jp-all-0003
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.24+0.29-0.85-0.12
formation_days=20, holding_days=1, n_stocks=50, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0012
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.11+0.54-0.15-1.21
formation_days=20, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0018
cost_bps: 10
n_stocks: 5
regime_gate: false
+0.04+0.65-0.35+1.61
formation_days=20, holding_days=10, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0032
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.11+1.04-0.37+1.37
formation_days=20, holding_days=10, n_stocks=50, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0046
cost_bps: 10
n_stocks: 50
regime_gate: false
-1.04-0.20-1.76-0.70
formation_days=20, holding_days=20, n_stocks=50, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0060
cost_bps: 5
n_stocks: 50
regime_gate: false
-1.20-0.60-1.71-1.59
formation_days=20, holding_days=20, n_stocks=50, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0062
cost_bps: 10
n_stocks: 50
regime_gate: false
-1.38-0.77-1.88-1.84
formation_days=20, holding_days=60, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0064
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.29+1.04-0.20+0.09
formation_days=20, holding_days=60, n_stocks=50, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0076
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.74-0.66-0.90-0.19
formation_days=60, holding_days=1, n_stocks=20, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0090
cost_bps: 10
n_stocks: 20
regime_gate: false
-0.28+0.01-0.57-0.46
formation_days=60, holding_days=5, n_stocks=20, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0104
cost_bps: 5
n_stocks: 20
regime_gate: false
-0.79-0.74-0.93-0.42
formation_days=60, holding_days=10, n_stocks=10, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0118
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.24+1.40-2.18+1.09
formation_days=60, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0132
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.09+0.67-1.43+1.29
formation_days=60, holding_days=60, n_stocks=5, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0146
cost_bps: 10
n_stocks: 5
regime_gate: false
+0.62+0.14+0.79+1.91
formation_days=120, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0160
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.19+0.54-0.29+0.45
formation_days=120, holding_days=1, n_stocks=50, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0174
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.87-0.51-0.81-2.63
formation_days=120, holding_days=5, n_stocks=50, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0188
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.07-0.09+0.73-2.80
formation_days=120, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0202
cost_bps: 10
n_stocks: 20
regime_gate: false
+0.19+0.57-0.30+0.11
formation_days=120, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=True
r-momentum-volume-jp-all-0209
cost_bps: 5
n_stocks: 5
regime_gate: true
+1.08+0.68+1.16+1.85
formation_days=120, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=True
r-momentum-volume-jp-all-0217
cost_bps: 5
n_stocks: 20
regime_gate: true
+0.70+0.79+0.18+2.18
formation_days=120, holding_days=60, n_stocks=10, cost_bps=10, regime_gate=True
r-momentum-volume-jp-all-0231
cost_bps: 10
n_stocks: 10
regime_gate: true
+0.53+0.47+0.74-0.26
formation_days=250, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0240
cost_bps: 5
n_stocks: 5
regime_gate: false
0.00-0.38+0.09+1.75
formation_days=250, holding_days=1, n_stocks=10, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0246
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.23-0.68-0.08+1.66
formation_days=250, holding_days=5, n_stocks=10, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0260
cost_bps: 5
n_stocks: 10
regime_gate: false
+0.08-0.38+0.23+1.59
formation_days=250, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0274
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.28+0.24-0.68+1.91
formation_days=250, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False
r-momentum-volume-jp-all-0288
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.12+0.02-0.41+12.28
formation_days=250, holding_days=20, n_stocks=50, cost_bps=10, regime_gate=False
r-momentum-volume-jp-all-0302
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.10+0.37-0.54-1.52

対象ユニバース

Tokyo Stock Exchange all listed (Prime/Standard/Growth), ~3747 stocks

関連する戦略

source: qbuntu-analysis · kabu STATION REST API + J-Quants daily bars
computed asof: 2026-09-26T05:57:59

関連する戦略