{"schema_version":"v1","slug":"momentum-volume-jp-all","name":"Momentum × Volume Interaction (JP All Stocks)","name_i18n":{},"verdict":"rejected","asset_class":"equity","categories":["factor","interaction","momentum","volume"],"hypothesis":"Lee & Swaminathan (2000): volume confirms momentum quality. Testing on the full Japanese stock universe.","rejection_reason":{"primary":"no_edge","secondary":[],"narrative":"Across 320 grid combinations, median Sharpe=-0.01, best=1.08. Primary failure mode: no_edge."},"target_universe":{"description":"Tokyo Stock Exchange all listed (Prime/Standard/Growth), ~3747 stocks","symbols":[]},"performance_summary":{"sharpe_median":-0.0086,"max_drawdown_pct":-18.7,"win_rate":null,"alpha_annualized_pct":null,"p_value":0.48,"backtest_period":{"start":"2022-05-02","end":"2026-09-01"}},"grid_summary":{"sharpe":{"p25":-0.3,"p75":0.33,"best":1.08,"worst":-1.38,"median":-0.01},"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-26T05:57:59","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-momentum-volume-jp-all-0000","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":0.16,"max_drawdown_pct":-13.4,"alpha_annualized_pct":1.2,"p_value":0.73,"regime_breakdown":{"UP":1.154595,"DOWN":0.066989,"FLAT":-0.686694}},"executed_at":"2026-09-25T21:49:07","notes":null},{"run_id":"r-momentum-volume-jp-all-0001","name":"formation_days=20, 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":20},"performance":{"sharpe":-0.11,"max_drawdown_pct":-14.6,"alpha_annualized_pct":-0.9,"p_value":0.81,"regime_breakdown":{"UP":0.361434,"DOWN":0.066989,"FLAT":-0.686694}},"executed_at":"2026-09-25T21:49:07","notes":null},{"run_id":"r-momentum-volume-jp-all-0002","name":"formation_days=20, 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":20},"performance":{"sharpe":-0.01,"max_drawdown_pct":-14.2,"alpha_annualized_pct":-0.1,"p_value":0.99,"regime_breakdown":{"UP":0.978867,"DOWN":-0.121293,"FLAT":-0.849736}},"executed_at":"2026-09-25T21:49:08","notes":null},{"run_id":"r-momentum-volume-jp-all-0003","name":"formation_days=20, 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":20},"performance":{"sharpe":-0.24,"max_drawdown_pct":-15.6,"alpha_annualized_pct":-1.8,"p_value":0.62,"regime_breakdown":{"UP":0.290463,"DOWN":-0.121293,"FLAT":-0.849736}},"executed_at":"2026-09-25T21:49:09","notes":null},{"run_id":"r-momentum-volume-jp-all-0012","name":"formation_days=20, 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":20},"performance":{"sharpe":-0.11,"max_drawdown_pct":-4.6,"alpha_annualized_pct":-0.4,"p_value":0.81,"regime_breakdown":{"UP":0.53714,"DOWN":-1.207501,"FLAT":-0.146119}},"executed_at":"2026-09-25T21:49:17","notes":null},{"run_id":"r-momentum-volume-jp-all-0018","name":"formation_days=20, 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":20},"performance":{"sharpe":0.04,"max_drawdown_pct":-18.3,"alpha_annualized_pct":0.6,"p_value":0.94,"regime_breakdown":{"UP":0.647557,"DOWN":1.606294,"FLAT":-0.349541}},"executed_at":"2026-09-25T21:49:22","notes":null},{"run_id":"r-momentum-volume-jp-all-0032","name":"formation_days=20, 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":20},"performance":{"sharpe":0.11,"max_drawdown_pct":-36.8,"alpha_annualized_pct":2.4,"p_value":0.81,"regime_breakdown":{"UP":1.041203,"DOWN":1.370514,"FLAT":-0.373174}},"executed_at":"2026-09-25T21:49:35","notes":null},{"run_id":"r-momentum-volume-jp-all-0046","name":"formation_days=20, 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":20},"performance":{"sharpe":-1.04,"max_drawdown_pct":-29.8,"alpha_annualized_pct":-6.5,"p_value":0.03,"regime_breakdown":{"UP":-0.201172,"DOWN":-0.69529,"FLAT":-1.756868}},"executed_at":"2026-09-25T21:49:47","notes":null},{"run_id":"r-momentum-volume-jp-all-0060","name":"formation_days=20, 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":20},"performance":{"sharpe":-1.2,"max_drawdown_pct":-33.3,"alpha_annualized_pct":-8.3,"p_value":0.014,"regime_breakdown":{"UP":-0.596338,"DOWN":-1.586393,"FLAT":-1.712968}},"executed_at":"2026-09-25T21:49:59","notes":null},{"run_id":"r-momentum-volume-jp-all-0062","name":"formation_days=20, 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":20},"performance":{"sharpe":-1.38,"max_drawdown_pct":-36.2,"alpha_annualized_pct":-9.5,"p_value":0.0053,"regime_breakdown":{"UP":-0.766442,"DOWN":-1.840477,"FLAT":-1.882034}},"executed_at":"2026-09-25T21:50:01","notes":null},{"run_id":"r-momentum-volume-jp-all-0064","name":"formation_days=20, 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":20},"performance":{"sharpe":0.29,"max_drawdown_pct":-65.1,"alpha_annualized_pct":22,"p_value":0.32,"regime_breakdown":{"UP":1.04092,"DOWN":0.085387,"FLAT":-0.202647}},"executed_at":"2026-09-25T21:50:03","notes":null},{"run_id":"r-momentum-volume-jp-all-0076","name":"formation_days=20, holding_days=60, n_stocks=50, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"regime_gate":false,"holding_days":60,"formation_days":20},"performance":{"sharpe":-0.74,"max_drawdown_pct":-56.2,"alpha_annualized_pct":-17.5,"p_value":0.013,"regime_breakdown":{"UP":-0.659593,"DOWN":-0.192876,"FLAT":-0.903755}},"executed_at":"2026-09-25T21:50:13","notes":null},{"run_id":"r-momentum-volume-jp-all-0090","name":"formation_days=60, 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":60},"performance":{"sharpe":-0.28,"max_drawdown_pct":-4.9,"alpha_annualized_pct":-1.1,"p_value":0.56,"regime_breakdown":{"UP":0.006979,"DOWN":-0.458378,"FLAT":-0.572688}},"executed_at":"2026-09-25T21:50:26","notes":null},{"run_id":"r-momentum-volume-jp-all-0104","name":"formation_days=60, 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":60},"performance":{"sharpe":-0.79,"max_drawdown_pct":-20,"alpha_annualized_pct":-5.1,"p_value":0.1,"regime_breakdown":{"UP":-0.742917,"DOWN":-0.417151,"FLAT":-0.93065}},"executed_at":"2026-09-25T21:50:38","notes":null},{"run_id":"r-momentum-volume-jp-all-0118","name":"formation_days=60, 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":60},"performance":{"sharpe":-0.24,"max_drawdown_pct":-25.4,"alpha_annualized_pct":-3.2,"p_value":0.62,"regime_breakdown":{"UP":1.399801,"DOWN":1.092456,"FLAT":-2.175482}},"executed_at":"2026-09-25T21:50:50","notes":null},{"run_id":"r-momentum-volume-jp-all-0132","name":"formation_days=60, 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":60},"performance":{"sharpe":-0.09,"max_drawdown_pct":-31.6,"alpha_annualized_pct":-1.5,"p_value":0.85,"regime_breakdown":{"UP":0.672718,"DOWN":1.292424,"FLAT":-1.426297}},"executed_at":"2026-09-25T21:51:03","notes":null},{"run_id":"r-momentum-volume-jp-all-0146","name":"formation_days=60, 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":60},"performance":{"sharpe":0.62,"max_drawdown_pct":-27.2,"alpha_annualized_pct":45.6,"p_value":0.036,"regime_breakdown":{"UP":0.143923,"DOWN":1.908884,"FLAT":0.794445}},"executed_at":"2026-09-25T21:51:15","notes":null},{"run_id":"r-momentum-volume-jp-all-0160","name":"formation_days=120, 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":120},"performance":{"sharpe":0.19,"max_drawdown_pct":-8.2,"alpha_annualized_pct":1.5,"p_value":0.69,"regime_breakdown":{"UP":0.537925,"DOWN":0.450701,"FLAT":-0.293085}},"executed_at":"2026-09-25T21:51:27","notes":null},{"run_id":"r-momentum-volume-jp-all-0174","name":"formation_days=120, 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":120},"performance":{"sharpe":-0.87,"max_drawdown_pct":-8.2,"alpha_annualized_pct":-2,"p_value":0.074,"regime_breakdown":{"UP":-0.509304,"DOWN":-2.627813,"FLAT":-0.814004}},"executed_at":"2026-09-25T21:51:39","notes":null},{"run_id":"r-momentum-volume-jp-all-0188","name":"formation_days=120, 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":120},"performance":{"sharpe":-0.07,"max_drawdown_pct":-6.6,"alpha_annualized_pct":-0.3,"p_value":0.89,"regime_breakdown":{"UP":-0.092797,"DOWN":-2.796326,"FLAT":0.73089}},"executed_at":"2026-09-25T21:51:51","notes":null},{"run_id":"r-momentum-volume-jp-all-0202","name":"formation_days=120, 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":120},"performance":{"sharpe":0.19,"max_drawdown_pct":-9.4,"alpha_annualized_pct":1.6,"p_value":0.69,"regime_breakdown":{"UP":0.574206,"DOWN":0.108982,"FLAT":-0.300295}},"executed_at":"2026-09-25T21:52:04","notes":null},{"run_id":"r-momentum-volume-jp-all-0209","name":"formation_days=120, holding_days=20, n_stocks=5, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":20,"formation_days":120},"performance":{"sharpe":1.08,"max_drawdown_pct":-18.3,"alpha_annualized_pct":27.6,"p_value":0.03,"regime_breakdown":{"UP":0.683883,"DOWN":1.85368,"FLAT":1.164162}},"executed_at":"2026-09-25T21:52:10","notes":null},{"run_id":"r-momentum-volume-jp-all-0217","name":"formation_days=120, holding_days=20, n_stocks=20, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":20,"regime_gate":true,"holding_days":20,"formation_days":120},"performance":{"sharpe":0.7,"max_drawdown_pct":-10.4,"alpha_annualized_pct":9.8,"p_value":0.15,"regime_breakdown":{"UP":0.792488,"DOWN":2.184809,"FLAT":0.184834}},"executed_at":"2026-09-25T21:52:17","notes":null},{"run_id":"r-momentum-volume-jp-all-0231","name":"formation_days=120, holding_days=60, n_stocks=10, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":10,"regime_gate":true,"holding_days":60,"formation_days":120},"performance":{"sharpe":0.53,"max_drawdown_pct":-24,"alpha_annualized_pct":37.2,"p_value":0.074,"regime_breakdown":{"UP":0.465168,"DOWN":-0.261426,"FLAT":0.735225}},"executed_at":"2026-09-25T21:52:29","notes":null},{"run_id":"r-momentum-volume-jp-all-0240","name":"formation_days=250, 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":250},"performance":{"sharpe":0,"max_drawdown_pct":-7.3,"alpha_annualized_pct":0,"p_value":1,"regime_breakdown":{"UP":-0.381175,"DOWN":1.751002,"FLAT":0.089795}},"executed_at":"2026-09-25T21:52:37","notes":null},{"run_id":"r-momentum-volume-jp-all-0246","name":"formation_days=250, holding_days=1, n_stocks=10, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":1,"formation_days":250},"performance":{"sharpe":-0.23,"max_drawdown_pct":-6.6,"alpha_annualized_pct":-1.1,"p_value":0.66,"regime_breakdown":{"UP":-0.682924,"DOWN":1.661224,"FLAT":-0.075784}},"executed_at":"2026-09-25T21:52:42","notes":null},{"run_id":"r-momentum-volume-jp-all-0260","name":"formation_days=250, holding_days=5, n_stocks=10, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":10,"regime_gate":false,"holding_days":5,"formation_days":250},"performance":{"sharpe":0.08,"max_drawdown_pct":-7.6,"alpha_annualized_pct":0.7,"p_value":0.87,"regime_breakdown":{"UP":-0.382711,"DOWN":1.585288,"FLAT":0.226428}},"executed_at":"2026-09-25T21:52:54","notes":null},{"run_id":"r-momentum-volume-jp-all-0274","name":"formation_days=250, holding_days=10, n_stocks=5, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":10,"formation_days":250},"performance":{"sharpe":-0.28,"max_drawdown_pct":-54.3,"alpha_annualized_pct":-8.2,"p_value":0.59,"regime_breakdown":{"UP":0.237041,"DOWN":1.9095,"FLAT":-0.677152}},"executed_at":"2026-09-25T21:53:06","notes":null},{"run_id":"r-momentum-volume-jp-all-0288","name":"formation_days=250, 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":250},"performance":{"sharpe":-0.12,"max_drawdown_pct":-46.8,"alpha_annualized_pct":-3.7,"p_value":0.81,"regime_breakdown":{"UP":0.017478,"DOWN":12.280999,"FLAT":-0.413144}},"executed_at":"2026-09-25T21:53:18","notes":null},{"run_id":"r-momentum-volume-jp-all-0302","name":"formation_days=250, 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":250},"performance":{"sharpe":-0.1,"max_drawdown_pct":-24.2,"alpha_annualized_pct":-0.8,"p_value":0.85,"regime_breakdown":{"UP":0.368659,"DOWN":-1.516294,"FLAT":-0.544125}},"executed_at":"2026-09-25T21:53:30","notes":null}],"facts":[{"fact_id":"momentum-volume-jp-all-fact-best-sharpe","strategy_slug":"momentum-volume-jp-all","claim":"Best grid Sharpe ratio is 1.08 (p=0.03).","value":1.08,"value_text":null,"unit":"sharpe_ratio","context":"period 2022-05-02–2026-09-01; cost=5bps","supports_verdict":"rejected","source_run_id":"r-momentum-volume-jp-all-0209","search_tsv":"'-01':15 '-02':12 '-05':11 '-09':14 '0.03':8 '1.08':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/momentum-volume-jp-all-fact-best-sharpe"},{"fact_id":"momentum-volume-jp-all-fact-median-sharpe","strategy_slug":"momentum-volume-jp-all","claim":"Median Sharpe across 320 grid runs is -0.01.","value":-0.01,"value_text":null,"unit":"sharpe_ratio","context":"Full grid of 320 parameter combinations.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'-0.01':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/momentum-volume-jp-all-fact-median-sharpe"},{"fact_id":"momentum-volume-jp-all-fact-regime-down","strategy_slug":"momentum-volume-jp-all","claim":"Median Sharpe in DOWN regime is 0.06 across 320 runs.","value":0.06,"value_text":null,"unit":"sharpe_ratio","context":"Regime=DOWN, N225 SMA20/SMA60 classification.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'0.06':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/momentum-volume-jp-all-fact-regime-down"},{"fact_id":"momentum-volume-jp-all-fact-regime-flat","strategy_slug":"momentum-volume-jp-all","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":"rejected","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/momentum-volume-jp-all-fact-regime-flat"},{"fact_id":"momentum-volume-jp-all-fact-regime-up","strategy_slug":"momentum-volume-jp-all","claim":"Median Sharpe in UP regime is 0.24 across 320 runs.","value":0.24,"value_text":null,"unit":"sharpe_ratio","context":"Regime=UP, N225 SMA20/SMA60 classification.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'0.24':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/momentum-volume-jp-all-fact-regime-up"}],"related_strategies":[{"related_slug":"momentum-volume-jp-growth","relation":"same_strategy"}],"tags":["momentum","volume","interaction","factor","all-market","grid-search"],"_links":{"self":"https://qbuntu.ai/v1/strategies/momentum-volume-jp-all","html":"https://qbuntu.ai/strategies/momentum-volume-jp-all","markdown":"https://qbuntu.ai/ai/strategies/momentum-volume-jp-all.md"}}