qbuntuqbuntu
marginalregime_dependent· equity· factor· low-risk· volatility

ボラティリティの安定性(東証グロース)のバックテスト

Vol-of-Vol Stability (JP Growth Stocks)

slug: vol-of-vol-stability-jp-growth

東証グロース(約495銘柄)でボラティリティの安定性をバックテストした。432通りの中央値 Sharpe は +0.09。p-value は 0.64。Max DD は -13.1%。期間は 2022-03-01〜2026-09-01。最良 Sharpe +1.21 は代表値ではない。

判定は marginal。どこかのパラメータでは p-value が 0.10 を下回るが、中央値自体は promising の基準(Sharpe > 0.5 かつ p-value < 0.05)に届いていない。上昇・横ばい・下落で結果が割れ、中央値としては安定しない。

成績の中央値

Sharpe(中央値)
+0.09
Max DD
-13.1%
勝率
—
Alpha(年率)
—
p-value
0.64
期間: 2022-03-01 → 2026-09-01
432通りの Sharpe:中央値 0.09最良 1.21 (代表値ではない)最悪 -0.89p25–p75 -0.14–0.27

仮説

原文は英語。

Stocks with unstable volatility (high volatility-of-volatility) carry uncertainty about their own risk and tend to underperform; ranking on vol-of-vol and holding the stable side tests this risk-uncertainty premium (Baltussen et al. 2018 line of research).

採用しなかった理由

Across 432 grid combinations, median Sharpe=0.09, best=1.21. Primary failure mode: regime_dependent.

検証ファクト (5)

Best grid Sharpe ratio is 1.21 (p=0.011).
period 2022-03-01–2026-09-01; cost=5bps
sharpe_ratio1.21
Median Sharpe across 432 grid runs is 0.09.
Full grid of 432 parameter combinations.
sharpe_ratio0.09
Median Sharpe in DOWN regime is 3.02 across 432 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio3.02
Median Sharpe in FLAT regime is -0.19 across 432 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.19
Median Sharpe in UP regime is 0.43 across 432 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio0.43

検証ラン (30)

