{"schema_version":"v1","slug":"sales-growth-rank-jp-growth","name":"Sales Growth Rank (JP Growth Stocks)","name_i18n":{},"verdict":"rejected","asset_class":"equity","categories":["factor","fundamental","growth"],"hypothesis":"Top-line growth is the simplest growth signal retail screens sort on; ranking on year-over-year sales growth tests whether revenue growth alone predicts returns, or is already priced in (the classic growth-factor disappointment).","rejection_reason":{"primary":"regime_dependent","secondary":[],"narrative":"Across 48 grid combinations, median Sharpe=-0.17, best=2.49. Primary failure mode: regime_dependent."},"target_universe":{"description":"Tokyo Stock Exchange Growth Market, ~495 stocks, tv >= 30M JPY; fundamentals from J-Quants financial statements (coverage from 2023-12)","symbols":[]},"performance_summary":{"sharpe_median":-0.1667,"max_drawdown_pct":-7,"win_rate":null,"alpha_annualized_pct":null,"p_value":0.47,"backtest_period":{"start":"2025-01-06","end":"2026-06-01"}},"grid_summary":{"sharpe":{"p25":-0.59,"p75":0.65,"best":2.49,"worst":-1.18,"median":-0.17},"n_combinations":48},"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-08-03T01:03:06","git_sha_z":"2f23bb7","git_sha_genkidama":"711b855","python_version":"3.10.11","numpy_version":"2.2.6","pandas_version":"2.3.3","tier":"shallow"},"runs":[{"run_id":"r-sales-growth-rank-jp-growth-0000","name":"n_stocks=5, cost_bps=5, regime_gate=False, holding_days=1","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":1},"performance":{"sharpe":0.61,"max_drawdown_pct":-2.7,"alpha_annualized_pct":3.8,"p_value":0.46,"regime_breakdown":{"UP":0.807974,"DOWN":3.47437,"FLAT":0.132872}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0001","name":"n_stocks=5, cost_bps=5, regime_gate=False, holding_days=5","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":5},"performance":{"sharpe":-0.09,"max_drawdown_pct":-15.4,"alpha_annualized_pct":-1.1,"p_value":0.91,"regime_breakdown":{"UP":-0.295908,"DOWN":3.08161,"FLAT":-0.792393}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0002","name":"n_stocks=5, cost_bps=5, regime_gate=False, holding_days=20","params":{"cost_bps":5,"n_stocks":5,"regime_gate":false,"holding_days":20},"performance":{"sharpe":-1.09,"max_drawdown_pct":-31.5,"alpha_annualized_pct":-20.6,"p_value":0.21,"regime_breakdown":{"UP":-1.411537,"DOWN":21.120119,"FLAT":-1.998556}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0003","name":"n_stocks=5, cost_bps=5, regime_gate=True, holding_days=1","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":1},"performance":{"sharpe":-0.14,"max_drawdown_pct":-7.7,"alpha_annualized_pct":-1.2,"p_value":0.86,"regime_breakdown":{"UP":-0.575932,"DOWN":3.47437,"FLAT":0.132872}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0004","name":"n_stocks=5, cost_bps=5, regime_gate=True, holding_days=5","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":5},"performance":{"sharpe":0.21,"max_drawdown_pct":-9.5,"alpha_annualized_pct":2.2,"p_value":0.79,"regime_breakdown":{"UP":0.782972,"DOWN":3.08161,"FLAT":-0.792393}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0005","name":"n_stocks=5, cost_bps=5, regime_gate=True, holding_days=20","params":{"cost_bps":5,"n_stocks":5,"regime_gate":true,"holding_days":20},"performance":{"sharpe":-1.14,"max_drawdown_pct":-35.2,"alpha_annualized_pct":-24.7,"p_value":0.19,"regime_breakdown":{"UP":-1.391553,"DOWN":21.120119,"FLAT":-1.998556}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0006","name":"n_stocks=5, cost_bps=10, regime_gate=False, holding_days=1","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":1},"performance":{"sharpe":0.4,"max_drawdown_pct":-3.4,"alpha_annualized_pct":2.5,"p_value":0.63,"regime_breakdown":{"UP":0.599375,"DOWN":3.037299,"FLAT":-0.044001}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0007","name":"n_stocks=5, cost_bps=10, regime_gate=False, holding_days=5","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":5},"performance":{"sharpe":-0.2,"max_drawdown_pct":-15.9,"alpha_annualized_pct":-2.4,"p_value":0.8,"regime_breakdown":{"UP":-0.421863,"DOWN":2.985239,"FLAT":-0.897083}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0008","name":"n_stocks=5, cost_bps=10, regime_gate=False, holding_days=20","params":{"cost_bps":10,"n_stocks":5,"regime_gate":false,"holding_days":20},"performance":{"sharpe":-1.16,"max_drawdown_pct":-32.1,"alpha_annualized_pct":-21.8,"p_value":0.18,"regime_breakdown":{"UP":-1.490698,"DOWN":20.680984,"FLAT":-2.06476}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0009","name":"n_stocks=5, cost_bps=10, regime_gate=True, holding_days=1","params":{"cost_bps":10,"n_stocks":5,"regime_gate":true,"holding_days":1},"performance":{"sharpe":-0.26,"max_drawdown_pct":-8.7,"alpha_annualized_pct":-2.2,"p_value":0.75,"regime_breakdown":{"UP":-0.634731,"DOWN":3.037299,"FLAT":-0.044001}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0010","name":"n_stocks=5, cost_bps=10, regime_gate=True, holding_days=5","params":{"cost_bps":10,"n_stocks":5,"regime_gate":true,"holding_days":5},"performance":{"sharpe":0.12,"max_drawdown_pct":-9.8,"alpha_annualized_pct":1.2,"p_value":0.89,"regime_breakdown":{"UP":0.669884,"DOWN":2.985239,"FLAT":-0.897083}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0011","name":"n_stocks=5, cost_bps=10, regime_gate=True, holding_days=20","params":{"cost_bps":10,"n_stocks":5,"regime_gate":true,"holding_days":20},"performance":{"sharpe":-1.18,"max_drawdown_pct":-35.8,"alpha_annualized_pct":-25.7,"p_value":0.17,"regime_breakdown":{"UP":-1.418804,"DOWN":20.680984,"FLAT":-2.06476}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0012","name":"n_stocks=10, cost_bps=5, regime_gate=False, holding_days=1","params":{"cost_bps":5,"n_stocks":10,"regime_gate":false,"holding_days":1},"performance":{"sharpe":0.1,"max_drawdown_pct":-4.4,"alpha_annualized_pct":0.4,"p_value":0.9,"regime_breakdown":{"UP":-0.010844,"DOWN":6.358901,"FLAT":-0.702259}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0013","name":"n_stocks=10, cost_bps=5, regime_gate=False, holding_days=5","params":{"cost_bps":5,"n_stocks":10,"regime_gate":false,"holding_days":5},"performance":{"sharpe":0.94,"max_drawdown_pct":-5.5,"alpha_annualized_pct":7.5,"p_value":0.26,"regime_breakdown":{"UP":1.425893,"DOWN":18.611288,"FLAT":-0.535533}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0014","name":"n_stocks=10, cost_bps=5, regime_gate=False, holding_days=20","params":{"cost_bps":5,"n_stocks":10,"regime_gate":false,"holding_days":20},"performance":{"sharpe":-0.59,"max_drawdown_pct":-19.2,"alpha_annualized_pct":-8.8,"p_value":0.49,"regime_breakdown":{"UP":-0.574851,"DOWN":44.401103,"FLAT":-1.585118}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0015","name":"n_stocks=10, cost_bps=5, regime_gate=True, holding_days=1","params":{"cost_bps":5,"n_stocks":10,"regime_gate":true,"holding_days":1},"performance":{"sharpe":-0.52,"max_drawdown_pct":-9.2,"alpha_annualized_pct":-3.2,"p_value":0.53,"regime_breakdown":{"UP":-0.993753,"DOWN":6.358901,"FLAT":-0.702259}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0016","name":"n_stocks=10, cost_bps=5, regime_gate=True, holding_days=5","params":{"cost_bps":5,"n_stocks":10,"regime_gate":true,"holding_days":5},"performance":{"sharpe":1.11,"max_drawdown_pct":-3.9,"alpha_annualized_pct":9.3,"p_value":0.18,"regime_breakdown":{"UP":1.800276,"DOWN":18.611288,"FLAT":-0.535533}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0017","name":"n_stocks=10, cost_bps=5, regime_gate=True, holding_days=20","params":{"cost_bps":5,"n_stocks":10,"regime_gate":true,"holding_days":20},"performance":{"sharpe":-0.79,"max_drawdown_pct":-26.1,"alpha_annualized_pct":-14.9,"p_value":0.36,"regime_breakdown":{"UP":-0.962684,"DOWN":44.401103,"FLAT":-1.585118}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0018","name":"n_stocks=10, cost_bps=10, regime_gate=False, holding_days=1","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":1},"performance":{"sharpe":-0.27,"max_drawdown_pct":-5.7,"alpha_annualized_pct":-0.9,"p_value":0.74,"regime_breakdown":{"UP":-0.665655,"DOWN":5.813719,"FLAT":-1.010688}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0019","name":"n_stocks=10, cost_bps=10, regime_gate=False, holding_days=5","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":5},"performance":{"sharpe":0.78,"max_drawdown_pct":-6,"alpha_annualized_pct":6.2,"p_value":0.35,"regime_breakdown":{"UP":1.249054,"DOWN":18.045782,"FLAT":-0.705482}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0020","name":"n_stocks=10, cost_bps=10, regime_gate=False, holding_days=20","params":{"cost_bps":10,"n_stocks":10,"regime_gate":false,"holding_days":20},"performance":{"sharpe":-0.68,"max_drawdown_pct":-20.2,"alpha_annualized_pct":-10.1,"p_value":0.42,"regime_breakdown":{"UP":-0.695533,"DOWN":43.316316,"FLAT":-1.662525}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0021","name":"n_stocks=10, cost_bps=10, regime_gate=True, holding_days=1","params":{"cost_bps":10,"n_stocks":10,"regime_gate":true,"holding_days":1},"performance":{"sharpe":-0.68,"max_drawdown_pct":-10.1,"alpha_annualized_pct":-4.2,"p_value":0.41,"regime_breakdown":{"UP":-1.072522,"DOWN":5.813719,"FLAT":-1.010688}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0022","name":"n_stocks=10, cost_bps=10, regime_gate=True, holding_days=5","params":{"cost_bps":10,"n_stocks":10,"regime_gate":true,"holding_days":5},"performance":{"sharpe":0.99,"max_drawdown_pct":-4.3,"alpha_annualized_pct":8.3,"p_value":0.23,"regime_breakdown":{"UP":1.719372,"DOWN":18.045782,"FLAT":-0.705482}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0023","name":"n_stocks=10, cost_bps=10, regime_gate=True, holding_days=20","params":{"cost_bps":10,"n_stocks":10,"regime_gate":true,"holding_days":20},"performance":{"sharpe":-0.84,"max_drawdown_pct":-26.7,"alpha_annualized_pct":-15.9,"p_value":0.32,"regime_breakdown":{"UP":-0.992399,"DOWN":43.316316,"FLAT":-1.662525}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0024","name":"n_stocks=20, cost_bps=5, regime_gate=False, holding_days=1","params":{"cost_bps":5,"n_stocks":20,"regime_gate":false,"holding_days":1},"performance":{"sharpe":0.53,"max_drawdown_pct":-1.8,"alpha_annualized_pct":1.3,"p_value":0.53,"regime_breakdown":{"UP":-0.650102,"DOWN":8.427322,"FLAT":0.156684}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0025","name":"n_stocks=20, cost_bps=5, regime_gate=False, holding_days=5","params":{"cost_bps":5,"n_stocks":20,"regime_gate":false,"holding_days":5},"performance":{"sharpe":2.49,"max_drawdown_pct":-1.6,"alpha_annualized_pct":12.3,"p_value":0.0084,"regime_breakdown":{"UP":2.096453,"DOWN":7.149531,"FLAT":1.967977}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0026","name":"n_stocks=20, cost_bps=5, regime_gate=False, holding_days=20","params":{"cost_bps":5,"n_stocks":20,"regime_gate":false,"holding_days":20},"performance":{"sharpe":0.29,"max_drawdown_pct":-13.3,"alpha_annualized_pct":3.8,"p_value":0.74,"regime_breakdown":{"UP":0.385053,"DOWN":7.267084,"FLAT":-0.506741}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0027","name":"n_stocks=20, cost_bps=5, regime_gate=True, holding_days=1","params":{"cost_bps":5,"n_stocks":20,"regime_gate":true,"holding_days":1},"performance":{"sharpe":-0.24,"max_drawdown_pct":-5.7,"alpha_annualized_pct":-1.3,"p_value":0.78,"regime_breakdown":{"UP":-0.910732,"DOWN":8.427322,"FLAT":0.156684}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0028","name":"n_stocks=20, cost_bps=5, regime_gate=True, holding_days=5","params":{"cost_bps":5,"n_stocks":20,"regime_gate":true,"holding_days":5},"performance":{"sharpe":2.19,"max_drawdown_pct":-3.4,"alpha_annualized_pct":13.5,"p_value":0.017,"regime_breakdown":{"UP":1.654902,"DOWN":7.149531,"FLAT":1.967977}},"executed_at":"2026-08-03T01:01:47","notes":null},{"run_id":"r-sales-growth-rank-jp-growth-0036","name":"n_stocks=50, cost_bps=5, regime_gate=False, holding_days=1","params":{"cost_bps":5,"n_stocks":50,"regime_gate":false,"holding_days":1},"performance":{"sharpe":-0.09,"max_drawdown_pct":-2.5,"alpha_annualized_pct":-0.2,"p_value":0.92,"regime_breakdown":{"UP":-0.037913,"DOWN":13.630768,"FLAT":-2.018425}},"executed_at":"2026-08-03T01:01:47","notes":null}],"facts":[{"fact_id":"sales-growth-rank-jp-growth-fact-best-sharpe","strategy_slug":"sales-growth-rank-jp-growth","claim":"Best grid Sharpe ratio is 2.49 (p=0.0084).","value":2.49,"value_text":null,"unit":"sharpe_ratio","context":"period 2025-01-06–2026-06-01; cost=5bps","supports_verdict":"rejected","source_run_id":"r-sales-growth-rank-jp-growth-0025","search_tsv":"'-01':11,15 '-06':12,14 '0.0084':8 '2.49':6 '2025':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/sales-growth-rank-jp-growth-fact-best-sharpe"},{"fact_id":"sales-growth-rank-jp-growth-fact-median-sharpe","strategy_slug":"sales-growth-rank-jp-growth","claim":"Median Sharpe across 48 grid runs is -0.17.","value":-0.17,"value_text":null,"unit":"sharpe_ratio","context":"Full grid of 48 parameter combinations.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'-0.17':8 '48':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/sales-growth-rank-jp-growth-fact-median-sharpe"},{"fact_id":"sales-growth-rank-jp-growth-fact-regime-down","strategy_slug":"sales-growth-rank-jp-growth","claim":"Median Sharpe in DOWN regime is 7.47 across 48 runs.","value":7.47,"value_text":null,"unit":"sharpe_ratio","context":"Regime=DOWN, N225 SMA20/SMA60 classification.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'48':9 '7.47':7 'across':8 'classif':15 'median':1 'n225':13 'regim':5,11 'run':10 'sharp':2 'sma20/sma60':14","cite_url":"https://qbuntu.ai/cite/sales-growth-rank-jp-growth-fact-regime-down"},{"fact_id":"sales-growth-rank-jp-growth-fact-regime-flat","strategy_slug":"sales-growth-rank-jp-growth","claim":"Median Sharpe in FLAT regime is -0.70 across 48 runs.","value":-0.7,"value_text":null,"unit":"sharpe_ratio","context":"Regime=FLAT, N225 SMA20/SMA60 classification.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'-0.70':7 '48':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/sales-growth-rank-jp-growth-fact-regime-flat"},{"fact_id":"sales-growth-rank-jp-growth-fact-regime-up","strategy_slug":"sales-growth-rank-jp-growth","claim":"Median Sharpe in UP regime is -0.48 across 48 runs.","value":-0.48,"value_text":null,"unit":"sharpe_ratio","context":"Regime=UP, N225 SMA20/SMA60 classification.","supports_verdict":"rejected","source_run_id":null,"search_tsv":"'-0.48':7 '48':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/sales-growth-rank-jp-growth-fact-regime-up"}],"related_strategies":[{"related_slug":"sales-growth-rank-jp-all","relation":"same_strategy"}],"tags":["growth","sales","rank","fundamental","growth-market","grid-search"],"_links":{"self":"https://qbuntu.ai/v1/strategies/sales-growth-rank-jp-growth","html":"https://qbuntu.ai/strategies/sales-growth-rank-jp-growth","markdown":"https://qbuntu.ai/ai/strategies/sales-growth-rank-jp-growth.md"}}