{"schema_version":"v1","slug":"garman-klass-vol-jp-growth","name":"Garman-Klass Volatility Factor (JP Growth Stocks)","name_i18n":{},"verdict":"marginal","asset_class":"equity","categories":["anomaly","factor","volatility"],"hypothesis":"Garman & Klass (1980): OHLC-based volatility estimator more efficient than close-to-close. Tests low-volatility anomaly using GK vol: LONG lowest GK-vol stocks, SHORT highest GK-vol stocks. Baker, Bradley, Wurgler (2011): low-vol stocks earn higher risk-adjusted returns.","rejection_reason":{"primary":"no_edge","secondary":[],"narrative":"Across 320 grid combinations, median Sharpe=0.24, best=1.32. Primary failure mode: no_edge."},"target_universe":{"description":"Tokyo Stock Exchange Growth Market, ~495 stocks, tv >= 30M JPY","symbols":[]},"performance_summary":{"sharpe_median":0.2427,"max_drawdown_pct":-21.8,"win_rate":null,"alpha_annualized_pct":null,"p_value":0.48,"backtest_period":{"start":"2022-02-01","end":"2026-09-01"}},"grid_summary":{"sharpe":{"p25":-0.01,"p75":0.55,"best":1.32,"worst":-0.57,"median":0.24},"n_combinations":320},"methodology":{"notes":"{\"walk_forward_definition\": {\"type\": \"single_pass\", \"description\": \"Full period backtest without walk-forward split\", \"verdict_basis\": \"full_period\"}}","signal":null,"benchmark":null,"rebalance":null,"slippage_model":"open-on-open + variable bps fixed","position_sizing":"equal_weight","regime_definition":"N225 SMA20/SMA60 three-class","transaction_cost_bps":5},"provenance":{"data_source":"kabu STATION REST API + J-Quants daily bars","source_project":"qbuntu-analysis","computed_asof":"2026-09-24T02:22:18","git_sha_z":"1455e77","git_sha_genkidama":"17a7674","python_version":"3.12.10","numpy_version":"2.4.2","pandas_version":"3.0.0","tier":"shallow"},"runs":[{"run_id":"r-garman-klass-vol-jp-growth-0000","name":"formation_days=10, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":1,"formation_days":10},"performance":{"sharpe":1.19,"max_drawdown_pct":-7.8,"alpha_annualized_pct":11.6,"p_value":0.012,"regime_breakdown":{"UP":1.709025,"DOWN":3.945336,"FLAT":0.855395}},"executed_at":"2026-09-23T21:03:12","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0001","name":"formation_days=10, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":1,"formation_days":10},"performance":{"sharpe":0.8,"max_drawdown_pct":-10.9,"alpha_annualized_pct":6.2,"p_value":0.086,"regime_breakdown":{"UP":-1.116967,"DOWN":3.945336,"FLAT":0.855395}},"executed_at":"2026-09-23T21:03:12","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0002","name":"formation_days=10, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":1,"formation_days":10},"performance":{"sharpe":1.06,"max_drawdown_pct":-9.3,"alpha_annualized_pct":10.4,"p_value":0.024,"regime_breakdown":{"UP":1.611083,"DOWN":3.723157,"FLAT":0.718885}},"executed_at":"2026-09-23T21:03:12","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0003","name":"formation_days=10, holding_days=1, n_stocks=5, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":5,"regime_gate":true,"holding_days":1,"formation_days":10},"performance":{"sharpe":0.66,"max_drawdown_pct":-12.2,"alpha_annualized_pct":5.2,"p_value":0.15,"regime_breakdown":{"UP":-1.510452,"DOWN":3.723157,"FLAT":0.718885}},"executed_at":"2026-09-23T21:03:12","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0012","name":"formation_days=10, holding_days=1, n_stocks=50, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"regime_gate":false,"holding_days":1,"formation_days":10},"performance":{"sharpe":0.65,"max_drawdown_pct":-6,"alpha_annualized_pct":2.2,"p_value":0.16,"regime_breakdown":{"UP":0.20975,"DOWN":2.832269,"FLAT":0.717769}},"executed_at":"2026-09-23T21:03:14","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0018","name":"formation_days=10, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":5,"formation_days":10},"performance":{"sharpe":0.66,"max_drawdown_pct":-10.8,"alpha_annualized_pct":11.6,"p_value":0.15,"regime_breakdown":{"UP":3.842788,"DOWN":6.077077,"FLAT":-0.02452}},"executed_at":"2026-09-23T21:03:15","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0032","name":"formation_days=10, holding_days=10, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":10,"formation_days":10},"performance":{"sharpe":0.1,"max_drawdown_pct":-30.9,"alpha_annualized_pct":2.6,"p_value":0.83,"regime_breakdown":{"UP":3.159362,"DOWN":-0.375303,"FLAT":-0.264588}},"executed_at":"2026-09-23T21:03:18","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0046","name":"formation_days=10, holding_days=10, n_stocks=50, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":50,"regime_gate":false,"holding_days":10,"formation_days":10},"performance":{"sharpe":-0.21,"max_drawdown_pct":-26.2,"alpha_annualized_pct":-2,"p_value":0.65,"regime_breakdown":{"UP":-0.771185,"DOWN":-0.671748,"FLAT":0.010424}},"executed_at":"2026-09-23T21:03:21","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0060","name":"formation_days=10, holding_days=20, n_stocks=50, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"regime_gate":false,"holding_days":20,"formation_days":10},"performance":{"sharpe":0.33,"max_drawdown_pct":-18.5,"alpha_annualized_pct":3.6,"p_value":0.48,"regime_breakdown":{"UP":0.143847,"DOWN":0.518696,"FLAT":0.355625}},"executed_at":"2026-09-23T21:03:23","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0064","name":"formation_days=10, holding_days=60, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":60,"formation_days":10},"performance":{"sharpe":0.51,"max_drawdown_pct":-35.2,"alpha_annualized_pct":32.7,"p_value":0.074,"regime_breakdown":{"UP":2.396453,"DOWN":-0.765877,"FLAT":0.208262}},"executed_at":"2026-09-23T21:03:24","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0075","name":"formation_days=10, holding_days=60, n_stocks=20, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":20,"regime_gate":true,"holding_days":60,"formation_days":10},"performance":{"sharpe":-0.04,"max_drawdown_pct":-43.9,"alpha_annualized_pct":-1.5,"p_value":0.88,"regime_breakdown":{"UP":-0.913181,"DOWN":-0.687458,"FLAT":0.122066}},"executed_at":"2026-09-23T21:03:26","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0080","name":"formation_days=20, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":1,"formation_days":20},"performance":{"sharpe":1.32,"max_drawdown_pct":-5.6,"alpha_annualized_pct":12.8,"p_value":0.0054,"regime_breakdown":{"UP":1.40652,"DOWN":26.91652,"FLAT":1.166214}},"executed_at":"2026-09-23T21:03:27","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0090","name":"formation_days=20, holding_days=1, n_stocks=20, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":20,"regime_gate":false,"holding_days":1,"formation_days":20},"performance":{"sharpe":0.76,"max_drawdown_pct":-7.9,"alpha_annualized_pct":3.8,"p_value":0.1,"regime_breakdown":{"UP":0.234637,"DOWN":3.113748,"FLAT":0.880031}},"executed_at":"2026-09-23T21:03:29","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0104","name":"formation_days=20, holding_days=5, n_stocks=20, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":20,"regime_gate":false,"holding_days":5,"formation_days":20},"performance":{"sharpe":0.57,"max_drawdown_pct":-9.6,"alpha_annualized_pct":5,"p_value":0.21,"regime_breakdown":{"UP":0.210642,"DOWN":0.787607,"FLAT":0.672862}},"executed_at":"2026-09-23T21:03:32","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0118","name":"formation_days=20, holding_days=10, n_stocks=10, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":10,"formation_days":20},"performance":{"sharpe":-0.11,"max_drawdown_pct":-38.3,"alpha_annualized_pct":-2,"p_value":0.82,"regime_breakdown":{"UP":-0.154904,"DOWN":-0.536255,"FLAT":-0.066621}},"executed_at":"2026-09-23T21:03:34","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0132","name":"formation_days=20, holding_days=20, n_stocks=10, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":10,"regime_gate":false,"holding_days":20,"formation_days":20},"performance":{"sharpe":0.48,"max_drawdown_pct":-25.7,"alpha_annualized_pct":11.5,"p_value":0.3,"regime_breakdown":{"UP":0.729479,"DOWN":0.046902,"FLAT":0.436136}},"executed_at":"2026-09-23T21:03:37","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0146","name":"formation_days=20, holding_days=60, n_stocks=5, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":60,"formation_days":20},"performance":{"sharpe":0.31,"max_drawdown_pct":-41.8,"alpha_annualized_pct":19,"p_value":0.26,"regime_breakdown":{"UP":2.0224,"DOWN":-1.96114,"FLAT":-0.056}},"executed_at":"2026-09-23T21:03:40","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0160","name":"formation_days=40, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":1,"formation_days":40},"performance":{"sharpe":1.22,"max_drawdown_pct":-11.3,"alpha_annualized_pct":11.5,"p_value":0.01,"regime_breakdown":{"UP":1.32792,"DOWN":3.460948,"FLAT":1.034088}},"executed_at":"2026-09-23T21:03:43","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0174","name":"formation_days=40, holding_days=1, n_stocks=50, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":50,"regime_gate":false,"holding_days":1,"formation_days":40},"performance":{"sharpe":0.12,"max_drawdown_pct":-9.2,"alpha_annualized_pct":0.4,"p_value":0.8,"regime_breakdown":{"UP":-0.292262,"DOWN":4.282399,"FLAT":0.092667}},"executed_at":"2026-09-23T21:03:45","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0188","name":"formation_days=40, holding_days=5, n_stocks=50, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"regime_gate":false,"holding_days":5,"formation_days":40},"performance":{"sharpe":0.29,"max_drawdown_pct":-7.8,"alpha_annualized_pct":1.7,"p_value":0.53,"regime_breakdown":{"UP":-0.368935,"DOWN":1.170825,"FLAT":0.49404}},"executed_at":"2026-09-23T21:03:48","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0202","name":"formation_days=40, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":20,"regime_gate":false,"holding_days":10,"formation_days":40},"performance":{"sharpe":0.04,"max_drawdown_pct":-27.5,"alpha_annualized_pct":0.6,"p_value":0.93,"regime_breakdown":{"UP":-0.375936,"DOWN":-1.304746,"FLAT":0.265863}},"executed_at":"2026-09-23T21:03:51","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0216","name":"formation_days=40, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":20,"regime_gate":false,"holding_days":20,"formation_days":40},"performance":{"sharpe":0.62,"max_drawdown_pct":-18.4,"alpha_annualized_pct":10.6,"p_value":0.18,"regime_breakdown":{"UP":0.689356,"DOWN":-0.060965,"FLAT":0.655867}},"executed_at":"2026-09-23T21:03:53","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0230","name":"formation_days=40, holding_days=60, n_stocks=10, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":60,"formation_days":40},"performance":{"sharpe":0.46,"max_drawdown_pct":-30.8,"alpha_annualized_pct":21.7,"p_value":0.1,"regime_breakdown":{"UP":1.421108,"DOWN":-1.478366,"FLAT":0.316674}},"executed_at":"2026-09-23T21:03:56","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0240","name":"formation_days=60, holding_days=1, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":1,"formation_days":60},"performance":{"sharpe":1.05,"max_drawdown_pct":-12,"alpha_annualized_pct":10.4,"p_value":0.026,"regime_breakdown":{"UP":1.029751,"DOWN":-0.367086,"FLAT":1.192754}},"executed_at":"2026-09-23T21:03:58","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0245","name":"formation_days=60, holding_days=1, n_stocks=10, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":10,"regime_gate":true,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.86,"max_drawdown_pct":-7.8,"alpha_annualized_pct":5.2,"p_value":0.067,"regime_breakdown":{"UP":-1.181182,"DOWN":1.333811,"FLAT":1.077119}},"executed_at":"2026-09-23T21:03:59","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0259","name":"formation_days=60, holding_days=5, n_stocks=5, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":5,"regime_gate":true,"holding_days":5,"formation_days":60},"performance":{"sharpe":0.53,"max_drawdown_pct":-13.7,"alpha_annualized_pct":6.8,"p_value":0.25,"regime_breakdown":{"UP":-0.915588,"DOWN":-0.085553,"FLAT":0.726597}},"executed_at":"2026-09-23T21:04:02","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0273","name":"formation_days=60, holding_days=10, n_stocks=5, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":10,"formation_days":60},"performance":{"sharpe":-0.26,"max_drawdown_pct":-57.5,"alpha_annualized_pct":-6.1,"p_value":0.57,"regime_breakdown":{"UP":-1.334839,"DOWN":-0.603607,"FLAT":-0.205922}},"executed_at":"2026-09-23T21:04:04","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0283","name":"formation_days=60, holding_days=10, n_stocks=20, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":20,"regime_gate":true,"holding_days":10,"formation_days":60},"performance":{"sharpe":-0.57,"max_drawdown_pct":-48.7,"alpha_annualized_pct":-8.1,"p_value":0.22,"regime_breakdown":{"UP":-0.685363,"DOWN":-1.363557,"FLAT":-0.494679}},"executed_at":"2026-09-23T21:04:06","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0288","name":"formation_days=60, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":20,"formation_days":60},"performance":{"sharpe":0.27,"max_drawdown_pct":-42.5,"alpha_annualized_pct":8.2,"p_value":0.56,"regime_breakdown":{"UP":4.441555,"DOWN":0.901033,"FLAT":-0.405035}},"executed_at":"2026-09-23T21:04:07","notes":null},{"run_id":"r-garman-klass-vol-jp-growth-0302","name":"formation_days=60, holding_days=20, n_stocks=50, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":50,"regime_gate":false,"holding_days":20,"formation_days":60},"performance":{"sharpe":0.13,"max_drawdown_pct":-23.1,"alpha_annualized_pct":1.5,"p_value":0.78,"regime_breakdown":{"UP":0.335734,"DOWN":0.932799,"FLAT":-0.008267}},"executed_at":"2026-09-23T21:04:10","notes":null}],"facts":[{"fact_id":"garman-klass-vol-jp-growth-fact-best-sharpe","strategy_slug":"garman-klass-vol-jp-growth","claim":"Best grid Sharpe ratio is 1.32 (p=0.0054).","value":1.32,"value_text":null,"unit":"sharpe_ratio","context":"period 2022-02-01–2026-09-01; cost=5bps","supports_verdict":"marginal","source_run_id":"r-garman-klass-vol-jp-growth-0080","search_tsv":"'-01':12,15 '-02':11 '-09':14 '0.0054':8 '1.32':6 '2022':10 '2026':13 '5bps':17 'best':1 'cost':16 'grid':2 'p':7 'period':9 'ratio':4 'sharp':3","cite_url":"https://qbuntu.ai/cite/garman-klass-vol-jp-growth-fact-best-sharpe"},{"fact_id":"garman-klass-vol-jp-growth-fact-median-sharpe","strategy_slug":"garman-klass-vol-jp-growth","claim":"Median Sharpe across 320 grid runs is 0.24.","value":0.24,"value_text":null,"unit":"sharpe_ratio","context":"Full grid of 320 parameter combinations.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.24':8 '320':4,12 'across':3 'combin':14 'full':9 'grid':5,10 'median':1 'paramet':13 'run':6 'sharp':2","cite_url":"https://qbuntu.ai/cite/garman-klass-vol-jp-growth-fact-median-sharpe"},{"fact_id":"garman-klass-vol-jp-growth-fact-regime-down","strategy_slug":"garman-klass-vol-jp-growth","claim":"Median Sharpe in DOWN regime is -0.04 across 320 runs.","value":-0.04,"value_text":null,"unit":"sharpe_ratio","context":"Regime=DOWN, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'-0.04':7 '320':9 'across':8 'classif':15 'median':1 'n225':13 'regim':5,11 'run':10 'sharp':2 'sma20/sma60':14","cite_url":"https://qbuntu.ai/cite/garman-klass-vol-jp-growth-fact-regime-down"},{"fact_id":"garman-klass-vol-jp-growth-fact-regime-flat","strategy_slug":"garman-klass-vol-jp-growth","claim":"Median Sharpe in FLAT regime is 0.24 across 320 runs.","value":0.24,"value_text":null,"unit":"sharpe_ratio","context":"Regime=FLAT, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.24':7 '320':9 'across':8 'classif':15 'flat':4,12 'median':1 'n225':13 'regim':5,11 'run':10 'sharp':2 'sma20/sma60':14","cite_url":"https://qbuntu.ai/cite/garman-klass-vol-jp-growth-fact-regime-flat"},{"fact_id":"garman-klass-vol-jp-growth-fact-regime-up","strategy_slug":"garman-klass-vol-jp-growth","claim":"Median Sharpe in UP regime is -0.29 across 320 runs.","value":-0.29,"value_text":null,"unit":"sharpe_ratio","context":"Regime=UP, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'-0.29':7 '320':9 'across':8 'classif':15 'median':1 'n225':13 'regim':5,11 'run':10 'sharp':2 'sma20/sma60':14","cite_url":"https://qbuntu.ai/cite/garman-klass-vol-jp-growth-fact-regime-up"}],"related_strategies":[],"tags":["volatility","garman-klass","factor","anomaly","growth-market","grid-search"],"_links":{"self":"https://qbuntu.ai/v1/strategies/garman-klass-vol-jp-growth","html":"https://qbuntu.ai/strategies/garman-klass-vol-jp-growth","markdown":"https://qbuntu.ai/ai/strategies/garman-klass-vol-jp-growth.md"}}