qbuntuqbuntu
rejectedregime_dependent· equity· gap· intraday· mean-reversion

Gap Reversal (JP Growth Stocks)

slug: gap-reversal-short-jp-growth
performance summary
Sharpe (median)
-0.23
Max DD
-17.0%
Win rate
Alpha (ann.)
p-value
0.33
backtest period: 2022-01-042026-06-09
Sharpe across 1728 grid runs:median -0.23best 2.69 (not representative)worst -1.80p25–p75 -0.580.20

Hypothesis

Overnight gaps in Japanese Growth stocks tend to reverse within the same or next few trading days. Shorting positive gaps and buying negative gaps captures this mean-reversion effect.

Why it didn't work

Across 1728 grid combinations, median Sharpe=-0.23, best=2.69. Primary failure mode: regime_dependent.

Facts (5)

Best grid Sharpe ratio is 2.69 (p=1.6e-08).
period 2022-01-04–2026-06-09; cost=3bps; side=SHORT
sharpe_ratio2.69
Median Sharpe across 1728 grid runs is -0.23.
Full grid of 1728 parameter combinations.
sharpe_ratio-0.23
Median Sharpe in DOWN regime is 0.33 across 1728 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio0.33
Median Sharpe in FLAT regime is 0.10 across 1728 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio0.10
Median Sharpe in UP regime is -1.93 across 1728 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-1.93

Runs (30)

