{"schema_version":"v1","slug":"momentum-cross-sectional-us-sp500","name":"Cross-Sectional Momentum (US S&P 500)","name_i18n":{},"verdict":"marginal","asset_class":"equity","categories":["cross-sectional","factor","momentum"],"hypothesis":"Jegadeesh & Titman (1993): stocks with high past returns continue to outperform over intermediate horizons. LONG winners, SHORT losers. Applied to S&P 500 constituents.","rejection_reason":{"primary":"no_edge","secondary":[],"narrative":"Across 960 grid combinations, median Sharpe=0.76, best=2.28. Primary failure mode: no_edge."},"target_universe":{"description":"S&P 500 constituents, ~503 stocks","symbols":[]},"performance_summary":{"sharpe_median":0.7553,"max_drawdown_pct":-14.8,"win_rate":null,"alpha_annualized_pct":null,"p_value":0.13,"backtest_period":{"start":"2022-04-01","end":"2026-06-01"}},"grid_summary":{"sharpe":{"p25":0.42,"p75":1.05,"best":2.28,"worst":-0.67,"median":0.76},"n_combinations":960},"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":"GSPC SMA20/SMA60 three-class: UP (close>SMA20 AND SMA20>SMA60), DOWN (close<SMA20 AND SMA20<SMA60), FLAT (else)","transaction_cost_bps":5},"provenance":{"data_source":"kabu STATION REST API + J-Quants daily bars","source_project":"qbuntu-analysis","computed_asof":"2026-07-27T03:36:14","git_sha_z":"bfafe7d","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-momentum-cross-sectional-us-sp500-0000","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=0, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.58,"max_drawdown_pct":-13.6,"alpha_annualized_pct":4.8,"p_value":0.23,"regime_breakdown":{"UP":1.695502,"DOWN":0.287364,"FLAT":-0.38143}},"executed_at":"2026-07-27T03:31:30","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0001","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=0, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"skip_days":0,"regime_gate":true,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.2,"max_drawdown_pct":-13.6,"alpha_annualized_pct":1.6,"p_value":0.67,"regime_breakdown":{"UP":0.810938,"DOWN":0.287364,"FLAT":-0.38143}},"executed_at":"2026-07-27T03:31:30","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0002","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=0, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.43,"max_drawdown_pct":-14.1,"alpha_annualized_pct":3.6,"p_value":0.37,"regime_breakdown":{"UP":1.507101,"DOWN":0.170039,"FLAT":-0.507306}},"executed_at":"2026-07-27T03:31:30","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0003","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=0, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":5,"skip_days":0,"regime_gate":true,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.09,"max_drawdown_pct":-14.1,"alpha_annualized_pct":0.7,"p_value":0.86,"regime_breakdown":{"UP":0.704235,"DOWN":0.170039,"FLAT":-0.507306}},"executed_at":"2026-07-27T03:31:31","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0008","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=21, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":21,"regime_gate":false,"holding_days":1,"formation_days":60},"performance":{"sharpe":-0.44,"max_drawdown_pct":-20.8,"alpha_annualized_pct":-3.7,"p_value":0.37,"regime_breakdown":{"UP":0.650587,"DOWN":-0.890418,"FLAT":-1.265333}},"executed_at":"2026-07-27T03:31:31","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0011","name":"formation_days=60, holding_days=1, n_stocks=5, skip_days=21, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":5,"skip_days":21,"regime_gate":true,"holding_days":1,"formation_days":60},"performance":{"sharpe":-0.67,"max_drawdown_pct":-27.1,"alpha_annualized_pct":-5.4,"p_value":0.17,"regime_breakdown":{"UP":0.349586,"DOWN":-1.011895,"FLAT":-1.381791}},"executed_at":"2026-07-27T03:31:31","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0036","name":"formation_days=60, holding_days=1, n_stocks=50, skip_days=0, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"skip_days":0,"regime_gate":false,"holding_days":1,"formation_days":60},"performance":{"sharpe":0.14,"max_drawdown_pct":-4.6,"alpha_annualized_pct":0.6,"p_value":0.77,"regime_breakdown":{"UP":1.156603,"DOWN":-0.264845,"FLAT":-0.673676}},"executed_at":"2026-07-27T03:31:32","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0051","name":"formation_days=60, holding_days=5, n_stocks=5, skip_days=0, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":5,"skip_days":0,"regime_gate":true,"holding_days":5,"formation_days":60},"performance":{"sharpe":0.61,"max_drawdown_pct":-15.6,"alpha_annualized_pct":10.4,"p_value":0.21,"regime_breakdown":{"UP":0.819797,"DOWN":1.390955,"FLAT":0.164614}},"executed_at":"2026-07-27T03:31:33","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0096","name":"formation_days=60, holding_days=10, n_stocks=5, skip_days=0, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":10,"formation_days":60},"performance":{"sharpe":0.21,"max_drawdown_pct":-35.1,"alpha_annualized_pct":4.8,"p_value":0.66,"regime_breakdown":{"UP":0.879241,"DOWN":-0.200676,"FLAT":-0.32211}},"executed_at":"2026-07-27T03:31:36","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0141","name":"formation_days=60, holding_days=10, n_stocks=50, skip_days=21, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":50,"skip_days":21,"regime_gate":true,"holding_days":10,"formation_days":60},"performance":{"sharpe":0.03,"max_drawdown_pct":-11.7,"alpha_annualized_pct":0.2,"p_value":0.94,"regime_breakdown":{"UP":1.127831,"DOWN":-0.055948,"FLAT":-0.794054}},"executed_at":"2026-07-27T03:31:38","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0186","name":"formation_days=60, holding_days=20, n_stocks=50, skip_days=5, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":50,"skip_days":5,"regime_gate":false,"holding_days":20,"formation_days":60},"performance":{"sharpe":-0.02,"max_drawdown_pct":-24.7,"alpha_annualized_pct":-0.3,"p_value":0.96,"regime_breakdown":{"UP":0.532793,"DOWN":-0.551158,"FLAT":-0.345669}},"executed_at":"2026-07-27T03:31:41","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0192","name":"formation_days=60, holding_days=60, n_stocks=5, skip_days=0, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":60,"formation_days":60},"performance":{"sharpe":0.56,"max_drawdown_pct":-60.6,"alpha_annualized_pct":62.8,"p_value":0.059,"regime_breakdown":{"UP":0.989206,"DOWN":-1.605161,"FLAT":0.411434}},"executed_at":"2026-07-27T03:31:41","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0232","name":"formation_days=60, holding_days=60, n_stocks=50, skip_days=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":50,"skip_days":5,"regime_gate":false,"holding_days":60,"formation_days":60},"performance":{"sharpe":0.24,"max_drawdown_pct":-33.6,"alpha_annualized_pct":8.1,"p_value":0.42,"regime_breakdown":{"UP":0.944395,"DOWN":-2.819114,"FLAT":0.196015}},"executed_at":"2026-07-27T03:31:43","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0277","name":"formation_days=120, holding_days=1, n_stocks=50, skip_days=0, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":50,"skip_days":0,"regime_gate":true,"holding_days":1,"formation_days":120},"performance":{"sharpe":-0.04,"max_drawdown_pct":-5.4,"alpha_annualized_pct":-0.1,"p_value":0.93,"regime_breakdown":{"UP":0.728789,"DOWN":-0.60685,"FLAT":-0.557996}},"executed_at":"2026-07-27T03:31:46","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0322","name":"formation_days=120, holding_days=5, n_stocks=20, skip_days=21, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":20,"skip_days":21,"regime_gate":false,"holding_days":5,"formation_days":120},"performance":{"sharpe":0.36,"max_drawdown_pct":-14.2,"alpha_annualized_pct":3.8,"p_value":0.48,"regime_breakdown":{"UP":0.088658,"DOWN":2.477911,"FLAT":-0.353782}},"executed_at":"2026-07-27T03:31:48","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0367","name":"formation_days=120, holding_days=10, n_stocks=20, skip_days=5, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":20,"skip_days":5,"regime_gate":true,"holding_days":10,"formation_days":120},"performance":{"sharpe":0.6,"max_drawdown_pct":-9.5,"alpha_annualized_pct":6.3,"p_value":0.24,"regime_breakdown":{"UP":1.460269,"DOWN":1.460403,"FLAT":-0.468262}},"executed_at":"2026-07-27T03:31:50","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0412","name":"formation_days=120, holding_days=20, n_stocks=20, skip_days=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":20,"skip_days":5,"regime_gate":false,"holding_days":20,"formation_days":120},"performance":{"sharpe":0.9,"max_drawdown_pct":-17.1,"alpha_annualized_pct":16.1,"p_value":0.079,"regime_breakdown":{"UP":1.207464,"DOWN":1.471961,"FLAT":0.302776}},"executed_at":"2026-07-27T03:31:53","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0457","name":"formation_days=120, holding_days=60, n_stocks=20, skip_days=0, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":20,"skip_days":0,"regime_gate":true,"holding_days":60,"formation_days":120},"performance":{"sharpe":1.25,"max_drawdown_pct":-15.3,"alpha_annualized_pct":66,"p_value":0.00015,"regime_breakdown":{"UP":1.665584,"DOWN":-0.48333,"FLAT":1.085487}},"executed_at":"2026-07-27T03:31:55","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0502","name":"formation_days=180, holding_days=1, n_stocks=10, skip_days=21, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":10,"skip_days":21,"regime_gate":false,"holding_days":1,"formation_days":180},"performance":{"sharpe":0.21,"max_drawdown_pct":-10.4,"alpha_annualized_pct":1.4,"p_value":0.68,"regime_breakdown":{"UP":0.451864,"DOWN":-0.219293,"FLAT":-0.063122}},"executed_at":"2026-07-27T03:31:58","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0547","name":"formation_days=180, holding_days=5, n_stocks=10, skip_days=5, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":10,"skip_days":5,"regime_gate":true,"holding_days":5,"formation_days":180},"performance":{"sharpe":1.13,"max_drawdown_pct":-10.4,"alpha_annualized_pct":16.6,"p_value":0.032,"regime_breakdown":{"UP":1.171459,"DOWN":2.433056,"FLAT":0.448836}},"executed_at":"2026-07-27T03:32:00","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0592","name":"formation_days=180, holding_days=10, n_stocks=10, skip_days=5, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":10,"skip_days":5,"regime_gate":false,"holding_days":10,"formation_days":180},"performance":{"sharpe":1.01,"max_drawdown_pct":-21.1,"alpha_annualized_pct":16.6,"p_value":0.057,"regime_breakdown":{"UP":1.024193,"DOWN":2.02819,"FLAT":0.476593}},"executed_at":"2026-07-27T03:32:02","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0637","name":"formation_days=180, holding_days=20, n_stocks=10, skip_days=0, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":10,"skip_days":0,"regime_gate":true,"holding_days":20,"formation_days":180},"performance":{"sharpe":1.08,"max_drawdown_pct":-34,"alpha_annualized_pct":32.5,"p_value":0.042,"regime_breakdown":{"UP":2.099113,"DOWN":1.364059,"FLAT":-0.178909}},"executed_at":"2026-07-27T03:32:05","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0682","name":"formation_days=180, holding_days=60, n_stocks=5, skip_days=21, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"skip_days":21,"regime_gate":false,"holding_days":60,"formation_days":180},"performance":{"sharpe":0.75,"max_drawdown_pct":-81.6,"alpha_annualized_pct":100,"p_value":0.022,"regime_breakdown":{"UP":0.878311,"DOWN":0.837161,"FLAT":0.468012}},"executed_at":"2026-07-27T03:32:07","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0720","name":"formation_days=250, holding_days=1, n_stocks=5, skip_days=0, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":1,"formation_days":250},"performance":{"sharpe":0.94,"max_drawdown_pct":-7.5,"alpha_annualized_pct":7.8,"p_value":0.081,"regime_breakdown":{"UP":1.511504,"DOWN":-0.143454,"FLAT":0.316258}},"executed_at":"2026-07-27T03:32:09","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0728","name":"formation_days=250, holding_days=1, n_stocks=5, skip_days=21, cost_bps=5, regime_gate=False","params":{"cost_bps":5,"n_stocks":5,"skip_days":21,"regime_gate":false,"holding_days":1,"formation_days":250},"performance":{"sharpe":1.04,"max_drawdown_pct":-7.4,"alpha_annualized_pct":7.4,"p_value":0.059,"regime_breakdown":{"UP":1.620761,"DOWN":0.198239,"FLAT":0.007592}},"executed_at":"2026-07-27T03:32:09","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0773","name":"formation_days=250, holding_days=5, n_stocks=5, skip_days=5, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"skip_days":5,"regime_gate":true,"holding_days":5,"formation_days":250},"performance":{"sharpe":1.63,"max_drawdown_pct":-8,"alpha_annualized_pct":24.5,"p_value":0.0041,"regime_breakdown":{"UP":1.552347,"DOWN":2.153276,"FLAT":1.5814}},"executed_at":"2026-07-27T03:32:11","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0818","name":"formation_days=250, holding_days=10, n_stocks=5, skip_days=0, cost_bps=10, regime_gate=False","params":{"cost_bps":10,"n_stocks":5,"skip_days":0,"regime_gate":false,"holding_days":10,"formation_days":250},"performance":{"sharpe":0.96,"max_drawdown_pct":-20.6,"alpha_annualized_pct":18.6,"p_value":0.08,"regime_breakdown":{"UP":0.917152,"DOWN":1.321008,"FLAT":0.779174}},"executed_at":"2026-07-27T03:32:14","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0863","name":"formation_days=250, holding_days=10, n_stocks=50, skip_days=21, cost_bps=10, regime_gate=True","params":{"cost_bps":10,"n_stocks":50,"skip_days":21,"regime_gate":true,"holding_days":10,"formation_days":250},"performance":{"sharpe":1.31,"max_drawdown_pct":-4.2,"alpha_annualized_pct":10.1,"p_value":0.02,"regime_breakdown":{"UP":1.637204,"DOWN":1.6723,"FLAT":0.709051}},"executed_at":"2026-07-27T03:32:16","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0869","name":"formation_days=250, holding_days=20, n_stocks=5, skip_days=5, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":5,"skip_days":5,"regime_gate":true,"holding_days":20,"formation_days":250},"performance":{"sharpe":2.28,"max_drawdown_pct":-10.9,"alpha_annualized_pct":64.4,"p_value":0.00014,"regime_breakdown":{"UP":2.427686,"DOWN":1.650312,"FLAT":2.261735}},"executed_at":"2026-07-27T03:32:16","notes":null},{"run_id":"r-momentum-cross-sectional-us-sp500-0909","name":"formation_days=250, holding_days=20, n_stocks=50, skip_days=21, cost_bps=5, regime_gate=True","params":{"cost_bps":5,"n_stocks":50,"skip_days":21,"regime_gate":true,"holding_days":20,"formation_days":250},"performance":{"sharpe":1.74,"max_drawdown_pct":-7.5,"alpha_annualized_pct":19,"p_value":0.0026,"regime_breakdown":{"UP":1.844903,"DOWN":1.248736,"FLAT":1.732873}},"executed_at":"2026-07-27T03:32:18","notes":null}],"facts":[{"fact_id":"momentum-cross-sectional-us-sp500-fact-avg-corr-down","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Average monthly return correlation with other strategies in DOWN regime: 0.15","value":0.1457,"value_text":null,"unit":"correlation","context":"Pairwise Pearson correlation of monthly returns across 42 strategies, filtered to DOWN regime months (N=3, N225 < SMA20 < SMA60)","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.15':11 '3':27 '42':19 'across':18 'averag':1 'correl':4,14 'filter':21 'month':2,16,25 'n':26 'n225':28 'pairwis':12 'pearson':13 'regim':10,24 'return':3,17 'sma20':29 'sma60':30 'strategi':7,20","cite_url":"https://qbuntu.ai/cite/momentum-cross-sectional-us-sp500-fact-avg-corr-down"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-avg-corr-full","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Average monthly return correlation with other strategies (full period): 0.04","value":0.0399,"value_text":null,"unit":"correlation","context":"Pairwise Pearson correlation of monthly returns across 42 strategies, full backtest period","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.04':10 '42':18 'across':17 'averag':1 'backtest':21 'correl':4,13 'full':8,20 'month':2,15 'pairwis':11 'pearson':12 'period':9,22 'return':3,16 'strategi':7,19","cite_url":"https://qbuntu.ai/cite/momentum-cross-sectional-us-sp500-fact-avg-corr-full"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-best-sharpe","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Best grid Sharpe ratio is 2.28 (p=0.00014).","value":2.28,"value_text":null,"unit":"sharpe_ratio","context":"period 2022-04-01–2026-06-01; cost=5bps","supports_verdict":"marginal","source_run_id":"r-momentum-cross-sectional-us-sp500-0869","search_tsv":"'-01':12,15 '-04':11 '-06':14 '0.00014':8 '2.28':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-cross-sectional-us-sp500-fact-best-sharpe"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-median-sharpe","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Median Sharpe across 960 grid runs is 0.76.","value":0.76,"value_text":null,"unit":"sharpe_ratio","context":"Full grid of 960 parameter combinations.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.76':8 '960':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-cross-sectional-us-sp500-fact-median-sharpe"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-regime-down","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Median Sharpe in DOWN regime is 0.90 across 960 runs.","value":0.9,"value_text":null,"unit":"sharpe_ratio","context":"Regime=DOWN, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.90':7 '960':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-cross-sectional-us-sp500-fact-regime-down"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-regime-flat","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Median Sharpe in FLAT regime is 0.23 across 960 runs.","value":0.23,"value_text":null,"unit":"sharpe_ratio","context":"Regime=FLAT, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'0.23':7 '960':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-cross-sectional-us-sp500-fact-regime-flat"},{"fact_id":"momentum-cross-sectional-us-sp500-fact-regime-up","strategy_slug":"momentum-cross-sectional-us-sp500","claim":"Median Sharpe in UP regime is 1.11 across 960 runs.","value":1.11,"value_text":null,"unit":"sharpe_ratio","context":"Regime=UP, N225 SMA20/SMA60 classification.","supports_verdict":"marginal","source_run_id":null,"search_tsv":"'1.11':7 '960':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-cross-sectional-us-sp500-fact-regime-up"}],"related_strategies":[{"related_slug":"momentum-cross-sectional-jp-all","relation":"same_strategy"},{"related_slug":"momentum-cross-sectional-jp-growth","relation":"same_strategy"}],"tags":["momentum","cross-sectional","factor","us-market","sp500","grid-search"],"_links":{"self":"https://qbuntu.ai/v1/strategies/momentum-cross-sectional-us-sp500","html":"https://qbuntu.ai/strategies/momentum-cross-sectional-us-sp500","markdown":"https://qbuntu.ai/ai/strategies/momentum-cross-sectional-us-sp500.md"}}