{"variants":[{"slug":"baseline","display_name":"Baseline","hypothesis":"Status quo works — current shadow config","config":{"confidence":0.74,"size":50.0,"paper_balance":1000,"take_profit":0.2,"stop_loss":0.1,"max_session_loss":100.0,"min_price":0.05,"analyzer_model":"claude-sonnet-4-6","review_model":"claude-haiku-4-5"},"open_positions":4,"closed_trades":49,"decisive":46,"wins":17,"losses":29,"breakevens":3,"win_rate_pct":37.0,"total_pnl_usd":78.66,"starting_balance":1000.0,"paper_balance":707.86,"roi_pct":7.87,"recent_cycles":[{"category":"confidence_too_low","ts":"[19:40:18.254]","minutes_ago":3.0},{"category":"confidence_too_low","ts":"[19:32:20.612]","minutes_ago":10.9},{"category":"too_few_new_items","ts":"[19:20:12.787]","minutes_ago":23.1}],"active":true},{"slug":"widenet","display_name":"Wide Net","hypothesis":"Looser threshold + smaller size — more trades, sample size grows fast. Tests whether the 0.70–0.74 bucket can be tuned via better exit discipline.","config":{"confidence":0.7,"size":30.0,"paper_balance":1000,"take_profit":0.2,"stop_loss":0.1,"max_session_loss":100.0,"min_price":0.05,"analyzer_model":"claude-sonnet-4-6","review_model":"claude-haiku-4-5"},"open_positions":8,"closed_trades":7,"decisive":7,"wins":2,"losses":5,"breakevens":0,"win_rate_pct":28.6,"total_pnl_usd":-1.3,"starting_balance":1000.0,"paper_balance":608.79,"roi_pct":-0.13,"recent_cycles":[{"category":"too_few_new_items","ts":"[01:41:51.617]","minutes_ago":1081.4},{"category":"too_few_new_items","ts":"[01:25:41.956]","minutes_ago":1097.6},{"category":"too_few_new_items","ts":"[00:55:16.387]","minutes_ago":1128.0}],"active":false},{"slug":"trenchv2","display_name":"Trench V2","hypothesis":"Best in-corpus config under joint (close-rate, OOS ROI, bootstrap CI) optimization. Identified 2026-05-11 by a 3,600-cell walk-forward sweep + bootstrap-rank. Wider symmetric brackets (0.30/0.30) than baseline keep positions out of noise-stop range; loose entry (conf=0.70, edge=0.03) diversifies the tape. Bootstrap on full 22-day corpus: ROI +1.15%, WR 64%, P(roi>0)=57.3% vs baseline 0.2% (140× lift). 49% close rate keeps the result honest vs the wider-bracket configs that bias high by leaving positions open.","config":{"confidence":0.7,"size":30.0,"paper_balance":1000,"take_profit":0.3,"stop_loss":0.3,"max_session_loss":100.0,"min_price":0.05,"min_edge":0.03,"analyzer_model":"claude-sonnet-4-6","review_model":"claude-haiku-4-5"},"open_positions":9,"closed_trades":1,"decisive":1,"wins":0,"losses":1,"breakevens":0,"win_rate_pct":0.0,"total_pnl_usd":-8.17,"starting_balance":1000.0,"paper_balance":601.33,"roi_pct":-0.82,"recent_cycles":[{"category":"too_few_new_items","ts":"[01:14:18.963]","minutes_ago":1109.0},{"category":"too_few_new_items","ts":"[00:26:23.147]","minutes_ago":1156.9},{"category":"too_few_new_items","ts":"[00:11:22.317]","minutes_ago":1171.9}],"active":false},{"slug":"highconv","display_name":"High Conviction","hypothesis":"Tighter threshold + larger size — fewer trades, higher expectancy. Tests calibration finding that 0.76–0.80 bucket showed 75% WR / +42% ROI.","config":{"confidence":0.78,"size":75.0,"paper_balance":1000,"take_profit":0.2,"stop_loss":0.1,"max_session_loss":100.0,"min_price":0.05,"analyzer_model":"claude-sonnet-4-6","review_model":"claude-haiku-4-5"},"open_positions":1,"closed_trades":3,"decisive":3,"wins":1,"losses":2,"breakevens":0,"win_rate_pct":33.3,"total_pnl_usd":-12.97,"starting_balance":1000.0,"paper_balance":837.02,"roi_pct":-1.3,"recent_cycles":[{"category":"too_few_new_items","ts":"[01:14:27.373]","minutes_ago":1108.8},{"category":"too_few_new_items","ts":"[00:50:58.061]","minutes_ago":1132.3},{"category":"too_few_new_items","ts":"[23:56:37.893]","minutes_ago":1186.7}],"active":false}],"count":4,"live_count":1,"generated_at":"2026-06-08T19:43:16.594446+00:00"}