runparamssharpeUPFLATDOWN
top_n=10, min_gap_size=0.03, hold_days=1, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0000
side: "SHORT"
top_n: 10
cost_bps: 3
+2.45+1.58+1.99+0.18
top_n=10, min_gap_size=0.03, hold_days=1, side=SHORT, cost_bps=5
r-gap-reversal-short-jp-growth-0001
side: "SHORT"
top_n: 10
cost_bps: 5
+2.32+1.49+1.90+0.08
top_n=10, min_gap_size=0.03, hold_days=1, side=SHORT, cost_bps=10
r-gap-reversal-short-jp-growth-0002
side: "SHORT"
top_n: 10
cost_bps: 10
+1.99+1.26+1.67-0.17
top_n=10, min_gap_size=0.03, hold_days=1, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-0006
side: "BOTH"
top_n: 10
cost_bps: 3
+1.64+0.67+0.95+1.20
top_n=10, min_gap_size=0.03, hold_days=1, regime_gate=nikkei-sma20, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0009
side: "SHORT"
top_n: 10
cost_bps: 3
+2.06+1.99+0.18
top_n=10, min_gap_size=0.03, hold_days=1, regime_gate=nikkei-sma60, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0018
side: "SHORT"
top_n: 10
cost_bps: 3
+2.14+3.75+2.00+0.18
top_n=10, min_gap_size=0.03, hold_days=5, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0081
side: "SHORT"
top_n: 10
cost_bps: 3
+0.39+0.02+0.77-2.04
top_n=10, min_gap_size=0.03, hold_days=5, regime_gate=nikkei-sma20, side=SHORT, cost_bps=5
r-gap-reversal-short-jp-growth-0091
side: "SHORT"
top_n: 10
cost_bps: 5
+0.42+0.73-2.07
top_n=10, min_gap_size=0.05, hold_days=1, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0108
side: "SHORT"
top_n: 10
cost_bps: 3
+2.69+2.16+2.99+1.32
top_n=10, min_gap_size=0.05, hold_days=3, regime_gate=nikkei-sma20, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-0177
side: "BOTH"
top_n: 10
cost_bps: 3
-0.68-4.73+0.32-2.59
top_n=10, min_gap_size=0.07, hold_days=2, regime_gate=nikkei-sma60, side=SHORT, cost_bps=5
r-gap-reversal-short-jp-growth-0262
side: "SHORT"
top_n: 10
cost_bps: 5
+0.20+2.85+0.32-0.79
top_n=10, min_gap_size=0.1, hold_days=1, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0324
side: "SHORT"
top_n: 10
cost_bps: 3
+2.51+3.68+4.51+3.63
top_n=10, min_gap_size=0.1, hold_days=1, regime_gate=nikkei-sma60, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-0348
side: "BOTH"
top_n: 10
cost_bps: 3
+2.17+1.54+3.61+2.55
top_n=10, min_gap_size=0.1, hold_days=3, side=LONG, cost_bps=10
r-gap-reversal-short-jp-growth-0383
side: "LONG"
top_n: 10
cost_bps: 10
-1.80-8.14-2.93+1.91
top_n=20, min_gap_size=0.03, hold_days=1, side=SHORT, cost_bps=10
r-gap-reversal-short-jp-growth-0434
side: "SHORT"
top_n: 20
cost_bps: 10
+1.81+1.28+1.57-0.43
top_n=20, min_gap_size=0.03, hold_days=5, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-0519
side: "BOTH"
top_n: 20
cost_bps: 3
-0.34-0.60-0.09+0.21
top_n=20, min_gap_size=0.05, hold_days=3, regime_gate=nikkei-sma20, side=SHORT, cost_bps=5
r-gap-reversal-short-jp-growth-0604
side: "SHORT"
top_n: 20
cost_bps: 5
+0.13+0.84-4.12
top_n=20, min_gap_size=0.07, hold_days=2, regime_gate=nikkei-sma20, side=LONG, cost_bps=10
r-gap-reversal-short-jp-growth-0689
side: "LONG"
top_n: 20
cost_bps: 10
-1.07-9.69-1.52+4.08
top_n=20, min_gap_size=0.1, hold_days=1, regime_gate=nikkei-sma60, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-0774
side: "SHORT"
top_n: 20
cost_bps: 3
+2.27+9.18+4.79+3.35
top_n=20, min_gap_size=0.1, hold_days=5, regime_gate=nikkei-sma60, side=LONG, cost_bps=5
r-gap-reversal-short-jp-growth-0859
side: "LONG"
top_n: 20
cost_bps: 5
-0.42-6.86-1.61+6.64
top_n=50, min_gap_size=0.03, hold_days=3, regime_gate=nikkei-sma60, side=BOTH, cost_bps=10
r-gap-reversal-short-jp-growth-0944
side: "BOTH"
top_n: 50
cost_bps: 10
-0.75-1.83-0.26-1.59
top_n=50, min_gap_size=0.05, hold_days=3, side=LONG, cost_bps=3
r-gap-reversal-short-jp-growth-1029
side: "LONG"
top_n: 50
cost_bps: 3
-0.72-4.60-0.75+0.40
top_n=50, min_gap_size=0.07, hold_days=2, side=BOTH, cost_bps=5
r-gap-reversal-short-jp-growth-1114
side: "BOTH"
top_n: 50
cost_bps: 5
-0.24-2.66-0.11+2.48
top_n=50, min_gap_size=0.1, hold_days=1, regime_gate=nikkei-sma20, side=SHORT, cost_bps=10
r-gap-reversal-short-jp-growth-1199
side: "SHORT"
top_n: 50
cost_bps: 10
+2.01+4.21+2.98
top_n=50, min_gap_size=0.1, hold_days=5, regime_gate=nikkei-sma20, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-1284
side: "BOTH"
top_n: 50
cost_bps: 3
+0.06-6.82-0.32+5.36
top_n=100, min_gap_size=0.03, hold_days=1, side=SHORT, cost_bps=3
r-gap-reversal-short-jp-growth-1296
side: "SHORT"
top_n: 100
cost_bps: 3
+1.48+1.60+1.78-2.49
top_n=100, min_gap_size=0.03, hold_days=3, regime_gate=nikkei-sma60, side=SHORT, cost_bps=10
r-gap-reversal-short-jp-growth-1370
side: "SHORT"
top_n: 100
cost_bps: 10
-0.19+2.57+0.57-5.18
top_n=100, min_gap_size=0.05, hold_days=2, regime_gate=nikkei-sma60, side=BOTH, cost_bps=3
r-gap-reversal-short-jp-growth-1455
side: "BOTH"
top_n: 100
cost_bps: 3
-0.33-3.64-0.42+1.11
top_n=100, min_gap_size=0.07, hold_days=2, side=SHORT, cost_bps=5
r-gap-reversal-short-jp-growth-1540
side: "SHORT"
top_n: 100
cost_bps: 5
+0.12+0.07+0.72-2.56
top_n=100, min_gap_size=0.1, hold_days=1, side=LONG, cost_bps=10
r-gap-reversal-short-jp-growth-1625
side: "LONG"
top_n: 100
cost_bps: 10
+0.04-0.79+0.74-1.29

Target universe

Tokyo Stock Exchange Growth Market, ~495 stocks, tv >= 30M JPY

Related strategies

source: qbuntu-analysis · kabu STATION REST API + J-Quants daily bars
computed asof: 2026-07-27T03:36:21

Related strategies