runparamssharpeUPFLATDOWN
lookback_days_vol=10, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0000
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.81+1.33+0.67+1.56
lookback_days_vol=10, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0001
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.68+3.17+0.11+3.21
lookback_days_vol=10, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=20
r-vol-of-vol-stability-jp-growth-0002
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.21+0.68-0.16+8.26
lookback_days_vol=10, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=1
r-vol-of-vol-stability-jp-growth-0003
cost_bps: 5
n_stocks: 5
regime_gate: true
+0.70+0.54+0.67+1.56
lookback_days_vol=10, lookback_days_vov=40, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0006
cost_bps: 10
n_stocks: 5
regime_gate: false
+0.61+1.00+0.49+1.39
lookback_days_vol=10, lookback_days_vov=40, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0013
cost_bps: 5
n_stocks: 10
regime_gate: false
+1.21+3.37+0.64+1.98
lookback_days_vol=10, lookback_days_vov=40, n_stocks=20, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0025
cost_bps: 5
n_stocks: 20
regime_gate: false
+0.70+1.95+0.11+3.25
lookback_days_vol=10, lookback_days_vov=40, n_stocks=50, cost_bps=5, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0036
cost_bps: 5
n_stocks: 50
regime_gate: false
+0.51+1.33+0.06+5.91
lookback_days_vol=10, lookback_days_vov=40, n_stocks=50, cost_bps=10, regime_gate=True, holding_days=5
r-vol-of-vol-stability-jp-growth-0046
cost_bps: 10
n_stocks: 50
regime_gate: true
-0.21+0.57-0.75+1.27
lookback_days_vol=10, lookback_days_vov=60, n_stocks=10, cost_bps=10, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0066
cost_bps: 10
n_stocks: 10
regime_gate: false
+0.10-1.50+0.26+2.25
lookback_days_vol=10, lookback_days_vov=60, n_stocks=50, cost_bps=5, regime_gate=False, holding_days=20
r-vol-of-vol-stability-jp-growth-0086
cost_bps: 5
n_stocks: 50
regime_gate: false
+0.19+0.51+0.05+0.39
lookback_days_vol=10, lookback_days_vov=80, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0096
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.31-0.04+0.27+2.10
lookback_days_vol=10, lookback_days_vov=80, n_stocks=5, cost_bps=10, regime_gate=True, holding_days=20
r-vol-of-vol-stability-jp-growth-0107
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.31+0.58-0.76+3.20
lookback_days_vol=10, lookback_days_vov=80, n_stocks=20, cost_bps=10, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0127
cost_bps: 10
n_stocks: 20
regime_gate: false
+0.52+1.63+0.02+2.63
lookback_days_vol=20, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=1
r-vol-of-vol-stability-jp-growth-0147
cost_bps: 5
n_stocks: 5
regime_gate: true
+0.25-0.75+0.36+3.04
lookback_days_vol=20, lookback_days_vov=40, n_stocks=10, cost_bps=10, regime_gate=True, holding_days=20
r-vol-of-vol-stability-jp-growth-0167
cost_bps: 10
n_stocks: 10
regime_gate: true
+0.03+0.08-0.12+4.93
lookback_days_vol=20, lookback_days_vov=40, n_stocks=50, cost_bps=10, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0187
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.04+0.24-0.28+0.88
lookback_days_vol=20, lookback_days_vov=60, n_stocks=10, cost_bps=5, regime_gate=True, holding_days=1
r-vol-of-vol-stability-jp-growth-0207
cost_bps: 5
n_stocks: 10
regime_gate: true
+0.06+0.02-0.06+5.69
lookback_days_vol=20, lookback_days_vov=60, n_stocks=20, cost_bps=10, regime_gate=True, holding_days=20
r-vol-of-vol-stability-jp-growth-0227
cost_bps: 10
n_stocks: 20
regime_gate: true
-0.13-0.11-0.19+0.60
lookback_days_vol=20, lookback_days_vov=80, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0247
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.19+1.43-0.69+2.43
lookback_days_vol=20, lookback_days_vov=80, n_stocks=10, cost_bps=10, regime_gate=False, holding_days=20
r-vol-of-vol-stability-jp-growth-0260
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.89-0.02-1.17-0.22
lookback_days_vol=20, lookback_days_vov=80, n_stocks=20, cost_bps=5, regime_gate=True, holding_days=5
r-vol-of-vol-stability-jp-growth-0268
cost_bps: 5
n_stocks: 20
regime_gate: true
+0.43+0.51+0.24+2.60
lookback_days_vol=30, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-vol-of-vol-stability-jp-growth-0288
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.36+0.55+0.13+2.97
lookback_days_vol=30, lookback_days_vov=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0289
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.22+2.35-0.76+2.54
lookback_days_vol=30, lookback_days_vov=40, n_stocks=10, cost_bps=10, regime_gate=True, holding_days=1
r-vol-of-vol-stability-jp-growth-0309
cost_bps: 10
n_stocks: 10
regime_gate: true
-0.11+0.32-0.44+2.70
lookback_days_vol=30, lookback_days_vov=40, n_stocks=50, cost_bps=5, regime_gate=True, holding_days=20
r-vol-of-vol-stability-jp-growth-0329
cost_bps: 5
n_stocks: 50
regime_gate: true
+0.15+0.08+0.15+0.61
lookback_days_vol=30, lookback_days_vov=60, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0349
cost_bps: 5
n_stocks: 10
regime_gate: false
+0.11+1.73-0.62+12.44
lookback_days_vol=30, lookback_days_vov=60, n_stocks=20, cost_bps=10, regime_gate=True, holding_days=1
r-vol-of-vol-stability-jp-growth-0369
cost_bps: 10
n_stocks: 20
regime_gate: true
-0.15-0.29-0.36+3.84
lookback_days_vol=30, lookback_days_vov=80, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=20
r-vol-of-vol-stability-jp-growth-0389
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.02+0.50-0.41+3.15
lookback_days_vol=30, lookback_days_vov=80, n_stocks=20, cost_bps=5, regime_gate=False, holding_days=5
r-vol-of-vol-stability-jp-growth-0409
cost_bps: 5
n_stocks: 20
regime_gate: false
+0.09+0.62-0.16+1.33

対象ユニバース

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

関連する戦略

source: qbuntu-analysis · kabu STATION REST API + J-Quants daily bars
computed asof: 2026-09-24T02:22:21

関連する戦略