qbuntuqbuntu
rejectedno_edge· equity· factor· reversal· skewness

Skewness Reversal (JP All Stocks)

slug: skewness-reversal-jp-all
performance summary
Sharpe (median)
-0.65
Max DD
-23.0%
Win rate
Alpha (ann.)
p-value
0.19
backtest period: 2022-02-012026-02-02
Sharpe across 72 grid runs:median -0.65best 0.23 (not representative)worst -1.51p25–p75 -0.97-0.41

Hypothesis

Investors overpay for lottery-like positive skewness and shun negative skewness (Harvey & Siddique 2000 line): stocks with extreme recent return skewness should subsequently revert. Ranking on realized skewness tests the effect long/short.

Why it didn't work

Across 72 grid combinations, median Sharpe=-0.65, best=0.23. Primary failure mode: no_edge.

Facts (5)

Best grid Sharpe ratio is 0.23 (p=0.65).
period 2022-02-01–2026-02-02; cost=5bps
sharpe_ratio0.23
Median Sharpe across 72 grid runs is -0.65.
Full grid of 72 parameter combinations.
sharpe_ratio-0.65
Median Sharpe in DOWN regime is 0.25 across 72 runs.
Regime=DOWN, N225 SMA20/SMA60 classification.
sharpe_ratio0.25
Median Sharpe in FLAT regime is -0.50 across 72 runs.
Regime=FLAT, N225 SMA20/SMA60 classification.
sharpe_ratio-0.50
Median Sharpe in UP regime is -1.55 across 72 runs.
Regime=UP, N225 SMA20/SMA60 classification.
sharpe_ratio-1.55

Runs (30)

runparamssharpeUPFLATDOWN
lookback_days=20, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0000
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.69-1.84-0.15-1.24
lookback_days=20, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=5
r-skewness-reversal-jp-all-0001
cost_bps: 5
n_stocks: 5
regime_gate: false
-1.12-2.11-0.80-0.18
lookback_days=20, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0002
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.96-4.33-0.37-0.72
lookback_days=20, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=1
r-skewness-reversal-jp-all-0003
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.41-0.98-0.15-1.24
lookback_days=20, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=20
r-skewness-reversal-jp-all-0005
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.65-2.03-0.37-0.72
lookback_days=20, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0006
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.95-2.03-0.46-1.54
lookback_days=20, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0008
cost_bps: 10
n_stocks: 5
regime_gate: false
-1.04-4.45-0.45-0.77
lookback_days=20, n_stocks=5, cost_bps=10, regime_gate=True, holding_days=5
r-skewness-reversal-jp-all-0010
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.88-0.63-0.96-0.42
lookback_days=20, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0012
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.63-1.89-0.47+2.33
lookback_days=20, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=5
r-skewness-reversal-jp-all-0013
cost_bps: 5
n_stocks: 10
regime_gate: false
-1.33-2.55-1.30+1.35
lookback_days=20, n_stocks=10, cost_bps=5, regime_gate=True, holding_days=1
r-skewness-reversal-jp-all-0015
cost_bps: 5
n_stocks: 10
regime_gate: true
-0.34-0.69-0.47+2.33
lookback_days=20, n_stocks=10, cost_bps=5, regime_gate=True, holding_days=20
r-skewness-reversal-jp-all-0017
cost_bps: 5
n_stocks: 10
regime_gate: true
-0.54-0.97-0.43-0.45
lookback_days=20, n_stocks=10, cost_bps=10, regime_gate=False, holding_days=5
r-skewness-reversal-jp-all-0019
cost_bps: 10
n_stocks: 10
regime_gate: false
-1.51-2.66-1.56+1.20
lookback_days=20, n_stocks=10, cost_bps=10, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0020
cost_bps: 10
n_stocks: 10
regime_gate: false
-1.00-3.26-0.52-0.56
lookback_days=20, n_stocks=10, cost_bps=10, regime_gate=True, holding_days=5
r-skewness-reversal-jp-all-0022
cost_bps: 10
n_stocks: 10
regime_gate: true
-1.08-0.63-1.56+1.20
lookback_days=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0048
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.84-2.23-0.56+8.92
lookback_days=40, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0050
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.49-2.17+0.15+1.17
lookback_days=40, n_stocks=5, cost_bps=5, regime_gate=True, holding_days=5
r-skewness-reversal-jp-all-0052
cost_bps: 5
n_stocks: 5
regime_gate: true
-0.52+0.05-0.95+2.77
lookback_days=40, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0054
cost_bps: 10
n_stocks: 5
regime_gate: false
-1.07-2.40-0.83+7.92
lookback_days=40, n_stocks=5, cost_bps=10, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0056
cost_bps: 10
n_stocks: 5
regime_gate: false
-0.57-2.23+0.04+1.08
lookback_days=40, n_stocks=5, cost_bps=10, regime_gate=True, holding_days=5
r-skewness-reversal-jp-all-0058
cost_bps: 10
n_stocks: 5
regime_gate: true
-0.67-0.05-1.13+2.59
lookback_days=40, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0060
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.14-2.03+0.52+1.43
lookback_days=40, n_stocks=10, cost_bps=5, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0062
cost_bps: 5
n_stocks: 10
regime_gate: false
-0.38-1.47+0.00-1.65
lookback_days=40, n_stocks=10, cost_bps=5, regime_gate=True, holding_days=1
r-skewness-reversal-jp-all-0063
cost_bps: 5
n_stocks: 10
regime_gate: true
+0.23-0.82+0.52+1.43
lookback_days=40, n_stocks=10, cost_bps=5, regime_gate=True, holding_days=20
r-skewness-reversal-jp-all-0065
cost_bps: 5
n_stocks: 10
regime_gate: true
-0.17-0.44+0.00-1.65
lookback_days=40, n_stocks=10, cost_bps=10, regime_gate=False, holding_days=5
r-skewness-reversal-jp-all-0067
cost_bps: 10
n_stocks: 10
regime_gate: false
-1.16-2.36-0.92+1.14
lookback_days=40, n_stocks=10, cost_bps=10, regime_gate=True, holding_days=1
r-skewness-reversal-jp-all-0069
cost_bps: 10
n_stocks: 10
regime_gate: true
-0.08-0.96+0.17+0.91
lookback_days=40, n_stocks=10, cost_bps=10, regime_gate=True, holding_days=20
r-skewness-reversal-jp-all-0071
cost_bps: 10
n_stocks: 10
regime_gate: true
-0.28-0.50-0.11-1.82
lookback_days=60, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1
r-skewness-reversal-jp-all-0096
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.72-1.52-0.45+0.23
lookback_days=60, n_stocks=5, cost_bps=5, regime_gate=False, holding_days=20
r-skewness-reversal-jp-all-0098
cost_bps: 5
n_stocks: 5
regime_gate: false
-0.19-3.25+0.42-0.21

Target universe

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

Related strategies

source: qbuntu-analysis · kabu STATION REST API + J-Quants daily bars
computed asof: 2026-08-02T16:26:49

Related strategies