{"protocol":{"id":"market-calibration-v8-fixed-20261030","recorded_on":"2026-10-30","base_model_id":"turf-weather-v5-052a2d503a87","history_from":"1986-01-05","fit_period":["2022-01-01","2022-03-31"],"validation_period":["2022-04-01","2022-06-30"],"diagnostic_period":["2026-09-01","2026-10-25"],"frozen_base":"Only base trees fitted through 2021-12-31; discard original Q2 temperature and use raw margins","form":"p_i = softmax(a * raw_margin_i + b * log((1 / odds_i) / sum_j(1 / odds_j)))","fit":{"objective":"mean race negative log likelihood","bounds":[[0,4],[0,4]],"initial_coefficients":[1,1],"optimizer":"L-BFGS-B","regularization":0,"maxiter":1000,"ftol":1e-12,"gtol":1e-09},"adoption":"Q2 race logloss AND Brier must both improve over softmax(raw base margins); no 2026 selection or refit","compare_market_only":true,"decision":{"stake_yen":100,"odds_multiplier":0.9,"minimum_adjusted_return_exclusive":1.1,"selection":"max adjusted_probability * odds","tie_break":"smallest horse number","minimum_conservative_odds":1},"decisions":"buy or skip with all runners present; historical evaluation only, no money transmission","odds":"final decimal odds from official result archive; these are NOT actual pre-race snapshots","outcome":"official winner and win_payouts; no payout from decimal-odds multiplication","missing":"exclude whole race if mandatory core, weather, odds, unique result, or official win payout missing","histories":"All source races update histories at day end; no same-day outcome-derived features","odds_bins":[1,2,5,10,20,50],"uncertainty":"95% descriptive race-day cluster bootstrap on policy ROI, 1000 draws, seed 20261030","limitations":["2026 results were previously inspected and are diagnostic, not an unopened holdout.","Fitting and validation use final odds, so validation does not establish validity at any earlier price.","10% odds discount and 110% threshold are fixed engineering margins, not optimized or statistically guaranteed bounds.","Better probability metrics do not prove profitable betting or improvement over the market-only benchmark."]},"model":{"id":"market-calibration-v8-5fbffe70f3a0","base_model_id":"turf-weather-v5-052a2d503a87","adopted":true,"role":"market_exclusion_filter","base_model_incremental_signal_confirmed":false,"base_margin_coefficient_zero":true,"coefficients":{"raw_margin":0.0,"log_market_probability":1.1085515327363524},"base_temperature":1.020399606163147,"fit_period":["2022-01-01","2022-03-31"],"validation_period":["2022-04-01","2022-06-30"],"decision":{"stake_yen":100,"odds_multiplier":0.9,"minimum_adjusted_return_exclusive":1.1,"selection":"max adjusted_probability * odds","tie_break":"smallest horse number","minimum_conservative_odds":1},"scope":"final_odds_calibrated_retrospective","validation":{"raw_base":{"races":587,"runners":7730,"logloss":2.1085660075329047,"brier":0.8381252300898993,"top1":0.2708688245315162,"decision":{"bets":575,"skips":12,"hits":7,"hit_rate":0.01217391304347826,"stake_yen":57500,"return_yen":35330,"profit_yen":-22170,"roi_pct":61.44347826086957,"roi_95pct_interval":[8.544054220579174,140.56704216455228],"bootstrap_valid_draws":1000,"maximum_daily_drawdown_yen":35660}},"market_only":{"races":587,"runners":7730,"logloss":1.956690069598278,"brier":0.8040613990819588,"top1":0.3390119250425894,"decision":{"bets":0,"skips":587,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0}},"market_adjusted":{"races":587,"runners":7730,"logloss":1.9618333090473372,"brier":0.8053520247822186,"top1":0.3390119250425894,"decision":{"bets":0,"skips":587,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0}}},"validation_beats_market_only":false,"limitations":["2026 results were previously inspected and are diagnostic, not an unopened holdout.","Fitting and validation use final odds, so validation does not establish validity at any earlier price.","10% odds discount and 110% threshold are fixed engineering margins, not optimized or statistically guaranteed bounds.","Better probability metrics do not prove profitable betting or improvement over the market-only benchmark."],"buying_enabled":false,"operational_gate":{"buying_enabled":false,"decision_when_inputs_complete":"skip","reason":"no_validated_market_edge","evidence":["validation_did_not_beat_market_only","zero_incremental_base_model_coefficient","pre_race_odds_validation_missing"],"rule":"Correction may exclude purchases and display calibrated probabilities; purchase candidates remain disabled until separately verified pre-race market edge is established.","changes_fitted_coefficients":false,"changes_historical_numerical_policy_report":false}},"counts":{"fit":647,"validation":587,"diagnostic":435},"fit":{"raw_base":{"races":647,"runners":8869,"logloss":2.0934771639018055,"brier":0.8304736643273934,"top1":0.29057187017001546,"decision":{"bets":642,"skips":5,"hits":3,"hit_rate":0.004672897196261682,"stake_yen":64200,"return_yen":36710,"profit_yen":-27490,"roi_pct":57.18068535825545,"roi_95pct_interval":[0.0,158.93684564092354],"bootstrap_valid_draws":1000,"maximum_daily_drawdown_yen":43940},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":168,"expected_wins":55.58849571537845,"actual_wins":89},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1104,"expected_wins":210.84796174782548,"actual_wins":276},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1317,"expected_wins":140.25446435469448,"actual_wins":156},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1383,"expected_wins":99.18404070599188,"actual_wins":75},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1848,"expected_wins":82.48215408356361,"actual_wins":35},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":3049,"expected_wins":58.64288339254605,"actual_wins":16}]},"market_only":{"races":647,"runners":8869,"logloss":1.8490709606113525,"brier":0.7754988140412009,"top1":0.35239567233384855,"decision":{"bets":0,"skips":647,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":168,"expected_wins":80.77558762993472,"actual_wins":89},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1104,"expected_wins":265.78687630428647,"actual_wins":276},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1317,"expected_wins":152.4570851730577,"actual_wins":156},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1383,"expected_wins":78.24104539885518,"actual_wins":75},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1848,"expected_wins":48.19249974823348,"actual_wins":35},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":3049,"expected_wins":21.54690574563242,"actual_wins":16}]},"market_adjusted":{"races":647,"runners":8869,"logloss":1.8443390628213416,"brier":0.7747913147254948,"top1":0.35239567233384855,"decision":{"bets":0,"skips":647,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":168,"expected_wins":88.51444915152801,"actual_wins":89},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1104,"expected_wins":281.28243581439284,"actual_wins":276},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1317,"expected_wins":150.06356963615139,"actual_wins":156},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1383,"expected_wins":71.06258001763608,"actual_wins":75},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1848,"expected_wins":40.246934601428634,"actual_wins":35},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":3049,"expected_wins":15.83003077886292,"actual_wins":16}]}},"validation":{"raw_base":{"races":587,"runners":7730,"logloss":2.1085660075329047,"brier":0.8381252300898993,"top1":0.2708688245315162,"decision":{"bets":575,"skips":12,"hits":7,"hit_rate":0.01217391304347826,"stake_yen":57500,"return_yen":35330,"profit_yen":-22170,"roi_pct":61.44347826086957,"roi_95pct_interval":[8.544054220579174,140.56704216455228],"bootstrap_valid_draws":1000,"maximum_daily_drawdown_yen":35660},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":127,"expected_wins":48.261007314489866,"actual_wins":60},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1014,"expected_wins":199.843612561696,"actual_wins":238},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1327,"expected_wins":143.85105412403033,"actual_wins":144},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1225,"expected_wins":83.69022007358005,"actual_wins":91},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1567,"expected_wins":67.78919042428969,"actual_wins":38},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":2470,"expected_wins":43.56491550191368,"actual_wins":16}]},"market_only":{"races":587,"runners":7730,"logloss":1.956690069598278,"brier":0.8040613990819588,"top1":0.3390119250425894,"decision":{"bets":0,"skips":587,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":127,"expected_wins":61.79592493666116,"actual_wins":60},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1014,"expected_wins":242.27392750972837,"actual_wins":238},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1327,"expected_wins":153.42916923633422,"actual_wins":144},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1225,"expected_wins":69.82906022299844,"actual_wins":91},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1567,"expected_wins":41.023245484253366,"actual_wins":38},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":2470,"expected_wins":18.648672610024597,"actual_wins":16}]},"market_adjusted":{"races":587,"runners":7730,"logloss":1.9618333090473372,"brier":0.8053520247822186,"top1":0.3390119250425894,"decision":{"bets":0,"skips":587,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":127,"expected_wins":67.59606151229882,"actual_wins":60},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":1014,"expected_wins":256.4841880975547,"actual_wins":238},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":1327,"expected_wins":151.0950346999454,"actual_wins":144},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":1225,"expected_wins":63.68097534445814,"actual_wins":91},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1567,"expected_wins":34.361425092877504,"actual_wins":38},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":2470,"expected_wins":13.782315252865507,"actual_wins":16}]}},"diagnostic2026":{"raw_base":{"races":435,"runners":5749,"logloss":2.1708614563011945,"brier":0.8515412148406515,"top1":0.27816091954022987,"decision":{"bets":432,"skips":3,"hits":11,"hit_rate":0.02546296296296296,"stake_yen":43200,"return_yen":31800,"profit_yen":-11400,"roi_pct":73.61111111111111,"roi_95pct_interval":[20.239890900005552,139.38186299242057],"bootstrap_valid_draws":1000,"maximum_daily_drawdown_yen":13240},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":120,"expected_wins":38.70934931111716,"actual_wins":64},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":685,"expected_wins":132.88605784272067,"actual_wins":159},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":937,"expected_wins":107.32746222293589,"actual_wins":105},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":989,"expected_wins":68.498755484035,"actual_wins":57},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1201,"expected_wins":52.63390543538374,"actual_wins":42},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":1817,"expected_wins":34.94446970380759,"actual_wins":8}]},"market_only":{"races":435,"runners":5749,"logloss":1.9402159339536964,"brier":0.7963597233086245,"top1":0.335632183908046,"decision":{"bets":0,"skips":435,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":120,"expected_wins":59.3905526409667,"actual_wins":64},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":685,"expected_wins":167.73038862642295,"actual_wins":159},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":937,"expected_wins":106.50151823329408,"actual_wins":105},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":989,"expected_wins":56.152609468094894,"actual_wins":57},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1201,"expected_wins":31.67197109192886,"actual_wins":42},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":1817,"expected_wins":13.552959939292474,"actual_wins":8}]},"market_adjusted":{"races":435,"runners":5749,"logloss":1.946239932108032,"brier":0.7980473841236151,"top1":0.335632183908046,"decision":{"bets":0,"skips":435,"hits":0,"hit_rate":null,"stake_yen":0,"return_yen":0,"profit_yen":0,"roi_pct":null,"roi_95pct_interval":[null,null],"bootstrap_valid_draws":0,"maximum_daily_drawdown_yen":0},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":120,"expected_wins":64.985547591475,"actual_wins":64},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":685,"expected_wins":177.9683624296431,"actual_wins":159},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":937,"expected_wins":104.43833041614629,"actual_wins":105},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":989,"expected_wins":51.088800743261274,"actual_wins":57},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1201,"expected_wins":26.535105365363254,"actual_wins":42},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":1817,"expected_wins":9.983853454110884,"actual_wins":8}]},"previous_tempered_base":{"races":435,"runners":5749,"logloss":2.1694771797406815,"brier":0.8510927764251004,"top1":0.27816091954022987,"decision":{"bets":432,"skips":3,"hits":10,"hit_rate":0.023148148148148147,"stake_yen":43200,"return_yen":31250,"profit_yen":-11950,"roi_pct":72.33796296296296,"roi_95pct_interval":[20.239890900005552,135.638638224483],"bootstrap_valid_draws":1000,"maximum_daily_drawdown_yen":13240},"odds_calibration":[{"minimum_odds":1,"maximum_odds_exclusive":2,"runners":120,"expected_wins":38.131199764094525,"actual_wins":64},{"minimum_odds":2,"maximum_odds_exclusive":5,"runners":685,"expected_wins":131.45004571570422,"actual_wins":159},{"minimum_odds":5,"maximum_odds_exclusive":10,"runners":937,"expected_wins":107.09776101044609,"actual_wins":105},{"minimum_odds":10,"maximum_odds_exclusive":20,"runners":989,"expected_wins":68.95317008189672,"actual_wins":57},{"minimum_odds":20,"maximum_odds_exclusive":50,"runners":1201,"expected_wins":53.39648344178746,"actual_wins":42},{"minimum_odds":50,"maximum_odds_exclusive":null,"runners":1817,"expected_wins":35.971339986071236,"actual_wins":8}]}},"selection_file_sha256":"300e7125b1ecd1f5c327e34fe3379914bfee31e8221300bc634dff248e3c2373","model_sha256":"a90d7fd5f7ae080b6749aafdf6e48f45b5926c583e5ac8afd4475480a6b10e91","input_lock_sha256":"03619ecb860901b2185d0adf0eb3f31277720e7040769ee2cc0960d306737891","production_base_unchanged":true,"role":"market_exclusion_filter","base_model_incremental_signal_confirmed":false,"base_margin_coefficient_zero":true,"pre_race_snapshot_validation":false,"buying_enabled":false,"operational_gate":{"buying_enabled":false,"decision_when_inputs_complete":"skip","reason":"no_validated_market_edge","evidence":["validation_did_not_beat_market_only","zero_incremental_base_model_coefficient","pre_race_odds_validation_missing"],"rule":"Correction may exclude purchases and display calibrated probabilities; purchase candidates remain disabled until separately verified pre-race market edge is established.","changes_fitted_coefficients":false,"changes_historical_numerical_policy_report":false},"operational_gate_script_sha256":"8827988eacef7adbee02d21319ef9ddb017cca84324c219a4dce2b45f866080b"}