qbuntuqbuntu
rejectedno_edge· equity· breakout· momentum· volatility

Volatility Breakout (JP Growth Stocks)

slug: volatility-breakout-jp-growth
performance summary
Sharpe (median)
-0.61
Max DD
-31.6%
Win rate
Alpha (ann.)
p-value
0.20
backtest period: 2022-02-012026-06-01
Sharpe across 720 grid runs:median -0.61best 0.79 (not representative)worst -1.84p25–p75 -0.90-0.26

Hypothesis

Stocks with rising short-term ATR relative to long-term ATR are experiencing volatility expansion, signaling breakout opportunities. LONG high ATR-ratio stocks, SHORT low ATR-ratio.

Why it didn't work

Across 720 grid combinations, median Sharpe=-0.61, best=0.79. 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)
correlation-0.06
Average monthly return correlation with other strategies (full period): 0.01
Pairwise Pearson correlation of monthly returns across 42 strategies, full backtest period
correlation0.01
Best grid Sharpe ratio is 0.79 (p=0.1).
period 2022-02-01–2026-06-01; cost=5bps
sharpe_ratio0.79
Median Sharpe across 720 grid runs is -0.61.
Full grid of 720 parameter combinations.
sharpe_ratio-0.61
Median Sharpe in DOWN regime is -1.05 across 720 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio-1.05
Median Sharpe in FLAT regime is -0.51 across 720 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.51
Median Sharpe in UP regime is -0.59 across 720 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-0.59

Runs (30)

runparamssharpeUPFLATDOWN
atr_short=5, atr_long=20, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0000
atr_long: 20
cost_bps: 5
n_stocks: 5
-1.58-2.22-1.37-2.32
atr_short=5, atr_long=20, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0001
atr_long: 20
cost_bps: 5
n_stocks: 5
-1.70-2.69-1.37-2.32
atr_short=5, atr_long=20, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0002
atr_long: 20
cost_bps: 10
n_stocks: 5
-1.73-2.37-1.51-2.63
atr_short=5, atr_long=20, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0003
atr_long: 20
cost_bps: 10
n_stocks: 5
-1.83-2.76-1.51-2.63
atr_short=5, atr_long=20, holding_days=1, n_stocks=20, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0008
atr_long: 20
cost_bps: 5
n_stocks: 20
-0.73-0.69-0.71-1.14
atr_short=5, atr_long=20, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0036
atr_long: 20
cost_bps: 5
n_stocks: 5
-0.93-1.54-0.62-7.94
atr_short=5, atr_long=20, holding_days=20, n_stocks=5, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0038
atr_long: 20
cost_bps: 10
n_stocks: 5
-0.97-1.59-0.66-8.06
atr_short=5, atr_long=40, holding_days=5, n_stocks=20, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0071
atr_long: 40
cost_bps: 10
n_stocks: 20
-0.44-0.08-0.51-0.71
atr_short=5, atr_long=60, holding_days=1, n_stocks=20, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0104
atr_long: 60
cost_bps: 5
n_stocks: 20
-0.43-0.80-0.30-0.39
atr_short=5, atr_long=60, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0137
atr_long: 60
cost_bps: 5
n_stocks: 10
-0.18+0.26-0.17-7.36
atr_short=5, atr_long=120, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0144
atr_long: 120
cost_bps: 5
n_stocks: 5
-0.73-1.13-0.60-0.32
atr_short=5, atr_long=120, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0171
atr_long: 120
cost_bps: 10
n_stocks: 5
-0.23+0.55-0.28-2.21
atr_short=10, atr_long=20, holding_days=5, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0204
atr_long: 20
cost_bps: 5
n_stocks: 5
-1.26-1.01-1.50+0.06
atr_short=10, atr_long=20, holding_days=10, n_stocks=20, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0224
atr_long: 20
cost_bps: 5
n_stocks: 20
+0.79+1.04+0.62+2.01
atr_short=10, atr_long=20, holding_days=20, n_stocks=20, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0238
atr_long: 20
cost_bps: 10
n_stocks: 20
-0.35-0.15-0.49+1.23
atr_short=10, atr_long=40, holding_days=10, n_stocks=10, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0271
atr_long: 40
cost_bps: 10
n_stocks: 10
-0.24-0.44-0.32+0.62
atr_short=10, atr_long=60, holding_days=5, n_stocks=10, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0304
atr_long: 60
cost_bps: 5
n_stocks: 10
-0.32-0.59-0.24-0.58
atr_short=10, atr_long=120, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0337
atr_long: 120
cost_bps: 5
n_stocks: 5
-0.68-0.95-0.59-0.08
atr_short=10, atr_long=120, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0370
atr_long: 120
cost_bps: 10
n_stocks: 20
+0.41+0.60+0.24+1.68
atr_short=14, atr_long=20, holding_days=5, n_stocks=10, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0403
atr_long: 20
cost_bps: 10
n_stocks: 10
-0.55-1.10-0.12-2.84
atr_short=14, atr_long=40, holding_days=1, n_stocks=10, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0436
atr_long: 40
cost_bps: 5
n_stocks: 10
-1.43-1.48-1.43-1.08
atr_short=14, atr_long=40, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0469
atr_long: 40
cost_bps: 5
n_stocks: 5
-0.87-1.74-0.34-4.18
atr_short=14, atr_long=60, holding_days=5, n_stocks=20, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0502
atr_long: 60
cost_bps: 10
n_stocks: 20
-0.80-2.77-0.18-1.68
atr_short=14, atr_long=120, holding_days=1, n_stocks=10, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0535
atr_long: 120
cost_bps: 10
n_stocks: 10
-0.95-1.10-0.90-0.70
atr_short=14, atr_long=120, holding_days=1, n_stocks=20, cost_bps=10, regime_gate=False
r-volatility-breakout-jp-growth-0538
atr_long: 120
cost_bps: 10
n_stocks: 20
-1.84-1.84-1.84-1.26
atr_short=14, atr_long=120, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0569
atr_long: 120
cost_bps: 5
n_stocks: 10
-0.80-0.75-0.75-1.42
atr_short=20, atr_long=40, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0576
atr_long: 40
cost_bps: 5
n_stocks: 5
-0.83-0.09-1.13-1.80
atr_short=20, atr_long=40, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=True
r-volatility-breakout-jp-growth-0603
atr_long: 40
cost_bps: 10
n_stocks: 5
-0.69-1.32-0.49-1.55
atr_short=20, atr_long=60, holding_days=5, n_stocks=5, cost_bps=5, regime_gate=False
r-volatility-breakout-jp-growth-0636
atr_long: 60
cost_bps: 5
n_stocks: 5
-0.54-0.43-0.58-0.71
atr_short=20, atr_long=60, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=True
r-volatility-breakout-jp-growth-0669
atr_long: 60
cost_bps: 5
n_stocks: 20
-0.38+0.89-1.28+5.41

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-29T01:08:47

Related strategies