qbuntuqbuntu
rejectedregime_dependent· equity· anomaly· beta· downside-risk· factor

Downside Beta (JP Growth Stocks)

slug: downside-beta-jp-growth

Downside Beta (JP Growth Stocks) backtest. Median Sharpe across 320 parameter sets is -0.25. p-value is 0.51. Max DD is -18.5%. Period: 2023-07-03 to 2026-07-01. Best Sharpe +1.10 is not the representative figure.

Verdict: rejected. The median reaches neither promising (Sharpe > 0.5 and p-value < 0.05) nor marginal (Sharpe > 0.05 and best p-value < 0.10). Results split across up, flat, and down markets, so the median is not stable.

Performance summary

Sharpe (median)
-0.25
Max DD
-18.5%
Win rate
—
Alpha (ann.)
—
p-value
0.51
backtest period: 2023-07-03 → 2026-07-01
Sharpe across 320 grid runs:median -0.25best 1.10 (not representative)worst -1.35p25–p75 -0.50–0.01

Hypothesis

Ang, Chen, Xing (2006): downside beta (beta on market-down days only) commands a higher risk premium. Stocks with high downside beta earn lower returns. LONG lowest downside beta, SHORT highest.

Why it didn't work

Across 320 grid combinations, median Sharpe=-0.25, best=1.10. Primary failure mode: regime_dependent.

Facts (5)

Best grid Sharpe ratio is 1.10 (p=0.058).
period 2023-07-03–2026-07-01; cost=5bps
sharpe_ratio1.10
Median Sharpe across 320 grid runs is -0.25.
Full grid of 320 parameter combinations.
sharpe_ratio-0.25
Median Sharpe in DOWN regime is -1.94 across 320 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio-1.94
Median Sharpe in FLAT regime is 0.25 across 320 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio0.25
Median Sharpe in UP regime is -0.65 across 320 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-0.65

Runs (30)

runparamssharpeUPFLATDOWN
formation_days=40, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0000
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.58-1.07-0.13-7.92
formation_days=40, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True
r-downside-beta-jp-growth-0001
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.71-1.25-0.13-7.92
formation_days=40, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0002
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.73-1.25-0.26-8.46
formation_days=40, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=True
r-downside-beta-jp-growth-0003
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.82-1.31-0.26-8.46
formation_days=40, holding_days=1, n_stocks=50, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0012
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.50-0.54+0.13-5.41
formation_days=40, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0018
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.06+0.07+0.12-316.53
formation_days=40, holding_days=10, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0032
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.48-0.05+1.18-3.05
formation_days=40, holding_days=10, n_stocks=50, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0046
cost_bps: 10
n_stocks: 50
regime_gate: false
-1.14-0.89-1.13-3.50
formation_days=40, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0048
cost_bps: 5
n_stocks: 5
regime_gate: false
+1.10+0.73+1.51+0.70
formation_days=40, holding_days=20, n_stocks=50, cost_bps=5, regime_gate=True
r-downside-beta-jp-growth-0061
cost_bps: 5
n_stocks: 50
regime_gate: true
-0.51-0.29-0.54-2.86
formation_days=40, holding_days=60, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0064
cost_bps: 5
n_stocks: 5
regime_gate: false
+0.06+0.11-0.29+5.03
formation_days=40, holding_days=60, n_stocks=50, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0076
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.19-0.03-0.40+0.19
formation_days=60, holding_days=1, n_stocks=20, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0090
cost_bps: 10
n_stocks: 20
regime_gate: false
-0.46-0.45+0.15-4.93
formation_days=60, holding_days=5, n_stocks=20, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0104
cost_bps: 5
n_stocks: 20
regime_gate: false
-0.34-1.05+0.49-2.57
formation_days=60, holding_days=10, n_stocks=10, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0118
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.42-0.24+0.11-6.98
formation_days=60, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0132
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.21-0.36+0.46-9.66
formation_days=60, holding_days=60, n_stocks=5, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0146
cost_bps: 10
n_stocks: 5
regime_gate: false
+0.14+0.14-0.09+2.73
formation_days=120, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0160
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.38-0.95+0.07-1.84
formation_days=120, holding_days=1, n_stocks=50, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0174
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.84-1.76-0.14-4.10
formation_days=120, holding_days=5, n_stocks=50, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0188
cost_bps: 5
n_stocks: 50
regime_gate: false
-0.96-2.90+0.35-1.94
formation_days=120, holding_days=5, n_stocks=50, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0190
cost_bps: 10
n_stocks: 50
regime_gate: false
-1.35-3.31-0.12-2.21
formation_days=120, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=True
r-downside-beta-jp-growth-0203
cost_bps: 10
n_stocks: 20
regime_gate: true
-0.15-0.90+0.80-1.70
formation_days=120, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=True
r-downside-beta-jp-growth-0217
cost_bps: 5
n_stocks: 20
regime_gate: true
-0.33-0.86+0.23-1.35
formation_days=120, holding_days=60, n_stocks=10, cost_bps=10, regime_gate=True
r-downside-beta-jp-growth-0231
cost_bps: 10
n_stocks: 10
regime_gate: true
-0.02-1.57+0.31+1.83
formation_days=250, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0240
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.22-2.16+0.34+0.22
formation_days=250, holding_days=1, n_stocks=10, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0246
cost_bps: 10
n_stocks: 10
regime_gate: false
-0.92-3.26+0.03-1.09
formation_days=250, holding_days=5, n_stocks=10, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0260
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.27-2.50+0.96-0.69
formation_days=250, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0274
cost_bps: 10
n_stocks: 5
regime_gate: false
+0.19-1.00+0.89-1.00
formation_days=250, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False
r-downside-beta-jp-growth-0288
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.08-1.17+0.52+0.57
formation_days=250, holding_days=20, n_stocks=50, cost_bps=10, regime_gate=False
r-downside-beta-jp-growth-0302
cost_bps: 10
n_stocks: 50
regime_gate: false
-0.96-1.29-0.70-0.70

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-09-24T21:54:29

Related strategies