[{"ts":"2026-08-29T12:41:05.482733+00:00","seq":1,"cycle_id":"20260829T124103-9c8dfca6","action":"calibration","rationale":"Preflight against the live paper account: SPY at 769.30, 124 contracts on the 2026-08-31 expiry, 87 of them with Greeks.","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":100000.0,"cash":100000.0,"buying_power":400000.0,"options_buying_power":100000.0,"options_approved_level":3,"pattern_day_trader":false},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10"],"chain":{"expiry":"2026-08-31","contracts":124,"with_greeks":87,"with_open_interest":110,"median_relative_spread":0.1390277146751476,"widest_relative_spread":2.0,"strike_low":739.0,"strike_high":800.0,"multiplier":100}}},{"ts":"2026-08-29T12:57:50.767573+00:00","seq":2,"cycle_id":"20260829T125750-873ebb76","action":"stand_down","rationale":"No trade on 2026-08-29: Alpaca's calendar lists no session. Nothing was priced and nothing was sent.","reject_reason":"market_calendar"},{"ts":"2026-08-29T13:36:32.371212+00:00","seq":3,"cycle_id":"20260829T133632-d843c988","action":"calibration","rationale":"Rebuilt 276 past sessions from the option tape and labelled 1380 samples net of a modelled relative spread of 0.250. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":276,"samples":1380,"modelled_relative_spread":0.25,"families":{"call_bwb":{"sessions":276,"win_rate_net":0.1051,"mean_gross":-9.09,"mean_net":-27.9,"profitable_gross_but_not_net":4,"out_of_sample_sessions":216,"hit_rate":0.9028,"brier":0.0859,"calibration_slope":0.2481},"debit_vertical":{"sessions":276,"win_rate_net":0.1051,"mean_gross":-13.65,"mean_net":-21.67,"profitable_gross_but_not_net":6,"out_of_sample_sessions":216,"hit_rate":0.9074,"brier":0.084,"calibration_slope":0.5224},"put_bwb":{"sessions":276,"win_rate_net":0.1087,"mean_gross":-17.07,"mean_net":-46.65,"profitable_gross_but_not_net":6,"out_of_sample_sessions":216,"hit_rate":0.8889,"brier":0.1003,"calibration_slope":0.3011},"straddle":{"sessions":276,"win_rate_net":0.2428,"mean_gross":-67.28,"mean_net":-108.83,"profitable_gross_but_not_net":18,"out_of_sample_sessions":216,"hit_rate":0.7454,"brier":0.1934,"calibration_slope":0.1304},"strangle":{"sessions":276,"win_rate_net":0.1377,"mean_gross":-15.61,"mean_net":-23.96,"profitable_gross_but_not_net":2,"out_of_sample_sessions":216,"hit_rate":0.8796,"brier":0.1032,"calibration_slope":0.7414}}}},{"ts":"2026-08-29T13:40:42.798734+00:00","seq":4,"cycle_id":"20260829T134042-7e272e7c","action":"calibration","rationale":"Rebuilt 276 past sessions from the option tape and labelled 1380 samples net of a modelled relative spread of 0.250. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":276,"samples":1380,"modelled_relative_spread":0.25,"families":{"call_bwb":{"sessions":276,"win_rate_net":0.1051,"mean_gross":-9.09,"mean_net":-27.9,"profitable_gross_but_not_net":4,"out_of_sample_sessions":216,"hit_rate":0.9028,"majority_baseline":0.912,"skill_over_baseline":-0.0093,"share_of_sessions_traded":0.0093,"brier":0.0859,"calibration_slope":0.2481},"debit_vertical":{"sessions":276,"win_rate_net":0.1051,"mean_gross":-13.65,"mean_net":-21.67,"profitable_gross_but_not_net":6,"out_of_sample_sessions":216,"hit_rate":0.9074,"majority_baseline":0.9074,"skill_over_baseline":0.0,"share_of_sessions_traded":0.0,"brier":0.084,"calibration_slope":0.5224},"put_bwb":{"sessions":276,"win_rate_net":0.1087,"mean_gross":-17.07,"mean_net":-46.65,"profitable_gross_but_not_net":6,"out_of_sample_sessions":216,"hit_rate":0.8889,"majority_baseline":0.8935,"skill_over_baseline":-0.0046,"share_of_sessions_traded":0.0231,"brier":0.1003,"calibration_slope":0.3011},"straddle":{"sessions":276,"win_rate_net":0.2428,"mean_gross":-67.28,"mean_net":-108.83,"profitable_gross_but_not_net":18,"out_of_sample_sessions":216,"hit_rate":0.7454,"majority_baseline":0.7639,"skill_over_baseline":-0.0185,"share_of_sessions_traded":0.0278,"brier":0.1934,"calibration_slope":0.1304},"strangle":{"sessions":276,"win_rate_net":0.1377,"mean_gross":-15.61,"mean_net":-23.96,"profitable_gross_but_not_net":2,"out_of_sample_sessions":216,"hit_rate":0.8796,"majority_baseline":0.8796,"skill_over_baseline":0.0,"share_of_sessions_traded":0.0,"brier":0.1032,"calibration_slope":0.7414}}}},{"ts":"2026-08-29T13:44:48.062853+00:00","seq":5,"cycle_id":"20260829T134448-758d8160","action":"calibration","rationale":"Rebuilt 276 past sessions from the option tape and labelled 1380 samples net of a modelled relative spread of 0.050. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":276,"samples":1380,"modelled_relative_spread":0.05,"families":{"call_bwb":{"sessions":276,"win_rate_net":0.2971,"mean_gross":-3.66,"mean_net":-25.19,"profitable_gross_but_not_net":7,"out_of_sample_sessions":216,"hit_rate":0.7315,"majority_baseline":0.7083,"skill_over_baseline":0.0231,"share_of_sessions_traded":0.1157,"brier":0.2005,"calibration_slope":0.5698},"debit_vertical":{"sessions":276,"win_rate_net":0.413,"mean_gross":-7.35,"mean_net":-21.46,"profitable_gross_but_not_net":5,"out_of_sample_sessions":216,"hit_rate":0.588,"majority_baseline":0.5926,"skill_over_baseline":-0.0046,"share_of_sessions_traded":0.1991,"brier":0.2576,"calibration_slope":0.2776},"put_bwb":{"sessions":276,"win_rate_net":0.337,"mean_gross":5.42,"mean_net":-16.38,"profitable_gross_but_not_net":13,"out_of_sample_sessions":216,"hit_rate":0.6481,"majority_baseline":0.6574,"skill_over_baseline":-0.0093,"share_of_sessions_traded":0.2037,"brier":0.2307,"calibration_slope":0.4331},"straddle":{"sessions":276,"win_rate_net":0.3478,"mean_gross":-35.65,"mean_net":-45.56,"profitable_gross_but_not_net":5,"out_of_sample_sessions":216,"hit_rate":0.6481,"majority_baseline":0.662,"skill_over_baseline":-0.0139,"share_of_sessions_traded":0.0417,"brier":0.2438,"calibration_slope":0.0095},"strangle":{"sessions":276,"win_rate_net":0.163,"mean_gross":-15.02,"mean_net":-18.52,"profitable_gross_but_not_net":2,"out_of_sample_sessions":216,"hit_rate":0.8565,"majority_baseline":0.8565,"skill_over_baseline":0.0,"share_of_sessions_traded":0.0,"brier":0.1205,"calibration_slope":0.6861}}}},{"ts":"2026-08-29T17:11:46.118832+00:00","seq":6,"cycle_id":"20260829T171146-49012b93","action":"calibration","rationale":"Rebuilt 550 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":550,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.4028,"mean_gross":9.13,"mean_net":-5.84,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6169,"majority_baseline":0.6013,"skill_over_baseline":0.0156,"skill_required":0.0462,"share_of_sessions_traded":0.3318,"brier":0.2391,"calibration_slope":0.5074},"debit_vertical":{"sessions":509,"win_rate_net":0.4558,"mean_gross":-3.0,"mean_net":-11.87,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5679,"majority_baseline":0.5523,"skill_over_baseline":0.0156,"skill_required":0.0469,"share_of_sessions_traded":0.4432,"brier":0.257,"calibration_slope":0.4143},"put_bwb":{"sessions":509,"win_rate_net":0.4106,"mean_gross":11.98,"mean_net":-2.65,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5947,"majority_baseline":0.5947,"skill_over_baseline":0.0,"skill_required":0.0463,"share_of_sessions_traded":0.3875,"brier":0.2471,"calibration_slope":0.4206},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.18,"mean_net":-37.45,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"brier":0.2438,"calibration_slope":-0.0775},"strangle":{"sessions":509,"win_rate_net":0.1473,"mean_gross":-11.58,"mean_net":-14.17,"profitable_gross_but_not_net":1,"out_of_sample_sessions":449,"hit_rate":0.853,"majority_baseline":0.8508,"skill_over_baseline":0.0022,"skill_required":0.0336,"share_of_sessions_traded":0.0067,"brier":0.1229,"calibration_slope":0.72}}}},{"ts":"2026-08-29T17:19:26.432410+00:00","seq":7,"cycle_id":"20260829T171926-b440064a","action":"calibration","rationale":"Rebuilt 550 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":550,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.3792,"mean_gross":6.47,"mean_net":-8.48,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6392,"majority_baseline":0.6236,"skill_over_baseline":0.0156,"skill_required":0.0457,"share_of_sessions_traded":0.2695,"brier":0.2355,"calibration_slope":0.4898},"debit_vertical":{"sessions":509,"win_rate_net":0.4578,"mean_gross":-4.06,"mean_net":-12.98,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5991,"majority_baseline":0.5479,"skill_over_baseline":0.0512,"skill_required":0.047,"share_of_sessions_traded":0.461,"brier":0.2484,"calibration_slope":0.5162},"put_bwb":{"sessions":509,"win_rate_net":0.3929,"mean_gross":13.1,"mean_net":-1.53,"profitable_gross_but_not_net":12,"out_of_sample_sessions":449,"hit_rate":0.6214,"majority_baseline":0.6147,"skill_over_baseline":0.0067,"skill_required":0.0459,"share_of_sessions_traded":0.3497,"brier":0.2401,"calibration_slope":0.4592},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.18,"mean_net":-37.45,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"brier":0.2438,"calibration_slope":-0.0775},"strangle":{"sessions":509,"win_rate_net":0.1356,"mean_gross":-9.53,"mean_net":-12.05,"profitable_gross_but_not_net":0,"out_of_sample_sessions":449,"hit_rate":0.8619,"majority_baseline":0.8641,"skill_over_baseline":-0.0022,"skill_required":0.0323,"share_of_sessions_traded":0.0067,"brier":0.1211,"calibration_slope":0.3702}}}},{"ts":"2026-08-29T17:35:14.952312+00:00","seq":8,"cycle_id":"20260829T173514-5945531a","action":"calibration","rationale":"Rebuilt 550 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":550,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.3792,"mean_gross":6.47,"mean_net":-8.48,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6392,"majority_baseline":0.6236,"skill_over_baseline":0.0156,"skill_required":0.0457,"share_of_sessions_traded":0.2695,"classified_net":-1410.97,"classified_trades":121,"brier":0.2355,"calibration_slope":0.4898},"debit_vertical":{"sessions":509,"win_rate_net":0.4578,"mean_gross":-4.06,"mean_net":-12.98,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5991,"majority_baseline":0.5479,"skill_over_baseline":0.0512,"skill_required":0.047,"share_of_sessions_traded":0.461,"classified_net":-3572.77,"classified_trades":207,"brier":0.2484,"calibration_slope":0.5162},"put_bwb":{"sessions":509,"win_rate_net":0.3929,"mean_gross":13.1,"mean_net":-1.53,"profitable_gross_but_not_net":12,"out_of_sample_sessions":449,"hit_rate":0.6214,"majority_baseline":0.6147,"skill_over_baseline":0.0067,"skill_required":0.0459,"share_of_sessions_traded":0.3497,"classified_net":-1918.24,"classified_trades":157,"brier":0.2401,"calibration_slope":0.4592},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.18,"mean_net":-37.45,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"classified_net":1600.3,"classified_trades":27,"brier":0.2438,"calibration_slope":-0.0775},"strangle":{"sessions":509,"win_rate_net":0.1356,"mean_gross":-9.53,"mean_net":-12.05,"profitable_gross_but_not_net":0,"out_of_sample_sessions":449,"hit_rate":0.8619,"majority_baseline":0.8641,"skill_over_baseline":-0.0022,"skill_required":0.0323,"share_of_sessions_traded":0.0067,"classified_net":-647.66,"classified_trades":3,"brier":0.1211,"calibration_slope":0.3702}}}},{"ts":"2026-08-29T17:44:43.111818+00:00","seq":9,"cycle_id":"20260829T174443-dbd97fad","action":"calibration","rationale":"Rebuilt 550 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":550,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.3792,"mean_gross":6.47,"mean_net":-8.48,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6392,"majority_baseline":0.6236,"skill_over_baseline":0.0156,"skill_required":0.0457,"share_of_sessions_traded":0.2695,"classified_net":-1410.97,"classified_trades":121,"brier":0.2355,"calibration_slope":0.4898},"debit_vertical":{"sessions":509,"win_rate_net":0.4578,"mean_gross":-4.06,"mean_net":-12.98,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5991,"majority_baseline":0.5479,"skill_over_baseline":0.0512,"skill_required":0.047,"share_of_sessions_traded":0.461,"classified_net":-3572.77,"classified_trades":207,"brier":0.2484,"calibration_slope":0.5162},"put_bwb":{"sessions":509,"win_rate_net":0.3929,"mean_gross":13.1,"mean_net":-1.53,"profitable_gross_but_not_net":12,"out_of_sample_sessions":449,"hit_rate":0.6214,"majority_baseline":0.6147,"skill_over_baseline":0.0067,"skill_required":0.0459,"share_of_sessions_traded":0.3497,"classified_net":-1918.24,"classified_trades":157,"brier":0.2401,"calibration_slope":0.4592},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.18,"mean_net":-37.45,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"classified_net":1600.3,"classified_trades":27,"brier":0.2438,"calibration_slope":-0.0775},"strangle":{"sessions":509,"win_rate_net":0.1356,"mean_gross":-9.53,"mean_net":-12.05,"profitable_gross_but_not_net":0,"out_of_sample_sessions":449,"hit_rate":0.8619,"majority_baseline":0.8641,"skill_over_baseline":-0.0022,"skill_required":0.0323,"share_of_sessions_traded":0.0067,"classified_net":-647.66,"classified_trades":3,"brier":0.1211,"calibration_slope":0.3702}}}},{"ts":"2026-08-29T18:01:40.426685+00:00","seq":10,"cycle_id":"20260829T180140-435e8926","action":"calibration","rationale":"Rebuilt 550 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":550,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.3792,"mean_gross":6.47,"mean_net":-8.48,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6392,"majority_baseline":0.6236,"skill_over_baseline":0.0156,"skill_required":0.0457,"share_of_sessions_traded":0.2695,"share_traded":0.2695,"brier":0.2355,"calibration_slope":0.4898,"classified_net":133.59},"debit_vertical":{"sessions":509,"win_rate_net":0.4578,"mean_gross":-4.06,"mean_net":-12.98,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.5991,"majority_baseline":0.5479,"skill_over_baseline":0.0512,"skill_required":0.047,"share_of_sessions_traded":0.461,"share_traded":0.461,"brier":0.2484,"calibration_slope":0.5162,"classified_net":-265.85},"put_bwb":{"sessions":509,"win_rate_net":0.3929,"mean_gross":13.1,"mean_net":-1.53,"profitable_gross_but_not_net":12,"out_of_sample_sessions":449,"hit_rate":0.6214,"majority_baseline":0.6147,"skill_over_baseline":0.0067,"skill_required":0.0459,"share_of_sessions_traded":0.3497,"share_traded":0.3497,"brier":0.2401,"calibration_slope":0.4592,"classified_net":598.32},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.18,"mean_net":-37.45,"profitable_gross_but_not_net":4,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"share_traded":0.0601,"brier":0.2438,"calibration_slope":-0.0775,"classified_net":2741.63},"strangle":{"sessions":509,"win_rate_net":0.1356,"mean_gross":-9.53,"mean_net":-12.05,"profitable_gross_but_not_net":0,"out_of_sample_sessions":449,"hit_rate":0.8619,"majority_baseline":0.8641,"skill_over_baseline":-0.0022,"skill_required":0.0323,"share_of_sessions_traded":0.0067,"share_traded":0.0067,"brier":0.1211,"calibration_slope":0.3702,"classified_net":-647.66}}}},{"ts":"2026-08-29T21:28:10.780579+00:00","seq":11,"cycle_id":"20260829T212810-c2201f41","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-08-31 expiry with the underlying at 769.30: the median leg costs 0.025 per share to cross.","outcome":{"spot":769.3,"expiry":"2026-08-31","contracts":124,"leg_half_spread_median":0.025,"leg_half_spread_p90":1.43,"leg_relative_spread_median":0.1368,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":20.2,"p90_cost":544.7,"median_cost_share_of_max_loss":0.0985},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":28.7,"p90_cost":350.2,"median_cost_share_of_max_loss":0.1309},{"family":"straddle","candidates":1,"skipped":0,"median_cost":5.35,"p90_cost":5.35,"median_cost_share_of_max_loss":0.0144},{"family":"strangle","candidates":196,"skipped":0,"median_cost":3.9,"p90_cost":5.9,"median_cost_share_of_max_loss":0.1118},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":11.1,"p90_cost":151.1,"median_cost_share_of_max_loss":0.121}]}},{"ts":"2026-08-29T21:28:36.340999+00:00","seq":12,"cycle_id":"20260829T212836-650cd6e6","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-08-31 expiry with the underlying at 769.30: the median leg costs 0.025 per share to cross. Taken with the market closed, so these are the spreads of a book nobody is quoting and no threshold was written from them.","outcome":{"market_open":false,"spot":769.3,"expiry":"2026-08-31","contracts":124,"leg_half_spread_median":0.025,"leg_half_spread_p90":1.43,"leg_relative_spread_median":0.1368,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":20.2,"p90_cost":544.7,"median_cost_share_of_max_loss":0.0985},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":28.7,"p90_cost":350.2,"median_cost_share_of_max_loss":0.1309},{"family":"straddle","candidates":1,"skipped":0,"median_cost":5.35,"p90_cost":5.35,"median_cost_share_of_max_loss":0.0144},{"family":"strangle","candidates":196,"skipped":0,"median_cost":3.9,"p90_cost":5.9,"median_cost_share_of_max_loss":0.1118},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":11.1,"p90_cost":151.1,"median_cost_share_of_max_loss":0.121}]}},{"ts":"2026-08-31T06:43:44.564012+00:00","seq":13,"cycle_id":"20260831T064344-9d5502b5","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-08-31 expiry with the underlying at 769.30: the median leg costs 0.025 per share to cross. Taken with the market closed, so these are the spreads of a book nobody is quoting and no threshold was written from them.","outcome":{"market_open":false,"spot":769.3,"expiry":"2026-08-31","contracts":124,"leg_half_spread_median":0.025,"leg_half_spread_p90":1.43,"leg_relative_spread_median":0.1368,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":20.2,"p90_cost":544.7,"median_cost_share_of_max_loss":0.0985},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":28.7,"p90_cost":350.2,"median_cost_share_of_max_loss":0.1309},{"family":"straddle","candidates":1,"skipped":0,"median_cost":5.35,"p90_cost":5.35,"median_cost_share_of_max_loss":0.0144},{"family":"strangle","candidates":196,"skipped":0,"median_cost":3.9,"p90_cost":5.9,"median_cost_share_of_max_loss":0.1118},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":11.1,"p90_cost":151.1,"median_cost_share_of_max_loss":0.121}]}},{"ts":"2026-08-31T09:42:23.896731+00:00","seq":14,"cycle_id":"20260831T094223-c4273923","action":"calibration","rationale":"Rebuilt 549 past sessions from the option tape and labelled 2545 samples net of a modelled relative spread of 0.020. The book for those sessions is gone, so the liquidity and open-interest features are absent rather than zeroed and implied volatility is solved from prints.","outcome":{"reconstructed":true,"sessions":549,"samples":2545,"modelled_relative_spread":0.02,"families":{"call_bwb":{"sessions":509,"win_rate_net":0.3713,"mean_gross":8.33,"mean_net":-7.84,"profitable_gross_but_not_net":9,"out_of_sample_sessions":449,"hit_rate":0.6459,"majority_baseline":0.6325,"skill_over_baseline":0.0134,"skill_required":0.0455,"share_of_sessions_traded":0.2584,"share_traded":0.2584,"brier":0.2329,"calibration_slope":0.4943,"classified_net":1534.38},"debit_vertical":{"sessions":509,"win_rate_net":0.4578,"mean_gross":-3.4,"mean_net":-12.87,"profitable_gross_but_not_net":5,"out_of_sample_sessions":449,"hit_rate":0.5991,"majority_baseline":0.5479,"skill_over_baseline":0.0512,"skill_required":0.047,"share_of_sessions_traded":0.461,"share_traded":0.461,"brier":0.2484,"calibration_slope":0.5162,"classified_net":-1466.02},"put_bwb":{"sessions":509,"win_rate_net":0.391,"mean_gross":11.18,"mean_net":-4.65,"profitable_gross_but_not_net":6,"out_of_sample_sessions":449,"hit_rate":0.6147,"majority_baseline":0.6147,"skill_over_baseline":0.0,"skill_required":0.0459,"share_of_sessions_traded":0.3252,"share_traded":0.3252,"brier":0.2395,"calibration_slope":0.4639,"classified_net":450.14},"straddle":{"sessions":509,"win_rate_net":0.3556,"mean_gross":-32.58,"mean_net":-38.25,"profitable_gross_but_not_net":3,"out_of_sample_sessions":449,"hit_rate":0.637,"majority_baseline":0.6481,"skill_over_baseline":-0.0111,"skill_required":0.0451,"share_of_sessions_traded":0.0601,"share_traded":0.0601,"brier":0.2438,"calibration_slope":-0.0775,"classified_net":2720.03},"strangle":{"sessions":509,"win_rate_net":0.1356,"mean_gross":-11.98,"mean_net":-14.97,"profitable_gross_but_not_net":2,"out_of_sample_sessions":449,"hit_rate":0.8619,"majority_baseline":0.8641,"skill_over_baseline":-0.0022,"skill_required":0.0323,"share_of_sessions_traded":0.0067,"share_traded":0.0067,"brier":0.1211,"calibration_slope":0.3699,"classified_net":-673.71}}}},{"ts":"2026-08-31T16:41:21.321462+00:00","seq":15,"cycle_id":"20260831T164121-e45b0ec0","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-08-31 expiry with the underlying at 765.39: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":765.39,"expiry":"2026-08-31","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.575,"leg_relative_spread_median":0.1068,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":398,"skipped":2,"median_cost":18.2,"p90_cost":151.2,"median_cost_share_of_max_loss":0.0898},{"family":"call_bwb","candidates":394,"skipped":6,"median_cost":19.2,"p90_cost":80.7,"median_cost_share_of_max_loss":0.1039},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0216},{"family":"strangle","candidates":182,"skipped":0,"median_cost":4.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.3805},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":9.6,"p90_cost":44.1,"median_cost_share_of_max_loss":0.0954}]}},{"ts":"2026-08-31T16:41:21.337452+00:00","seq":16,"cycle_id":"20260831T164121-ebbb5cc3","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 2.0000 from 124 quoted legs and replaced the standing value of 0.2500. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.25,"after":2.0,"legs":124,"measurement":{"market_open":true,"spot":765.39,"expiry":"2026-08-31","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.575,"leg_relative_spread_median":0.1068,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":398,"skipped":2,"median_cost":18.2,"p90_cost":151.2,"median_cost_share_of_max_loss":0.0898},{"family":"call_bwb","candidates":394,"skipped":6,"median_cost":19.2,"p90_cost":80.7,"median_cost_share_of_max_loss":0.1039},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0216},{"family":"strangle","candidates":182,"skipped":0,"median_cost":4.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.3805},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":9.6,"p90_cost":44.1,"median_cost_share_of_max_loss":0.0954}]}}},{"ts":"2026-08-31T17:05:54.364914+00:00","seq":17,"cycle_id":"20260831T170553-665871d1","action":"risk_halt","rationale":"No cycle today: never measured against live quotes: liquidity.max_relative_spread. Run scripts/calibrate_costs.py while the market is open.","checks":[{"gate":"kill_switch","scope":"session","passed":true,"detail":"no kill switch file","blocking":true},{"gate":"calibration","scope":"session","passed":false,"detail":"never measured against live quotes: liquidity.max_relative_spread. Run scripts/calibrate_costs.py while the market is open","blocking":true},{"gate":"market_calendar","scope":"session","passed":true,"detail":"session open with 174 minutes to the close","blocking":true,"observed":174.102727},{"gate":"daily_loss_limit","scope":"session","passed":true,"detail":"day P&L is +0.00% against a 3% limit","blocking":true,"observed":-0.0,"threshold":0.03},{"gate":"buying_power","scope":"session","passed":true,"detail":"account reports 100,000.00 of buying power","blocking":true,"observed":100000.0},{"gate":"cost_budget","scope":"session","passed":true,"detail":"0.00 of execution cost paid against a budget of 2,000.00","blocking":true,"observed":0.0,"threshold":2000.0}],"reject_reason":"calibration"},{"ts":"2026-08-31T17:17:06.468963+00:00","seq":18,"cycle_id":"20260831T171706-e59ac624","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-08-31 expiry with the underlying at 766.04: the median leg costs 0.020 per share to cross.","outcome":{"market_open":true,"spot":766.04,"expiry":"2026-08-31","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.675,"leg_relative_spread_median":0.1112,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":16.2,"p90_cost":305.7,"median_cost_share_of_max_loss":0.0794},{"family":"call_bwb","candidates":395,"skipped":5,"median_cost":21.2,"p90_cost":94.7,"median_cost_share_of_max_loss":0.1091},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0244},{"family":"strangle","candidates":196,"skipped":0,"median_cost":4.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.4048},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":9.6,"p90_cost":47.6,"median_cost_share_of_max_loss":0.1088}]}},{"ts":"2026-08-31T17:17:06.474157+00:00","seq":19,"cycle_id":"20260831T171706-f4c65a66","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.1047 from 122 quoted legs and replaced the standing value of 0.2500. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.25,"after":0.10474,"legs":122,"measurement":{"market_open":true,"spot":766.04,"expiry":"2026-08-31","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.675,"leg_relative_spread_median":0.1112,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":16.2,"p90_cost":305.7,"median_cost_share_of_max_loss":0.0794},{"family":"call_bwb","candidates":395,"skipped":5,"median_cost":21.2,"p90_cost":94.7,"median_cost_share_of_max_loss":0.1091},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0244},{"family":"strangle","candidates":196,"skipped":0,"median_cost":4.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.4048},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":9.6,"p90_cost":47.6,"median_cost_share_of_max_loss":0.1088}]}}},{"ts":"2026-08-31T17:22:10.473823+00:00","seq":20,"cycle_id":"20260831T172208-d7ec7d67","action":"snapshot","rationale":"SPY at 765.73 with 122 priceable contracts on the 2026-08-31 expiry; implied skew +0.00169.","features":{"iv_total":0.02852606,"iv_up":0.01510872,"iv_dn":0.01341734,"implied_skew":0.00169137,"slope_up":17.19900308,"slope_dn":-18.92818678,"liq_half_spread":0.17741803,"liq_depth":404.85245902,"liq_relative_spread":0.72772274,"liq_relative_spread_p90":2.0,"liq_tightness":0.00681975,"tape_volume":15.20691061,"tape_breadth":1.0,"tape_concentration":0.07107412,"tape_put_share":0.5422878,"rv_lag1":4e-07,"ret_lag1":-0.00063316,"rv_5":6.79e-06,"rskew":1.17912692},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:22:10.657670+00:00","seq":21,"cycle_id":"20260831T172208-d7ec7d67","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 776/774/766, near wing 2 and far wing 8. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 109.75 dollars against 24.20 dollars of execution cost across 3 legs, leaving 85.55 net.","structure":"put_bwb","probability":0.5,"legs":[{"symbol":"SPY260831P00776000","right":"put","strike":776.0,"ratio":1,"bid":9.96,"ask":10.13,"mid":10.045},{"symbol":"SPY260831P00774000","right":"put","strike":774.0,"ratio":-2,"bid":8.2,"ask":8.24,"mid":8.22},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.79,"ask":0.8,"mid":0.795}],"net_price":-5.422,"cost_breakdown":{"half_spread":13.0,"slippage":4.0,"fees":0.8,"exit_reserve":6.4,"total":24.2},"max_loss":57.8,"es_contribution":64.2,"contracts":17,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 57.80 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":57.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 85.55 after 24.20 of cost","blocking":true,"observed":85.548585,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 13.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00776000 at 1.7% of mid against a 10.5% limit","blocking":true,"observed":0.016924,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,091.40 against a cap of 3,000.00","blocking":true,"observed":1091.4,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 158 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.2s old against a 30s budget","blocking":true,"observed":-0.159006,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":109.75,"half_spread":-13.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-6.4,"net_edge":85.55},"sizing":{"contracts":17,"risk_budget":1000.0,"max_loss_per_contract":57.8,"es_per_contract":64.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:22:10.788360+00:00","seq":22,"cycle_id":"20260831T172208-d7ec7d67","action":"candidate_rejected","rationale":"Refused call broken-wing butterfly 754/757/765, near wing 3 and far wing 8. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 85.59 dollars against 16.20 dollars of execution cost across 3 legs, leaving 69.39 net.","structure":"call_bwb","probability":0.5,"legs":[{"symbol":"SPY260831C00754000","right":"call","strike":754.0,"ratio":1,"bid":11.67,"ask":11.68,"mid":11.675},{"symbol":"SPY260831C00757000","right":"call","strike":757.0,"ratio":-2,"bid":8.71,"ask":8.75,"mid":8.73},{"symbol":"SPY260831C00765000","right":"call","strike":765.0,"ratio":1,"bid":1.07,"ask":1.08,"mid":1.075}],"net_price":-4.612,"cost_breakdown":{"half_spread":5.0,"slippage":4.0,"fees":0.8,"exit_reserve":6.4,"total":16.2},"max_loss":38.8,"es_contribution":45.2,"contracts":25,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 38.80 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":38.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 69.39 after 16.20 of cost","blocking":true,"observed":69.394032,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 5.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831C00765000 at 0.9% of mid against a 10.5% limit","blocking":true,"observed":0.009302,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,130.00 against a cap of 3,000.00","blocking":true,"observed":1130.0,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 158 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.2s old against a 30s budget","blocking":true,"observed":-0.158927,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":85.59,"half_spread":-5.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-6.4,"net_edge":69.39},"sizing":{"contracts":25,"risk_budget":1000.0,"max_loss_per_contract":38.8,"es_per_contract":45.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:22:10.792337+00:00","seq":23,"cycle_id":"20260831T172208-d7ec7d67","action":"candidate_rejected","rationale":"Refused long straddle at 766. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 227.52 dollars against 3.40 dollars of execution cost across 2 legs, leaving 224.12 net.","structure":"straddle","probability":0.5,"legs":[{"symbol":"SPY260831C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.53,"ask":0.54,"mid":0.535},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.79,"ask":0.8,"mid":0.795}],"net_price":1.364,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":136.4,"es_contribution":128.76,"contracts":7,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 136.40 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":136.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 224.12 after 3.40 of cost","blocking":true,"observed":224.119406,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831C00766000 at 1.9% of mid against a 10.5% limit","blocking":true,"observed":0.018692,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 901.30 against a cap of 3,000.00","blocking":true,"observed":901.297521,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 158 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.8s old against a 30s budget","blocking":true,"observed":-0.777943,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":227.52,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":224.12},"sizing":{"contracts":7,"risk_budget":1000.0,"max_loss_per_contract":136.4,"es_per_contract":128.76,"es_headroom":3000.0,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:22:10.839472+00:00","seq":24,"cycle_id":"20260831T172208-d7ec7d67","action":"candidate_rejected","rationale":"Refused long strangle 764/768. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 170.88 dollars against 3.40 dollars of execution cost across 2 legs, leaving 167.48 net.","structure":"strangle","probability":0.5,"legs":[{"symbol":"SPY260831C00768000","right":"call","strike":768.0,"ratio":1,"bid":0.11,"ask":0.12,"mid":0.115},{"symbol":"SPY260831P00764000","right":"put","strike":764.0,"ratio":1,"bid":0.17,"ask":0.18,"mid":0.175}],"net_price":0.324,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":32.4,"es_contribution":32.4,"contracts":30,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 32.40 per lot at 768 against a per-structure budget of 1,000.00","blocking":true,"observed":32.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 167.48 after 3.40 of cost","blocking":true,"observed":167.482208,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831C00768000 at 8.7% of mid against a 10.5% limit","blocking":true,"observed":0.086957,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 972.00 against a cap of 3,000.00","blocking":true,"observed":972.0,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 158 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.5s old against a 30s budget","blocking":true,"observed":-0.483842,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":170.88,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":167.48},"sizing":{"contracts":30,"risk_budget":1000.0,"max_loss_per_contract":32.4,"es_per_contract":32.4,"es_headroom":3000.0,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:22:10.928580+00:00","seq":25,"cycle_id":"20260831T172208-d7ec7d67","action":"candidate_rejected","rationale":"Refused bull call vertical 765/774. Widest leg is spy260831c00774000 at 28.6% of mid against a 10.5% limit. Gross expected result was 105.44 dollars against 5.10 dollars of execution cost across 2 legs, leaving 100.34 net.","structure":"debit_vertical","probability":0.5,"legs":[{"symbol":"SPY260831C00765000","right":"call","strike":765.0,"ratio":1,"bid":1.07,"ask":1.08,"mid":1.075},{"symbol":"SPY260831C00774000","right":"call","strike":774.0,"ratio":-1,"bid":0.03,"ask":0.04,"mid":0.035}],"net_price":1.074,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":1.7,"total":5.1},"max_loss":107.4,"es_contribution":109.1,"contracts":9,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 107.40 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":107.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 100.34 after 5.10 of cost","blocking":true,"observed":100.342977,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831C00774000 at 28.6% of mid against a 10.5% limit","blocking":true,"observed":0.285714,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 981.90 against a cap of 3,000.00","blocking":true,"observed":981.9,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 158 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.7s old against a 30s budget","blocking":true,"observed":0.697812,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (middle)","waterfall":{"gross_edge":105.44,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-1.7,"net_edge":100.34},"sizing":{"contracts":9,"risk_budget":1000.0,"max_loss_per_contract":107.4,"es_per_contract":109.1,"es_headroom":3000.0,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:22:10.930988+00:00","seq":26,"cycle_id":"20260831T172208-d7ec7d67","action":"stand_down","rationale":"Stood down. No family produced a candidate that cleared its checks once execution cost was priced in.","structure":"stand_down"},{"ts":"2026-08-31T17:25:52.751905+00:00","seq":27,"cycle_id":"20260831T172551-bf220c91","action":"snapshot","rationale":"SPY at 765.54 with 124 priceable contracts on the 2026-08-31 expiry; implied skew -0.00125.","features":{"iv_total":0.02818083,"iv_up":0.01346315,"iv_dn":0.01471768,"implied_skew":-0.00125453,"slope_up":18.72579162,"slope_dn":-18.59128331,"liq_half_spread":0.17206048,"liq_depth":343.70967742,"liq_relative_spread":0.68240941,"liq_relative_spread_p90":2.0,"liq_tightness":0.0186035,"tape_volume":15.21436965,"tape_breadth":1.0,"tape_concentration":0.07114696,"tape_put_share":0.54168087,"rv_lag1":3.3e-07,"ret_lag1":-0.0005744,"rv_5":6.78e-06,"rskew":1.17908701},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:25:52.919567+00:00","seq":28,"cycle_id":"20260831T172551-bf220c91","action":"order_submitted","rationale":"Entering 16 lots of put broken-wing butterfly 776/774/766, near wing 2 and far wing 8 at a probability of 0.600. Gross expected result 97.94 dollars less 31.20 dollars of cost leaves 66.74 net, with a 42% win rate across the scenario set. Worst case is 60.80 dollars per lot at 766 and the one percent tail is 74.20; size is limited by risk_budget.","structure":"put_bwb","probability":0.6,"legs":[{"symbol":"SPY260831P00776000","right":"put","strike":776.0,"ratio":1,"bid":10.45,"ask":10.48,"mid":10.465},{"symbol":"SPY260831P00774000","right":"put","strike":774.0,"ratio":-2,"bid":8.42,"ask":8.53,"mid":8.475},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.91,"ask":0.92,"mid":0.915}],"net_price":-5.39,"cost_breakdown":{"half_spread":13.0,"slippage":4.0,"fees":0.8,"exit_reserve":13.4,"total":31.2},"max_loss":972.8,"es_contribution":1187.2,"contracts":16,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 60.80 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":60.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 66.74 after 31.20 of cost","blocking":true,"observed":66.73805,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 13.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00774000 at 1.3% of mid against a 10.5% limit","blocking":true,"observed":0.012979,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,187.20 against a cap of 3,000.00","blocking":true,"observed":1187.2,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 154 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.0s old against a 30s budget","blocking":true,"observed":-0.00988,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":97.94,"half_spread":-13.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-13.4,"net_edge":66.74},"sizing":{"contracts":16,"risk_budget":1000.0,"max_loss_per_contract":60.8,"es_per_contract":74.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T172551-bf220c91-put_bwb","rationale_source":"deterministic","brief":"structure: put broken-wing butterfly 776/774/766, near wing 2 and far wing 8\nfamily: put_bwb\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 97.94 dollars\nexecution cost: 31.20 dollars across 3 legs, of which 13.00 is half-spread and 13.40 is the reserve to close the shorts\nnet expected result: 66.74 dollars\nwin rate across those sessions: 42.4%\nworst case: 60.80 dollars per lot at an expiry price of 766\none percent tail: 74.20 dollars per lot\nentered for a credit of 5.39 per share\nbreakevens: 766.608\nsize: 16 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:28:16.385283+00:00","seq":29,"cycle_id":"20260831T172816-16763b6f","action":"stand_down","rationale":"Correction to seq 28. That record reads order_submitted and no order was ever sent: it came from a rehearsal, which wrote the entry receipt before calling a gateway that physically cannot send one. Nothing reached Alpaca, the account is untouched at 100,000.00 and no position exists. The ledger is append-only so seq 28 stands as written and this record corrects it. A rehearsal now records itself as dry_run.","reject_reason":"dry_run_recorded_as_order"},{"ts":"2026-08-31T17:28:40.409537+00:00","seq":30,"cycle_id":"20260831T172838-4a93eb5b","action":"snapshot","rationale":"SPY at 765.44 with 124 priceable contracts on the 2026-08-31 expiry; implied skew -0.00119.","features":{"iv_total":0.02745419,"iv_up":0.01313,"iv_dn":0.01432419,"implied_skew":-0.0011942,"slope_up":18.88218323,"slope_dn":-18.87799016,"liq_half_spread":0.17979839,"liq_depth":346.70967742,"liq_relative_spread":0.69908496,"liq_relative_spread_p90":2.0,"liq_tightness":0.00739405,"tape_volume":15.22376918,"tape_breadth":1.0,"tape_concentration":0.07120931,"tape_put_share":0.54111985,"rv_lag1":9.1e-07,"ret_lag1":-0.00095316,"rv_5":6.89e-06,"rskew":1.17933547},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:30:37.500578+00:00","seq":31,"cycle_id":"20260831T173035-5110b478","action":"snapshot","rationale":"SPY at 765.35 with 122 priceable contracts on the 2026-08-31 expiry; implied skew -0.00291.","features":{"iv_total":0.02795839,"iv_up":0.01252438,"iv_dn":0.01543402,"implied_skew":-0.00290964,"slope_up":19.367592,"slope_dn":-18.81402944,"liq_half_spread":0.16442623,"liq_depth":355.81147541,"liq_relative_spread":0.71137449,"liq_relative_spread_p90":2.0,"liq_tightness":0.01036982,"tape_volume":15.22829397,"tape_breadth":1.0,"tape_concentration":0.07133066,"tape_put_share":0.54136089,"rv_lag1":1.01e-06,"ret_lag1":-0.00100541,"rv_5":6.91e-06,"rskew":1.17936807},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:30:37.657969+00:00","seq":32,"cycle_id":"20260831T173035-5110b478","action":"dry_run","rationale":"Entering 8 lots of put broken-wing butterfly 774/772/765, near wing 2 and far wing 7 at a probability of 0.600. Gross expected result 95.03 dollars less 57.70 dollars of cost leaves 37.33 net, with a 43% win rate across the scenario set. Worst case is 111.80 dollars per lot at 765 and the one percent tail is 136.20; size is limited by risk_budget.","structure":"put_bwb","probability":0.6,"legs":[{"symbol":"SPY260831P00774000","right":"put","strike":774.0,"ratio":1,"bid":8.47,"ask":8.59,"mid":8.53},{"symbol":"SPY260831P00772000","right":"put","strike":772.0,"ratio":-2,"bid":6.5,"ask":6.72,"mid":6.61},{"symbol":"SPY260831P00765000","right":"put","strike":765.0,"ratio":1,"bid":0.47,"ask":0.48,"mid":0.475}],"net_price":-3.88,"cost_breakdown":{"half_spread":28.5,"slippage":4.0,"fees":0.8,"exit_reserve":24.4,"total":57.7},"max_loss":894.4,"es_contribution":1089.6,"contracts":8,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 111.80 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":111.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 37.33 after 57.70 of cost","blocking":true,"observed":37.330456,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 28.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00772000 at 3.3% of mid against a 10.5% limit","blocking":true,"observed":0.033283,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,089.60 against a cap of 3,000.00","blocking":true,"observed":1089.6,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 149 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.2s old against a 30s budget","blocking":true,"observed":-0.150259,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":95.03,"half_spread":-28.5,"slippage":-4.0,"fees":-0.8,"exit_reserve":-24.4,"net_edge":37.33},"sizing":{"contracts":8,"risk_budget":1000.0,"max_loss_per_contract":111.8,"es_per_contract":136.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T173035-5110b478-put_bwb","rationale_source":"deterministic","brief":"structure: put broken-wing butterfly 774/772/765, near wing 2 and far wing 7\nfamily: put_bwb\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 95.03 dollars\nexecution cost: 57.70 dollars across 3 legs, of which 28.50 is half-spread and 24.40 is the reserve to close the shorts\nnet expected result: 37.33 dollars\nwin rate across those sessions: 43.2%\nworst case: 111.80 dollars per lot at an expiry price of 765\none percent tail: 136.20 dollars per lot\nentered for a credit of 3.88 per share\nbreakevens: 766.118\nsize: 8 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:31:11.894878+00:00","seq":33,"cycle_id":"20260831T173110-8d439015","action":"snapshot","rationale":"SPY at 765.23 with 122 priceable contracts on the 2026-08-31 expiry; implied skew -0.00606.","features":{"iv_total":0.03145186,"iv_up":0.01269424,"iv_dn":0.01875762,"implied_skew":-0.00606338,"slope_up":18.85095759,"slope_dn":-18.40457835,"liq_half_spread":0.15803279,"liq_depth":353.2704918,"liq_relative_spread":0.69200253,"liq_relative_spread_p90":2.0,"liq_tightness":0.00721699,"tape_volume":15.23238965,"tape_breadth":1.0,"tape_concentration":0.07143104,"tape_put_share":0.54140363,"rv_lag1":1.72e-06,"ret_lag1":-0.00131246,"rv_5":7.06e-06,"rskew":1.17955106},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:31:48.725639+00:00","seq":34,"cycle_id":"20260831T173146-6e241d35","action":"snapshot","rationale":"SPY at 765.25 with 122 priceable contracts on the 2026-08-31 expiry; implied skew -0.00455.","features":{"iv_total":0.02907335,"iv_up":0.01226364,"iv_dn":0.0168097,"implied_skew":-0.00454606,"slope_up":19.14890559,"slope_dn":-18.58975429,"liq_half_spread":0.18004508,"liq_depth":348.59016393,"liq_relative_spread":0.7069552,"liq_relative_spread_p90":2.0,"liq_tightness":0.00907021,"tape_volume":15.23238965,"tape_breadth":1.0,"tape_concentration":0.07143104,"tape_put_share":0.54140363,"rv_lag1":1.72e-06,"ret_lag1":-0.00131246,"rv_5":7.06e-06,"rskew":1.17955106},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:31:48.961634+00:00","seq":35,"cycle_id":"20260831T173146-6e241d35","action":"candidate_rejected","rationale":"1 of 400 put_bwb structures carry quotes that do not describe a risk and were not priced. First: put broken-wing butterfly 775/773/768, near wing 2 and far wing 5: structure shows a profit of 2.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"put_bwb","reject_reason":"undefined_risk","unpriceable":["put broken-wing butterfly 775/773/768, near wing 2 and far wing 5: structure shows a profit of 2.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-08-31T17:31:48.968120+00:00","seq":36,"cycle_id":"20260831T173146-6e241d35","action":"dry_run","rationale":"Entering 14 lots of put broken-wing butterfly 775/773/765, near wing 2 and far wing 8 at a probability of 0.600. Gross expected result 116.39 dollars less 18.20 dollars of cost leaves 98.19 net, with a 48% win rate across the scenario set. Worst case is 69.80 dollars per lot at 765 and the one percent tail is 77.20; size is limited by risk_budget.","structure":"put_bwb","probability":0.6,"legs":[{"symbol":"SPY260831P00775000","right":"put","strike":775.0,"ratio":1,"bid":9.7,"ask":9.71,"mid":9.705},{"symbol":"SPY260831P00773000","right":"put","strike":773.0,"ratio":-2,"bid":7.79,"ask":7.84,"mid":7.815},{"symbol":"SPY260831P00765000","right":"put","strike":765.0,"ratio":1,"bid":0.51,"ask":0.52,"mid":0.515}],"net_price":-5.3,"cost_breakdown":{"half_spread":6.0,"slippage":4.0,"fees":0.8,"exit_reserve":7.4,"total":18.2},"max_loss":977.2,"es_contribution":1080.8,"contracts":14,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 69.80 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":69.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 98.19 after 18.20 of cost","blocking":true,"observed":98.186965,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 6.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00765000 at 1.9% of mid against a 10.5% limit","blocking":true,"observed":0.019417,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,080.80 against a cap of 3,000.00","blocking":true,"observed":1080.8,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 148 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -1.0s old against a 30s budget","blocking":true,"observed":-0.956374,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":116.39,"half_spread":-6.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-7.4,"net_edge":98.19},"sizing":{"contracts":14,"risk_budget":1000.0,"max_loss_per_contract":69.8,"es_per_contract":77.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T173146-6e241d35-put_bwb","rationale_source":"deterministic","brief":"structure: put broken-wing butterfly 775/773/765, near wing 2 and far wing 8\nfamily: put_bwb\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 116.39 dollars\nexecution cost: 18.20 dollars across 3 legs, of which 6.00 is half-spread and 7.40 is the reserve to close the shorts\nnet expected result: 98.19 dollars\nwin rate across those sessions: 48.1%\nworst case: 69.80 dollars per lot at an expiry price of 765\none percent tail: 77.20 dollars per lot\nentered for a credit of 5.30 per share\nbreakevens: 765.698\nsize: 14 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:31:49.131500+00:00","seq":37,"cycle_id":"20260831T173146-6e241d35","action":"candidate_rejected","rationale":"Refused call broken-wing butterfly 767/771/777, near wing 4 and far wing 6. Widest leg is spy260831c00777000 at 200.0% of mid against a 10.5% limit. Gross expected result was 56.11 dollars against 10.20 dollars of execution cost across 3 legs, leaving 45.91 net.","structure":"call_bwb","probability":0.4,"legs":[{"symbol":"SPY260831C00767000","right":"call","strike":767.0,"ratio":1,"bid":0.11,"ask":0.12,"mid":0.115},{"symbol":"SPY260831C00771000","right":"call","strike":771.0,"ratio":-2,"bid":0.04,"ask":0.05,"mid":0.045},{"symbol":"SPY260831C00777000","right":"call","strike":777.0,"ratio":1,"bid":0.0,"ask":0.01,"mid":0.005}],"net_price":0.098,"cost_breakdown":{"half_spread":2.0,"slippage":4.0,"fees":0.8,"exit_reserve":3.4,"total":10.2},"max_loss":209.8,"es_contribution":213.2,"contracts":4,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 209.80 per lot at 777 against a per-structure budget of 1,000.00","blocking":true,"observed":209.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 45.91 after 10.20 of cost","blocking":true,"observed":45.905719,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 2.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831C00777000 at 200.0% of mid against a 10.5% limit","blocking":true,"observed":2.0,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,933.60 against a cap of 3,000.00","blocking":true,"observed":1933.6,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 148 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 22.9s old against a 30s budget","blocking":true,"observed":22.85846,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"1 structures open against a cap of 4","blocking":true,"observed":1.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":56.11,"half_spread":-2.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-3.4,"net_edge":45.91},"sizing":{"contracts":4,"risk_budget":1000.0,"max_loss_per_contract":209.8,"es_per_contract":213.2,"es_headroom":1919.2,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:31:49.138367+00:00","seq":38,"cycle_id":"20260831T173146-6e241d35","action":"dry_run","rationale":"Entering 7 lots of long straddle at 765 at a probability of 0.600. Gross expected result 225.90 dollars less 3.90 dollars of cost leaves 222.00 net, with a 74% win rate across the scenario set. Worst case is 141.40 dollars per lot at 765 and the one percent tail is 138.58; size is limited by risk_budget.","structure":"straddle","probability":0.6,"legs":[{"symbol":"SPY260831C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.85,"ask":0.87,"mid":0.86},{"symbol":"SPY260831P00765000","right":"put","strike":765.0,"ratio":1,"bid":0.51,"ask":0.52,"mid":0.515}],"net_price":1.41,"cost_breakdown":{"half_spread":1.5,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.9},"max_loss":989.8,"es_contribution":970.04,"contracts":7,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 141.40 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":141.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 222.00 after 3.90 of cost","blocking":true,"observed":222.003406,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.50 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831C00765000 at 2.3% of mid against a 10.5% limit","blocking":true,"observed":0.023256,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,050.84 against a cap of 3,000.00","blocking":true,"observed":2050.838842,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 148 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.6s old against a 30s budget","blocking":true,"observed":-0.590213,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"1 structures open against a cap of 4","blocking":true,"observed":1.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":225.9,"half_spread":-1.5,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":222.0},"sizing":{"contracts":7,"risk_budget":1000.0,"max_loss_per_contract":141.4,"es_per_contract":138.58,"es_headroom":1919.2,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T173146-6e241d35-straddle","rationale_source":"deterministic","brief":"structure: long straddle at 765\nfamily: straddle\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 225.90 dollars\nexecution cost: 3.90 dollars across 2 legs, of which 1.50 is half-spread and 0.00 is the reserve to close the shorts\nnet expected result: 222.00 dollars\nwin rate across those sessions: 73.5%\nworst case: 141.40 dollars per lot at an expiry price of 765\none percent tail: 138.58 dollars per lot\nentered for a debit of 1.41 per share\nbreakevens: 763.586, 766.414\nsize: 7 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:31:49.208591+00:00","seq":39,"cycle_id":"20260831T173146-6e241d35","action":"dry_run","rationale":"Entering 33 lots of long strangle 763/767 at a probability of 0.600. Gross expected result 177.16 dollars less 3.40 dollars of cost leaves 173.76 net, with a 56% win rate across the scenario set. Worst case is 28.40 dollars per lot at 767 and the one percent tail is 28.40; size is limited by portfolio_tail.","structure":"strangle","probability":0.6,"legs":[{"symbol":"SPY260831C00767000","right":"call","strike":767.0,"ratio":1,"bid":0.11,"ask":0.12,"mid":0.115},{"symbol":"SPY260831P00763000","right":"put","strike":763.0,"ratio":1,"bid":0.13,"ask":0.14,"mid":0.135}],"net_price":0.28,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":937.2,"es_contribution":937.2,"contracts":33,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 28.40 per lot at 767 against a per-structure budget of 1,000.00","blocking":true,"observed":28.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 173.76 after 3.40 of cost","blocking":true,"observed":173.756126,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831C00767000 at 8.7% of mid against a 10.5% limit","blocking":true,"observed":0.086957,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,988.04 against a cap of 3,000.00","blocking":true,"observed":2988.038842,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 148 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.6s old against a 30s budget","blocking":true,"observed":-0.621331,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"2 structures open against a cap of 4","blocking":true,"observed":2.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":177.16,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":173.76},"sizing":{"contracts":33,"risk_budget":1000.0,"max_loss_per_contract":28.4,"es_per_contract":28.4,"es_headroom":949.16,"binding_constraint":"portfolio_tail"},"client_order_id":"convex-20260831T173146-6e241d35-strangle","rationale_source":"deterministic","brief":"structure: long strangle 763/767\nfamily: strangle\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 177.16 dollars\nexecution cost: 3.40 dollars across 2 legs, of which 1.00 is half-spread and 0.00 is the reserve to close the shorts\nnet expected result: 173.76 dollars\nwin rate across those sessions: 55.6%\nworst case: 28.40 dollars per lot at an expiry price of 767\none percent tail: 28.40 dollars per lot\nentered for a debit of 0.28 per share\nbreakevens: 762.716, 767.284\nsize: 33 contracts, limited by portfolio_tail\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:31:49.341185+00:00","seq":40,"cycle_id":"20260831T173146-6e241d35","action":"candidate_rejected","rationale":"Refused bull call vertical 765/774. Widest leg is spy260831c00774000 at 28.6% of mid against a 10.5% limit. Gross expected result was 100.05 dollars against 5.60 dollars of execution cost across 2 legs, leaving 94.45 net.","structure":"debit_vertical","probability":0.4,"legs":[{"symbol":"SPY260831C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.85,"ask":0.87,"mid":0.86},{"symbol":"SPY260831C00774000","right":"call","strike":774.0,"ratio":-1,"bid":0.03,"ask":0.04,"mid":0.035}],"net_price":0.864,"cost_breakdown":{"half_spread":1.5,"slippage":2.0,"fees":0.4,"exit_reserve":1.7,"total":5.6},"max_loss":86.4,"es_contribution":88.1,"contracts":0,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 86.40 per lot at 765 against a per-structure budget of 1,000.00","blocking":true,"observed":86.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 94.45 after 5.60 of cost","blocking":true,"observed":94.446491,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.50 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831C00774000 at 28.6% of mid against a 10.5% limit","blocking":true,"observed":0.285714,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,988.04 against a cap of 3,000.00","blocking":true,"observed":2988.038842,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 148 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.9s old against a 30s budget","blocking":true,"observed":0.931447,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"3 structures open against a cap of 4","blocking":true,"observed":3.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":100.05,"half_spread":-1.5,"slippage":-2.0,"fees":-0.4,"exit_reserve":-1.7,"net_edge":94.45},"sizing":{"contracts":0,"risk_budget":1000.0,"max_loss_per_contract":86.4,"es_per_contract":88.1,"es_headroom":11.96,"binding_constraint":"portfolio_tail"}},{"ts":"2026-08-31T17:43:01.178038+00:00","seq":41,"cycle_id":"20260831T174259-0399c229","action":"snapshot","rationale":"SPY at 766.00 with 122 priceable contracts on the 2026-08-31 expiry; implied skew -0.00056.","features":{"iv_total":0.04005926,"iv_up":0.01974728,"iv_dn":0.02031198,"implied_skew":-0.0005647,"slope_up":19.30905387,"slope_dn":-19.31919745,"liq_half_spread":0.17721311,"liq_depth":354.41803279,"liq_relative_spread":0.72896738,"liq_relative_spread_p90":2.0,"liq_tightness":0.00677234,"tape_volume":15.27208606,"tape_breadth":1.0,"tape_concentration":0.07215,"tape_put_share":0.54191844,"rv_lag1":9e-08,"ret_lag1":-0.00030021,"rv_5":6.73e-06,"rskew":1.1788944},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-08-31.json.gz"},{"ts":"2026-08-31T17:43:01.790366+00:00","seq":42,"cycle_id":"20260831T174259-0399c229","action":"order_submitted","rationale":"Entering 14 lots of put broken-wing butterfly 776/774/766, near wing 2 and far wing 8 at a probability of 0.600. Gross expected result 120.59 dollars less 42.20 dollars of cost leaves 78.39 net, with a 45% win rate across the scenario set. Worst case is 70.80 dollars per lot at 766 and the one percent tail is 84.20; size is limited by risk_budget.","structure":"put_bwb","probability":0.6,"legs":[{"symbol":"SPY260831P00776000","right":"put","strike":776.0,"ratio":1,"bid":9.9,"ask":10.15,"mid":10.025},{"symbol":"SPY260831P00774000","right":"put","strike":774.0,"ratio":-2,"bid":8.06,"ask":8.17,"mid":8.115},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.62,"ask":0.63,"mid":0.625}],"net_price":-5.29,"cost_breakdown":{"half_spread":24.0,"slippage":4.0,"fees":0.8,"exit_reserve":13.4,"total":42.2},"max_loss":991.2,"es_contribution":1178.8,"contracts":14,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 70.80 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":70.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 78.39 after 42.20 of cost","blocking":true,"observed":78.393302,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 24.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00776000 at 2.5% of mid against a 10.5% limit","blocking":true,"observed":0.024938,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,178.80 against a cap of 3,000.00","blocking":true,"observed":1178.8,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 137 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 1.0s old against a 30s budget","blocking":true,"observed":0.985354,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":120.59,"half_spread":-24.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-13.4,"net_edge":78.39},"sizing":{"contracts":14,"risk_budget":1000.0,"max_loss_per_contract":70.8,"es_per_contract":84.2,"es_headroom":3000.0,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T174259-0399c229-put_bwb","rationale_source":"deterministic","brief":"structure: put broken-wing butterfly 776/774/766, near wing 2 and far wing 8\nfamily: put_bwb\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 120.59 dollars\nexecution cost: 42.20 dollars across 3 legs, of which 24.00 is half-spread and 13.40 is the reserve to close the shorts\nnet expected result: 78.39 dollars\nwin rate across those sessions: 44.7%\nworst case: 70.80 dollars per lot at an expiry price of 766\none percent tail: 84.20 dollars per lot\nentered for a credit of 5.29 per share\nbreakevens: 766.708\nsize: 14 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:43:01.937247+00:00","seq":43,"cycle_id":"20260831T174259-0399c229","action":"order_filled","rationale":"Alpaca accepted the multi-leg order as d5114de5-9a00-4da2-9e76-92ef047bcd2b.","structure":"put_bwb","contracts":14,"outcome":{"order_id":"d5114de5-9a00-4da2-9e76-92ef047bcd2b","status":"pending_new","submitted_at":"2026-08-31T17:43:01.863343628Z"}},{"ts":"2026-08-31T17:43:02.347658+00:00","seq":44,"cycle_id":"20260831T174259-0399c229","action":"candidate_rejected","rationale":"13 of 400 call_bwb structures carry quotes that do not describe a risk and were not priced. First: call broken-wing butterfly 751/753/756, near wing 2 and far wing 3: structure shows a profit of 29.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"call_bwb","reject_reason":"undefined_risk","unpriceable":["call broken-wing butterfly 751/753/756, near wing 2 and far wing 3: structure shows a profit of 29.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/753/757, near wing 2 and far wing 4: structure shows a profit of 16.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/753/758, near wing 2 and far wing 5: structure shows a profit of 2.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/753/759, near wing 2 and far wing 6: structure shows a profit of 14.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/754/759, near wing 3 and far wing 5: structure shows a profit of 4.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 748/752/757, near wing 4 and far wing 5: structure shows a profit of 7.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/753/760, near wing 2 and far wing 7: structure shows a profit of 7.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/753/761, near wing 2 and far wing 8: structure shows a profit of 21.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 751/754/761, near wing 3 and far wing 7: structure shows a profit of 11.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 748/752/759, near wing 4 and far wing 7: structure shows a profit of 5.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-08-31T17:43:02.374847+00:00","seq":45,"cycle_id":"20260831T174259-0399c229","action":"candidate_rejected","rationale":"Refused call broken-wing butterfly 767/771/776, near wing 4 and far wing 5. Widest leg is spy260831c00776000 at 120.0% of mid against a 10.5% limit. Gross expected result was 57.69 dollars against 13.20 dollars of execution cost across 3 legs, leaving 44.49 net.","structure":"call_bwb","probability":0.4,"legs":[{"symbol":"SPY260831C00767000","right":"call","strike":767.0,"ratio":1,"bid":0.24,"ask":0.29,"mid":0.265},{"symbol":"SPY260831C00771000","right":"call","strike":771.0,"ratio":-2,"bid":0.04,"ask":0.05,"mid":0.045},{"symbol":"SPY260831C00776000","right":"call","strike":776.0,"ratio":1,"bid":0.01,"ask":0.04,"mid":0.025}],"net_price":0.298,"cost_breakdown":{"half_spread":5.0,"slippage":4.0,"fees":0.8,"exit_reserve":3.4,"total":13.2},"max_loss":129.8,"es_contribution":133.2,"contracts":7,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 129.80 per lot at 776 against a per-structure budget of 1,000.00","blocking":true,"observed":129.8,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 44.49 after 13.20 of cost","blocking":true,"observed":44.492452,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 5.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831C00776000 at 120.0% of mid against a 10.5% limit","blocking":true,"observed":1.2,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,111.20 against a cap of 3,000.00","blocking":true,"observed":2111.2,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 137 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.8s old against a 30s budget","blocking":true,"observed":-0.832088,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"1 structures open against a cap of 4","blocking":true,"observed":1.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":57.69,"half_spread":-5.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-3.4,"net_edge":44.49},"sizing":{"contracts":7,"risk_budget":1000.0,"max_loss_per_contract":129.8,"es_per_contract":133.2,"es_headroom":1821.2,"binding_constraint":"risk_budget"}},{"ts":"2026-08-31T17:43:02.380882+00:00","seq":46,"cycle_id":"20260831T174259-0399c229","action":"order_submitted","rationale":"Entering 7 lots of long straddle at 766 at a probability of 0.600. Gross expected result 232.29 dollars less 3.40 dollars of cost leaves 228.89 net, with a 75% win rate across the scenario set. Worst case is 132.40 dollars per lot at 766 and the one percent tail is 129.41; size is limited by risk_budget.","structure":"straddle","probability":0.6,"legs":[{"symbol":"SPY260831C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.66,"ask":0.67,"mid":0.665},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.62,"ask":0.63,"mid":0.625}],"net_price":1.32,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":926.8,"es_contribution":905.89,"contracts":7,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 132.40 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":132.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 228.89 after 3.40 of cost","blocking":true,"observed":228.892905,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260831P00766000 at 1.6% of mid against a 10.5% limit","blocking":true,"observed":0.016,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,084.69 against a cap of 3,000.00","blocking":true,"observed":2084.689318,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 137 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.3s old against a 30s budget","blocking":true,"observed":-0.298005,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"1 structures open against a cap of 4","blocking":true,"observed":1.0,"threshold":4.0}],"probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":232.29,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":228.89},"sizing":{"contracts":7,"risk_budget":1000.0,"max_loss_per_contract":132.4,"es_per_contract":129.41,"es_headroom":1821.2,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260831T174259-0399c229-straddle","rationale_source":"deterministic","brief":"structure: long straddle at 766\nfamily: straddle\nprobability of a profitable outcome: 0.600 (regime rule (high_variance))\ngross expected result across 514 historical sessions: 232.29 dollars\nexecution cost: 3.40 dollars across 2 legs, of which 1.00 is half-spread and 0.00 is the reserve to close the shorts\nnet expected result: 228.89 dollars\nwin rate across those sessions: 74.9%\nworst case: 132.40 dollars per lot at an expiry price of 766\none percent tail: 129.41 dollars per lot\nentered for a debit of 1.32 per share\nbreakevens: 764.676, 767.324\nsize: 7 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-08-31T17:43:02.495205+00:00","seq":47,"cycle_id":"20260831T174259-0399c229","action":"order_filled","rationale":"Alpaca accepted the multi-leg order as 1ca83baa-b324-4d02-bf9d-76d6da59a370.","structure":"straddle","contracts":7,"outcome":{"order_id":"1ca83baa-b324-4d02-bf9d-76d6da59a370","status":"pending_new","submitted_at":"2026-08-31T17:43:02.438183728Z"}},{"ts":"2026-08-31T17:43:02.642766+00:00","seq":48,"cycle_id":"20260831T174259-0399c229","action":"candidate_rejected","rationale":"Refused long strangle 764/768. Widest leg is spy260831p00764000 at 43.5% of mid against a 10.5% limit. Gross expected result was 175.56 dollars against 5.40 dollars of execution cost across 2 legs, leaving 170.16 net.","structure":"strangle","probability":0.6,"legs":[{"symbol":"SPY260831C00768000","right":"call","strike":768.0,"ratio":1,"bid":0.13,"ask":0.14,"mid":0.135},{"symbol":"SPY260831P00764000","right":"put","strike":764.0,"ratio":1,"bid":0.09,"ask":0.14,"mid":0.115}],"net_price":0.304,"cost_breakdown":{"half_spread":3.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":5.4},"max_loss":30.4,"es_contribution":30.4,"contracts":30,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 30.40 per lot at 768 against a per-structure budget of 1,000.00","blocking":true,"observed":30.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 170.16 after 5.40 of cost","blocking":true,"observed":170.160725,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 3.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831P00764000 at 43.5% of mid against a 10.5% limit","blocking":true,"observed":0.434783,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,996.69 against a cap of 3,000.00","blocking":true,"observed":2996.689318,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 137 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.8s old against a 30s budget","blocking":true,"observed":-0.820511,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"2 structures open against a cap of 4","blocking":true,"observed":2.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":175.56,"half_spread":-3.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":170.16},"sizing":{"contracts":30,"risk_budget":1000.0,"max_loss_per_contract":30.4,"es_per_contract":30.4,"es_headroom":915.31,"binding_constraint":"portfolio_tail"}},{"ts":"2026-08-31T17:43:03.026958+00:00","seq":49,"cycle_id":"20260831T174259-0399c229","action":"candidate_rejected","rationale":"Refused bull call vertical 766/775. Widest leg is spy260831c00775000 at 66.7% of mid against a 10.5% limit. Gross expected result was 104.33 dollars against 5.10 dollars of execution cost across 2 legs, leaving 99.23 net.","structure":"debit_vertical","probability":0.4,"legs":[{"symbol":"SPY260831C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.66,"ask":0.67,"mid":0.665},{"symbol":"SPY260831C00775000","right":"call","strike":775.0,"ratio":-1,"bid":0.01,"ask":0.02,"mid":0.015}],"net_price":0.684,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":1.7,"total":5.1},"max_loss":68.4,"es_contribution":70.1,"contracts":13,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 68.40 per lot at 766 against a per-structure budget of 1,000.00","blocking":true,"observed":68.4,"threshold":1000.0},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 99.23 after 5.10 of cost","blocking":true,"observed":99.232516,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260831C00775000 at 66.7% of mid against a 10.5% limit","blocking":true,"observed":0.666667,"threshold":0.1047},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 2,995.99 against a cap of 3,000.00","blocking":true,"observed":2995.989318,"threshold":3000.0},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 137 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.3s old against a 30s budget","blocking":true,"observed":-0.298005,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"2 structures open against a cap of 4","blocking":true,"observed":2.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (high_variance)","waterfall":{"gross_edge":104.33,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-1.7,"net_edge":99.23},"sizing":{"contracts":13,"risk_budget":1000.0,"max_loss_per_contract":68.4,"es_per_contract":70.1,"es_headroom":915.31,"binding_constraint":"portfolio_tail"}},{"ts":"2026-08-31T18:25:12.068874+00:00","seq":50,"cycle_id":"20260831T182512-40c0bacf","action":"calibration","rationale":"First measurement of execution cost against a real fill. The straddle sent at a net mid of 1.290 with a 1.320 limit filled at 1.310, so the package crossed 0.020 against the mid across two legs, which is 1.00 tick per leg and exactly what costs.slippage_ticks_per_leg already assumed. The per leg fill prices Alpaca reports, 0.640 on the call and 0.670 on the put, are the broker allocating a package price and are not per leg slippage. Fees are 0.36 dollars across 14 contracts, or 0.0257 per contract, recovered by reconciling cash against the notional because no fee activity record exists on this account. The standing bounds total 0.20 per contract, so cost is overstated about eightfold, which refuses candidates it need not. Nothing was written into the configuration: one fill is two legs and fourteen contracts, and this project refuses a liquidity threshold on fewer than forty legs.","outcome":{"net_mid_at_send":1.29,"net_fill":1.31,"limit_sent":1.32,"slippage_ticks_per_leg_measured":1.0,"slippage_ticks_per_leg_bound":1.0,"fees_total_dollars":0.36,"fees_per_contract_measured":0.0257,"fees_per_contract_bound":0.2,"contracts":14,"legs":2,"fills":1}},{"ts":"2026-08-31T19:30:35.928217+00:00","seq":50,"cycle_id":"20260831T193035-7dd82553","action":"risk_halt","rationale":"Closing 4 of 4 open leg(s) on assignment_guard. SPY is at 766.41 with 29 minutes to the close.","reject_reason":"assignment_guard","spot":766.415,"pin_band":1.916,"day_pnl_pct":-0.004778,"targets":["SPY260831P00774000","SPY260831C00766000","SPY260831P00766000","SPY260831P00776000"]},{"ts":"2026-08-31T19:30:36.311656+00:00","seq":51,"cycle_id":"20260831T193035-7dd82553","action":"position_closed","rationale":"Sent a closing limit at 7.81 for -28 SPY260831P00774000, crossing 0.08 from a mid of 7.73.","structure":"SPY260831P00774000","net_price":7.81,"contracts":-28,"outcome":{"order_id":"26e0e70e-8519-426c-aa6d-73c70616a07a","status":"pending_new","trigger":"assignment_guard","unrealised_pnl_at_close":868.0,"average_entry_price":7.98}},{"ts":"2026-08-31T19:30:36.434333+00:00","seq":52,"cycle_id":"20260831T193035-7dd82553","action":"position_closed","rationale":"Sent a closing limit at 0.66 for +7 SPY260831C00766000, crossing 0.03 from a mid of 0.69.","structure":"SPY260831C00766000","net_price":0.66,"contracts":7,"outcome":{"order_id":"f12ee18f-ff11-498e-b4df-02464a1c0e08","status":"pending_new","trigger":"assignment_guard","unrealised_pnl_at_close":28.0,"average_entry_price":0.64}},{"ts":"2026-08-31T19:30:36.541303+00:00","seq":53,"cycle_id":"20260831T193035-7dd82553","action":"order_rejected","rationale":"Could not close SPY260831P00766000: place_option_order was rejected: API rejected the order","structure":"SPY260831P00766000","contracts":21,"reject_reason":"close_rejected"},{"ts":"2026-08-31T19:30:36.641054+00:00","seq":54,"cycle_id":"20260831T193035-7dd82553","action":"order_rejected","rationale":"Could not close SPY260831P00776000: place_option_order was rejected: API rejected the order","structure":"SPY260831P00776000","contracts":14,"reject_reason":"close_rejected"},{"ts":"2026-08-31T19:35:46.030681+00:00","seq":56,"cycle_id":"20260831T193545-ac2f083f","action":"risk_halt","rationale":"Closing 2 of 2 open leg(s) on assignment_guard. SPY is at 766.48 with 24 minutes to the close.","reject_reason":"assignment_guard","spot":766.475,"pin_band":1.9162,"day_pnl_pct":-0.006046,"targets":["SPY260831P00766000","SPY260831P00776000"]},{"ts":"2026-08-31T19:35:46.138214+00:00","seq":57,"cycle_id":"20260831T193545-ac2f083f","action":"position_closed","rationale":"Sent a closing limit at 0.22 for +21 SPY260831P00766000, crossing 0.02 from a mid of 0.24.","structure":"SPY260831P00766000","net_price":0.22,"contracts":21,"outcome":{"order_id":"8c9ae454-df06-4fff-b19e-8ed606ddce59","status":"pending_new","trigger":"assignment_guard","unrealised_pnl_at_close":-707.0,"average_entry_price":0.576667}},{"ts":"2026-08-31T19:35:46.241656+00:00","seq":58,"cycle_id":"20260831T193545-ac2f083f","action":"order_rejected","rationale":"Could not close SPY260831P00776000: place_option_order was rejected: API rejected the order","structure":"SPY260831P00776000","contracts":14,"reject_reason":"close_rejected"},{"ts":"2026-08-31T19:40:50.897323+00:00","seq":59,"cycle_id":"20260831T194050-174527d4","action":"risk_halt","rationale":"Closing 1 of 1 open leg(s) on assignment_guard. SPY is at 766.63 with 19 minutes to the close.","reject_reason":"assignment_guard","spot":766.635,"pin_band":1.9166,"day_pnl_pct":-0.008431,"targets":["SPY260831P00776000"]},{"ts":"2026-08-31T19:40:51.000696+00:00","seq":60,"cycle_id":"20260831T194050-174527d4","action":"position_closed","rationale":"Sent a closing limit at 9.27 for +14 SPY260831P00776000, crossing 0.05 from a mid of 9.32.","structure":"SPY260831P00776000","net_price":9.27,"contracts":14,"outcome":{"order_id":"9edbfa57-d2a8-409a-b04f-64d726f55bf2","status":"pending_new","trigger":"assignment_guard","unrealised_pnl_at_close":-1022.0,"average_entry_price":10.02}},{"ts":"2026-09-01T06:46:43.071966+00:00","seq":61,"cycle_id":"20260901T064641-6f7b6d3b","action":"calibration","rationale":"Preflight against the live paper account: SPY at 767.17, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","reject_reason":"equity is 99,156.50, not the 100,000.00 the submission rules require of a fresh paper account","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99156.5,"cash":99156.5,"buying_power":396626.0,"options_buying_power":99156.5,"options_approved_level":3,"pattern_day_trader":false},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":104,"median_relative_spread":0.1555679910464466,"widest_relative_spread":2.0,"strike_low":737.0,"strike_high":797.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T13:36:34.059546+00:00","seq":62,"cycle_id":"20260901T133631-71dbb6be","action":"calibration","rationale":"Preflight against the live paper account: SPY at 762.35, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","reject_reason":"equity is 99,153.38, not the 100,000.00 the submission rules require of a fresh paper account","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99153.38,"cash":99153.38,"buying_power":396613.52,"options_buying_power":99153.38,"options_approved_level":3,"pattern_day_trader":false},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":107,"median_relative_spread":0.06853091768412768,"widest_relative_spread":2.0,"strike_low":732.0,"strike_high":792.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T13:37:01.954321+00:00","seq":63,"cycle_id":"20260901T133659-aec64013","action":"calibration","rationale":"Preflight against the live paper account: SPY at 762.05, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","reject_reason":"equity is 99,153.38, not the 100,000.00 the submission rules require of a fresh paper account","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99153.38,"cash":99153.38,"buying_power":396613.52,"options_buying_power":99153.38,"options_approved_level":3,"pattern_day_trader":false},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":107,"median_relative_spread":0.08229598893499304,"widest_relative_spread":2.0,"strike_low":732.0,"strike_high":792.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T13:40:13.715545+00:00","seq":64,"cycle_id":"20260901T134013-846a7249","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-01 expiry with the underlying at 761.84: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":761.84,"expiry":"2026-09-01","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.545,"leg_relative_spread_median":0.1163,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":19.2,"p90_cost":80.7,"median_cost_share_of_max_loss":0.0887},{"family":"call_bwb","candidates":394,"skipped":6,"median_cost":18.2,"p90_cost":92.2,"median_cost_share_of_max_loss":0.0929},{"family":"straddle","candidates":1,"skipped":0,"median_cost":5.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.0198},{"family":"strangle","candidates":196,"skipped":0,"median_cost":3.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.2065},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":8.35,"p90_cost":33.6,"median_cost_share_of_max_loss":0.0709}]}},{"ts":"2026-09-01T14:04:18.676192+00:00","seq":65,"cycle_id":"20260901T140416-0203d48f","action":"calibration","rationale":"Preflight against the live paper account: SPY at 762.33, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99153.38,"cash":99153.38,"buying_power":396613.52,"options_buying_power":99153.38,"options_approved_level":3,"pattern_day_trader":false,"required_initial_equity":100000.0,"current_equity_delta_from_initial":-846.6199999999953},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":107,"median_relative_spread":0.10526315789473693,"widest_relative_spread":2.0,"strike_low":732.0,"strike_high":792.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T14:04:30.660013+00:00","seq":66,"cycle_id":"20260901T140428-3e9df47a","action":"calibration","rationale":"Preflight against the live paper account: SPY at 762.36, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99153.38,"cash":99153.38,"buying_power":396613.52,"options_buying_power":99153.38,"options_approved_level":3,"pattern_day_trader":false,"required_initial_equity":100000.0,"current_equity_delta_from_initial":-846.6199999999953},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":107,"median_relative_spread":0.10381810381810373,"widest_relative_spread":2.0,"strike_low":732.0,"strike_high":792.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T14:11:58.071865+00:00","seq":67,"cycle_id":"20260901T141158-3dd94107","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-01 expiry with the underlying at 762.66: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":762.66,"expiry":"2026-09-01","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.995,"leg_relative_spread_median":0.1286,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":15.2,"p90_cost":146.7,"median_cost_share_of_max_loss":0.0732},{"family":"call_bwb","candidates":397,"skipped":3,"median_cost":18.2,"p90_cost":120.2,"median_cost_share_of_max_loss":0.0955},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0156},{"family":"strangle","candidates":182,"skipped":0,"median_cost":3.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.2537},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":7.1,"p90_cost":44.6,"median_cost_share_of_max_loss":0.0809}]}},{"ts":"2026-09-01T14:11:58.077870+00:00","seq":68,"cycle_id":"20260901T141158-ef78f15c","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.1280 from 122 quoted legs and replaced the standing value of 0.1047. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.1047,"after":0.127996,"legs":122,"measurement":{"market_open":true,"spot":762.66,"expiry":"2026-09-01","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.995,"leg_relative_spread_median":0.1286,"leg_relative_spread_p90":2.0,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":15.2,"p90_cost":146.7,"median_cost_share_of_max_loss":0.0732},{"family":"call_bwb","candidates":397,"skipped":3,"median_cost":18.2,"p90_cost":120.2,"median_cost_share_of_max_loss":0.0955},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.4,"p90_cost":3.4,"median_cost_share_of_max_loss":0.0156},{"family":"strangle","candidates":182,"skipped":0,"median_cost":3.4,"p90_cost":5.4,"median_cost_share_of_max_loss":0.2537},{"family":"debit_vertical","candidates":400,"skipped":0,"median_cost":7.1,"p90_cost":44.6,"median_cost_share_of_max_loss":0.0809}]}}},{"ts":"2026-09-01T14:12:28.791139+00:00","seq":69,"cycle_id":"20260901T141227-90482989","action":"snapshot","rationale":"SPY at 762.72 with 122 priceable contracts on the 2026-09-01 expiry; implied skew -0.00097.","features":{"iv_total":0.02426555,"iv_up":0.01164546,"iv_dn":0.01262009,"implied_skew":-0.00097463,"slope_up":11.80374631,"slope_dn":-10.7710105,"liq_half_spread":0.22463115,"liq_depth":349.40163934,"liq_relative_spread":0.63713479,"liq_relative_spread_p90":2.0,"liq_tightness":0.03822733,"tape_volume":13.545561,"tape_breadth":1.0,"tape_concentration":0.0566786,"tape_put_share":0.51637441,"rv_lag1":8.1e-07,"ret_lag1":0.00089855,"rv_5":6.99e-06,"rskew":1.18035974},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-09-01.json.gz"},{"ts":"2026-09-01T14:12:28.941611+00:00","seq":70,"cycle_id":"20260901T141227-90482989","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 773/769/763, near wing 4 and far wing 6. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 69.44 dollars against 31.70 dollars of execution cost across 3 legs, leaving 37.74 net.","structure":"put_bwb","probability":0.5,"legs":[{"symbol":"SPY260901P00773000","right":"put","strike":773.0,"ratio":1,"bid":10.32,"ask":10.4,"mid":10.36},{"symbol":"SPY260901P00769000","right":"put","strike":769.0,"ratio":-2,"bid":6.44,"ask":6.54,"mid":6.49},{"symbol":"SPY260901P00763000","right":"put","strike":763.0,"ratio":1,"bid":1.24,"ask":1.25,"mid":1.245}],"net_price":-1.182,"cost_breakdown":{"half_spread":14.5,"slippage":4.0,"fees":0.8,"exit_reserve":12.4,"total":31.7},"max_loss":81.8,"es_contribution":94.2,"contracts":12,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 81.80 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":81.8,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 37.74 after 31.70 of cost","blocking":true,"observed":37.740489,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 14.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901P00769000 at 1.5% of mid against a 12.8% limit","blocking":true,"observed":0.015408,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,130.40 against a cap of 2,974.60","blocking":true,"observed":1130.4,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 348 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.1s old against a 30s budget","blocking":true,"observed":0.102909,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":69.44,"half_spread":-14.5,"slippage":-4.0,"fees":-0.8,"exit_reserve":-12.4,"net_edge":37.74},"sizing":{"contracts":12,"risk_budget":991.53,"max_loss_per_contract":81.8,"es_per_contract":94.2,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:12:29.039905+00:00","seq":71,"cycle_id":"20260901T141227-90482989","action":"candidate_rejected","rationale":"Refused call broken-wing butterfly 765/769/774, near wing 4 and far wing 5. Widest leg is spy260901c00774000 at 66.7% of mid against a 12.8% limit. Gross expected result was 31.44 dollars against 10.20 dollars of execution cost across 3 legs, leaving 21.24 net.","structure":"call_bwb","probability":0.5,"legs":[{"symbol":"SPY260901C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.27,"ask":0.28,"mid":0.275},{"symbol":"SPY260901C00769000","right":"call","strike":769.0,"ratio":-2,"bid":0.05,"ask":0.06,"mid":0.055},{"symbol":"SPY260901C00774000","right":"call","strike":774.0,"ratio":1,"bid":0.01,"ask":0.02,"mid":0.015}],"net_price":0.248,"cost_breakdown":{"half_spread":2.0,"slippage":4.0,"fees":0.8,"exit_reserve":3.4,"total":10.2},"max_loss":124.8,"es_contribution":128.2,"contracts":7,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 124.80 per lot at 774 against a per-structure budget of 991.53","blocking":true,"observed":124.8,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 21.24 after 10.20 of cost","blocking":true,"observed":21.241096,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 2.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260901C00774000 at 66.7% of mid against a 12.8% limit","blocking":true,"observed":0.666667,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 897.40 against a cap of 2,974.60","blocking":true,"observed":897.4,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 348 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.8s old against a 30s budget","blocking":true,"observed":0.773913,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (middle)","waterfall":{"gross_edge":31.44,"half_spread":-2.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-3.4,"net_edge":21.24},"sizing":{"contracts":7,"risk_budget":991.53,"max_loss_per_contract":124.8,"es_per_contract":128.2,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:12:29.044146+00:00","seq":72,"cycle_id":"20260901T141227-90482989","action":"candidate_rejected","rationale":"Refused long straddle at 763. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 145.66 dollars against 3.40 dollars of execution cost across 2 legs, leaving 142.26 net.","structure":"straddle","probability":0.5,"legs":[{"symbol":"SPY260901C00763000","right":"call","strike":763.0,"ratio":1,"bid":0.88,"ask":0.89,"mid":0.885},{"symbol":"SPY260901P00763000","right":"put","strike":763.0,"ratio":1,"bid":1.24,"ask":1.25,"mid":1.245}],"net_price":2.164,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":216.4,"es_contribution":207.68,"contracts":4,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 216.40 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":216.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 142.26 after 3.40 of cost","blocking":true,"observed":142.260726,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901C00763000 at 1.1% of mid against a 12.8% limit","blocking":true,"observed":0.011299,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 830.72 against a cap of 2,974.60","blocking":true,"observed":830.722797,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 348 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.0s old against a 30s budget","blocking":true,"observed":-0.031406,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":145.66,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":142.26},"sizing":{"contracts":4,"risk_budget":991.53,"max_loss_per_contract":216.4,"es_per_contract":207.68,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:12:29.086729+00:00","seq":73,"cycle_id":"20260901T141227-90482989","action":"candidate_rejected","rationale":"Refused long strangle 761/765. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 121.57 dollars against 3.40 dollars of execution cost across 2 legs, leaving 118.17 net.","structure":"strangle","probability":0.5,"legs":[{"symbol":"SPY260901C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.27,"ask":0.28,"mid":0.275},{"symbol":"SPY260901P00761000","right":"put","strike":761.0,"ratio":1,"bid":0.49,"ask":0.5,"mid":0.495}],"net_price":0.804,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":80.4,"es_contribution":80.4,"contracts":12,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 80.40 per lot at 765 against a per-structure budget of 991.53","blocking":true,"observed":80.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 118.17 after 3.40 of cost","blocking":true,"observed":118.168193,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901C00765000 at 3.6% of mid against a 12.8% limit","blocking":true,"observed":0.036364,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 964.80 against a cap of 2,974.60","blocking":true,"observed":964.8,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 348 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.1s old against a 30s budget","blocking":true,"observed":-0.082547,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":121.57,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":118.17},"sizing":{"contracts":12,"risk_budget":991.53,"max_loss_per_contract":80.4,"es_per_contract":80.4,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:12:29.172658+00:00","seq":74,"cycle_id":"20260901T141227-90482989","action":"candidate_rejected","rationale":"Refused bull call vertical 763/772. Widest leg is spy260901c00772000 at 66.7% of mid against a 12.8% limit. Gross expected result was 67.65 dollars against 5.10 dollars of execution cost across 2 legs, leaving 62.55 net.","structure":"debit_vertical","probability":0.5,"legs":[{"symbol":"SPY260901C00763000","right":"call","strike":763.0,"ratio":1,"bid":0.88,"ask":0.89,"mid":0.885},{"symbol":"SPY260901C00772000","right":"call","strike":772.0,"ratio":-1,"bid":0.01,"ask":0.02,"mid":0.015}],"net_price":0.904,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":1.7,"total":5.1},"max_loss":90.4,"es_contribution":92.1,"contracts":10,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 90.40 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":90.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 62.55 after 5.10 of cost","blocking":true,"observed":62.547365,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260901C00772000 at 66.7% of mid against a 12.8% limit","blocking":true,"observed":0.666667,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 921.00 against a cap of 2,974.60","blocking":true,"observed":921.0,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 348 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.8s old against a 30s budget","blocking":true,"observed":0.773968,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (middle)","waterfall":{"gross_edge":67.65,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-1.7,"net_edge":62.55},"sizing":{"contracts":10,"risk_budget":991.53,"max_loss_per_contract":90.4,"es_per_contract":92.1,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:12:29.176319+00:00","seq":75,"cycle_id":"20260901T141227-90482989","action":"stand_down","rationale":"Stood down. No family produced a candidate that cleared its checks once execution cost was priced in.","structure":"stand_down"},{"ts":"2026-09-01T14:13:10.323623+00:00","seq":76,"cycle_id":"20260901T141308-74cf656b","action":"snapshot","rationale":"SPY at 762.65 with 122 priceable contracts on the 2026-09-01 expiry; implied skew -0.00145.","features":{"iv_total":0.02523293,"iv_up":0.01189153,"iv_dn":0.0133414,"implied_skew":-0.00144987,"slope_up":11.19886924,"slope_dn":-11.38395137,"liq_half_spread":0.19934426,"liq_depth":325.54098361,"liq_relative_spread":0.65266901,"liq_relative_spread_p90":2.0,"liq_tightness":0.02644093,"tape_volume":13.56103758,"tape_breadth":1.0,"tape_concentration":0.05667958,"tape_put_share":0.51649117,"rv_lag1":6.6e-07,"ret_lag1":0.00081332,"rv_5":6.97e-06,"rskew":1.18043289},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-09-01.json.gz"},{"ts":"2026-09-01T14:13:10.490580+00:00","seq":77,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 774/772/764, near wing 2 and far wing 8. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 107.59 dollars against 65.70 dollars of execution cost across 3 legs, leaving 41.89 net.","structure":"put_bwb","probability":0.5,"legs":[{"symbol":"SPY260901P00774000","right":"put","strike":774.0,"ratio":1,"bid":11.22,"ask":11.36,"mid":11.29},{"symbol":"SPY260901P00772000","right":"put","strike":772.0,"ratio":-2,"bid":9.47,"ask":9.72,"mid":9.595},{"symbol":"SPY260901P00764000","right":"put","strike":764.0,"ratio":1,"bid":1.84,"ask":1.87,"mid":1.855}],"net_price":-5.662,"cost_breakdown":{"half_spread":33.5,"slippage":4.0,"fees":0.8,"exit_reserve":27.4,"total":65.7},"max_loss":33.8,"es_contribution":61.2,"contracts":29,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 33.80 per lot at 764 against a per-structure budget of 991.53","blocking":true,"observed":33.8,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 41.89 after 65.70 of cost","blocking":true,"observed":41.887962,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 33.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901P00772000 at 2.6% of mid against a 12.8% limit","blocking":true,"observed":0.026055,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 1,774.80 against a cap of 2,974.60","blocking":true,"observed":1774.8,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 347 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.2s old against a 30s budget","blocking":true,"observed":0.241222,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":107.59,"half_spread":-33.5,"slippage":-4.0,"fees":-0.8,"exit_reserve":-27.4,"net_edge":41.89},"sizing":{"contracts":29,"risk_budget":991.53,"max_loss_per_contract":33.8,"es_per_contract":61.2,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:13:10.588139+00:00","seq":78,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"1 of 400 call_bwb structures carry quotes that do not describe a risk and were not priced. First: call broken-wing butterfly 745/749/754, near wing 4 and far wing 5: structure shows a profit of 1.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"call_bwb","reject_reason":"undefined_risk","unpriceable":["call broken-wing butterfly 745/749/754, near wing 4 and far wing 5: structure shows a profit of 1.20 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-01T14:13:10.594114+00:00","seq":79,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"Refused call broken-wing butterfly 765/769/774, near wing 4 and far wing 5. Widest leg is spy260901c00774000 at 28.6% of mid against a 12.8% limit. Gross expected result was 34.18 dollars against 10.20 dollars of execution cost across 3 legs, leaving 23.98 net.","structure":"call_bwb","probability":0.5,"legs":[{"symbol":"SPY260901C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.21,"ask":0.22,"mid":0.215},{"symbol":"SPY260901C00769000","right":"call","strike":769.0,"ratio":-2,"bid":0.05,"ask":0.06,"mid":0.055},{"symbol":"SPY260901C00774000","right":"call","strike":774.0,"ratio":1,"bid":0.03,"ask":0.04,"mid":0.035}],"net_price":0.208,"cost_breakdown":{"half_spread":2.0,"slippage":4.0,"fees":0.8,"exit_reserve":3.4,"total":10.2},"max_loss":120.8,"es_contribution":124.2,"contracts":8,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 120.80 per lot at 774 against a per-structure budget of 991.53","blocking":true,"observed":120.8,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 23.98 after 10.20 of cost","blocking":true,"observed":23.979105,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 2.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260901C00774000 at 28.6% of mid against a 12.8% limit","blocking":true,"observed":0.285714,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 993.60 against a cap of 2,974.60","blocking":true,"observed":993.6,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 347 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.3s old against a 30s budget","blocking":true,"observed":0.294341,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (middle)","waterfall":{"gross_edge":34.18,"half_spread":-2.0,"slippage":-4.0,"fees":-0.8,"exit_reserve":-3.4,"net_edge":23.98},"sizing":{"contracts":8,"risk_budget":991.53,"max_loss_per_contract":120.8,"es_per_contract":124.2,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:13:10.598683+00:00","seq":80,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"Refused long straddle at 763. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 150.62 dollars against 3.40 dollars of execution cost across 2 legs, leaving 147.22 net.","structure":"straddle","probability":0.5,"legs":[{"symbol":"SPY260901C00763000","right":"call","strike":763.0,"ratio":1,"bid":0.86,"ask":0.87,"mid":0.865},{"symbol":"SPY260901P00763000","right":"put","strike":763.0,"ratio":1,"bid":1.21,"ask":1.22,"mid":1.215}],"net_price":2.114,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":211.4,"es_contribution":203.36,"contracts":4,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 211.40 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":211.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 147.22 after 3.40 of cost","blocking":true,"observed":147.215152,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901C00763000 at 1.2% of mid against a 12.8% limit","blocking":true,"observed":0.011561,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 813.42 against a cap of 2,974.60","blocking":true,"observed":813.422463,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 347 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -1.0s old against a 30s budget","blocking":true,"observed":-0.968223,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":150.62,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":147.22},"sizing":{"contracts":4,"risk_budget":991.53,"max_loss_per_contract":211.4,"es_per_contract":203.36,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:13:10.638860+00:00","seq":81,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"Refused long strangle 761/765. Probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030. Gross expected result was 125.61 dollars against 3.40 dollars of execution cost across 2 legs, leaving 122.21 net.","structure":"strangle","probability":0.5,"legs":[{"symbol":"SPY260901C00765000","right":"call","strike":765.0,"ratio":1,"bid":0.21,"ask":0.22,"mid":0.215},{"symbol":"SPY260901P00761000","right":"put","strike":761.0,"ratio":1,"bid":0.51,"ask":0.52,"mid":0.515}],"net_price":0.764,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"max_loss":76.4,"es_contribution":76.4,"contracts":12,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 76.40 per lot at 765 against a per-structure budget of 991.53","blocking":true,"observed":76.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 122.21 after 3.40 of cost","blocking":true,"observed":122.210054,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260901C00765000 at 4.7% of mid against a 12.8% limit","blocking":true,"observed":0.046512,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 916.80 against a cap of 2,974.60","blocking":true,"observed":916.8,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 347 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.2s old against a 30s budget","blocking":true,"observed":0.229469,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (middle)","waterfall":{"gross_edge":125.61,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-0.0,"net_edge":122.21},"sizing":{"contracts":12,"risk_budget":991.53,"max_loss_per_contract":76.4,"es_per_contract":76.4,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:13:10.725623+00:00","seq":82,"cycle_id":"20260901T141308-74cf656b","action":"candidate_rejected","rationale":"Refused bull call vertical 763/771. Widest leg is spy260901c00771000 at 22.2% of mid against a 12.8% limit. Gross expected result was 67.09 dollars against 5.10 dollars of execution cost across 2 legs, leaving 61.99 net.","structure":"debit_vertical","probability":0.5,"legs":[{"symbol":"SPY260901C00763000","right":"call","strike":763.0,"ratio":1,"bid":0.86,"ask":0.87,"mid":0.865},{"symbol":"SPY260901C00771000","right":"call","strike":771.0,"ratio":-1,"bid":0.04,"ask":0.05,"mid":0.045}],"net_price":0.854,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":1.7,"total":5.1},"max_loss":85.4,"es_contribution":87.1,"contracts":11,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 85.40 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":85.4,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 61.99 after 5.10 of cost","blocking":true,"observed":61.986325,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"2 legs to cross, costing 1.00 in half-spread","blocking":false,"observed":2.0},{"gate":"liquidity","scope":"candidate","passed":false,"detail":"widest leg is SPY260901C00771000 at 22.2% of mid against a 12.8% limit","blocking":true,"observed":0.222222,"threshold":0.128},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 958.10 against a cap of 2,974.60","blocking":true,"observed":958.1,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"0 in-the-money short leg(s) with 347 minutes to the close","blocking":true,"observed":0.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.500, 0.000 from the coin flip against a band of 0.030","blocking":true,"observed":0.5,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.8s old against a 30s budget","blocking":true,"observed":-0.799277,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"liquidity","probability_source":"regime rule (middle)","waterfall":{"gross_edge":67.09,"half_spread":-1.0,"slippage":-2.0,"fees":-0.4,"exit_reserve":-1.7,"net_edge":61.99},"sizing":{"contracts":11,"risk_budget":991.53,"max_loss_per_contract":85.4,"es_per_contract":87.1,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-01T14:13:10.728350+00:00","seq":83,"cycle_id":"20260901T141308-74cf656b","action":"stand_down","rationale":"Stood down. No family produced a candidate that cleared its checks once execution cost was priced in.","structure":"stand_down"},{"ts":"2026-09-01T14:41:21.139465+00:00","seq":84,"cycle_id":"20260901T144119-b2f43e5a","action":"calibration","rationale":"Preflight against the live paper account: SPY at 764.18, 122 contracts on the 2026-09-01 expiry, 0 of them with Greeks.","outcome":{"account":{"account_number":"PA35QSFNW15J","status":"ACTIVE","equity":99153.38,"cash":99153.38,"buying_power":396613.52,"options_buying_power":99153.38,"options_approved_level":3,"pattern_day_trader":false,"required_initial_equity":100000.0,"current_equity_delta_from_initial":-846.6199999999953},"sessions":["2026-08-28","2026-08-31","2026-09-01","2026-09-02","2026-09-03","2026-09-04"],"expiries":["2026-09-01","2026-09-02","2026-09-03","2026-09-04","2026-09-08","2026-09-09","2026-09-10","2026-09-11"],"tested_a_same_day_expiry":true,"chain":{"expiry":"2026-09-01","contracts":122,"with_greeks":0,"with_open_interest":105,"median_relative_spread":0.11412410580602228,"widest_relative_spread":2.0,"strike_low":734.0,"strike_high":794.0,"multiplier":100},"solved_volatilities":{"calls":30,"puts":31}}},{"ts":"2026-09-01T16:27:14.076577+00:00","seq":85,"cycle_id":"20260831T174259-0399c229","action":"order_reconciled","rationale":"Broker reconciliation verified entry d5114de5-9a00-4da2-9e76-92ef047bcd2b fully filled for 14 contracts. This corrects an earlier pending_new receipt without rewriting it.","structure":"put_bwb","legs":[{"symbol":"SPY260831P00776000","right":"put","strike":776.0,"ratio":1,"bid":9.9,"ask":10.15,"mid":10.025},{"symbol":"SPY260831P00774000","right":"put","strike":774.0,"ratio":-2,"bid":8.06,"ask":8.17,"mid":8.115},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.62,"ask":0.63,"mid":0.625}],"net_price":-5.41,"cost_breakdown":{"half_spread":24.0,"slippage":4.0,"fees":0.8,"exit_reserve":13.4,"total":42.2},"contracts":14,"outcome":{"order_id":"d5114de5-9a00-4da2-9e76-92ef047bcd2b","status":"filled","submitted_at":"2026-08-31T17:43:01.875459Z","client_order_id":"convex-20260831T174259-0399c229-put_bwb","filled_qty":"14","filled_avg_price":"-5.41"},"entry_order_id":"d5114de5-9a00-4da2-9e76-92ef047bcd2b","reconciles_sequence":43,"broker_leg_fills":[{"order_id":"21cfeda7-7429-4ded-9bce-3f81bdb83db1","symbol":"SPY260831P00776000","side":"buy","qty":14,"price":"10.02"},{"order_id":"0fda3550-a48d-4f79-91d7-eba29abea6d1","symbol":"SPY260831P00774000","side":"sell","qty":28,"price":"7.98"},{"order_id":"4caa097b-10e6-4c9a-a691-bb06564691e8","symbol":"SPY260831P00766000","side":"buy","qty":14,"price":"0.53"}]},{"ts":"2026-09-01T16:27:14.080227+00:00","seq":86,"cycle_id":"20260831T174259-0399c229","action":"position_reconciled","rationale":"Broker fills reconcile put_bwb to -565.30 after 5.30 in day-level broker fees allocated by executed contracts.","structure":"put_bwb","contracts":14,"outcome":{"realised_pnl":-565.3,"gross_realised_pnl":-560.0,"execution_cost":5.3,"broker_fees":5.3,"entry_cash":7574.0,"exit_cash":-8134.0,"entry_order_id":"d5114de5-9a00-4da2-9e76-92ef047bcd2b","exit_order_ids":["9edbfa57-d2a8-409a-b04f-64d726f55bf2","26e0e70e-8519-426c-aa6d-73c70616a07a","8c9ae454-df06-4fff-b19e-8ed606ddce59"],"basis":"broker_fills_with_day_level_fee_allocation"},"entry_order_id":"d5114de5-9a00-4da2-9e76-92ef047bcd2b","fee_allocation":"proportional_to_verified_executed_contracts","broker_fee_total_for_day":6.62},{"ts":"2026-09-01T16:27:14.083471+00:00","seq":87,"cycle_id":"20260831T174259-0399c229","action":"order_reconciled","rationale":"Broker reconciliation verified entry 1ca83baa-b324-4d02-bf9d-76d6da59a370 fully filled for 7 contracts. This corrects an earlier pending_new receipt without rewriting it.","structure":"straddle","legs":[{"symbol":"SPY260831C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.66,"ask":0.67,"mid":0.665},{"symbol":"SPY260831P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.62,"ask":0.63,"mid":0.625}],"net_price":1.31,"cost_breakdown":{"half_spread":1.0,"slippage":2.0,"fees":0.4,"exit_reserve":0.0,"total":3.4},"contracts":7,"outcome":{"order_id":"1ca83baa-b324-4d02-bf9d-76d6da59a370","status":"filled","submitted_at":"2026-08-31T17:43:02.44644Z","client_order_id":"convex-20260831T174259-0399c229-straddle","filled_qty":"7","filled_avg_price":"1.31"},"entry_order_id":"1ca83baa-b324-4d02-bf9d-76d6da59a370","reconciles_sequence":47,"broker_leg_fills":[{"order_id":"11ead212-73b0-416d-9122-1073e6c6f8a5","symbol":"SPY260831C00766000","side":"buy","qty":7,"price":"0.64"},{"order_id":"e944c67b-1dde-4c53-9866-6cee63c49832","symbol":"SPY260831P00766000","side":"buy","qty":7,"price":"0.67"}]},{"ts":"2026-09-01T16:27:14.087408+00:00","seq":88,"cycle_id":"20260831T174259-0399c229","action":"position_reconciled","rationale":"Broker fills reconcile straddle to -281.32 after 1.32 in day-level broker fees allocated by executed contracts.","structure":"straddle","contracts":7,"outcome":{"realised_pnl":-281.32,"gross_realised_pnl":-280.0,"execution_cost":1.32,"broker_fees":1.32,"entry_cash":-917.0,"exit_cash":637.0,"entry_order_id":"1ca83baa-b324-4d02-bf9d-76d6da59a370","exit_order_ids":["f12ee18f-ff11-498e-b4df-02464a1c0e08","8c9ae454-df06-4fff-b19e-8ed606ddce59"],"basis":"broker_fills_with_day_level_fee_allocation"},"entry_order_id":"1ca83baa-b324-4d02-bf9d-76d6da59a370","fee_allocation":"proportional_to_verified_executed_contracts","broker_fee_total_for_day":6.62},{"ts":"2026-09-02T02:06:53.716024+00:00","seq":89,"cycle_id":"20260902T020653-62b0460d","action":"correction","rationale":"Sequence integrity, stated because this log is published and the property is checkable. Two numbers in it are wrong: seq 50 appears twice, on lines 50 and 51, and seq 55 was never issued. Nothing was edited and nothing was removed. Before commit 7fc3ec6 the sequence was a counter cached when a Ledger was constructed and guarded by a threading.Lock, which protects one process against itself and says nothing to the four other processes writing this file. The assignment guard was started while the file held 49 lines. The calibration job then wrote line 50 and took seq 50. At 19:30:35 on 31 August the guard, still counting from 49, issued 50 a second time and then ran exactly one behind for five records, so lines 51 to 55 carry seq 50 to 54. The guard was restarted, recounted 55 lines, and issued 56, which is why 55 belongs to no record. Every line after 55 is correct. The sequence is now recounted inside an advisory file lock held across the append, so no two processes can agree on a number. tests/test_ledger.py holds four processes to it and fails against the implementation that produced this.","outcome":{"duplicated_sequence":50,"unissued_sequence":55,"affected_lines":[51,52,53,54,55],"records_edited":0,"records_removed":0,"fixed_in":"7fc3ec6","regression_test":"tests/test_ledger.py"}},{"ts":"2026-09-02T03:36:50.121085+00:00","seq":90,"cycle_id":"20260902T033650-65591b76","action":"calibration","rationale":"Replaced the standing fee bound with a measurement. Alpaca's own fee activities for 31 August total 6.62 dollars across 140 executed contracts, which is 0.047286 per contract. The ledger's cash reconciliation for the same day reaches the same figure independently, so two routes agree. The standing bound was 0.20 per contract, commission and regulatory pass-through at 0.10 each, deliberately set above any plausible retail fee while no fill existed to measure. The broker reports one fee bucket and does not separate the two, so the whole measured amount now sits in costs.per_contract_fee and costs.regulatory_fee_per_contract is zero because it is accounted for in the other field rather than assumed away. Both keys leave provenance.conservative_bound. The effect is small and is stated rather than implied: replaying the 1 September chain, candidates whose gross profit is entirely consumed by cost fall from 440 of 1383 to 433 of 1383. Execution cost on these structures is dominated by the half-spread, not by fees.","outcome":{"key":"costs.per_contract_fee","before":0.2,"after":0.047286,"fees_total_dollars":6.62,"executed_contracts":140,"sources":["broker_fee_activities","ledger_cash_reconciliation"],"cost_consumed_before":440,"cost_consumed_after":433,"candidates":1383}},{"ts":"2026-09-02T12:14:10.182977+00:00","seq":91,"cycle_id":"20260902T121409-f2f637b1","action":"risk_halt","rationale":"No cycle today: the market is not open right now.","checks":[{"gate":"kill_switch","scope":"session","passed":true,"detail":"no kill switch file","blocking":true},{"gate":"calibration","scope":"session","passed":true,"detail":"measured, except these which stand at deliberate over-estimates pending a fill to measure them from: costs.slippage_ticks_per_leg, session.pin_band_pct","blocking":true},{"gate":"market_calendar","scope":"session","passed":false,"detail":"the market is not open right now","blocking":true},{"gate":"daily_loss_limit","scope":"session","passed":true,"detail":"day P&L is +0.00% against a 3% limit","blocking":true,"observed":-0.0,"threshold":0.03},{"gate":"buying_power","scope":"session","passed":true,"detail":"account reports 99,153.38 of buying power","blocking":true,"observed":99153.38},{"gate":"cost_budget","scope":"session","passed":true,"detail":"6.62 of execution cost paid against a budget of 1,983.07","blocking":true,"observed":6.62,"threshold":1983.0676}],"reject_reason":"market_calendar"},{"ts":"2026-09-02T12:43:26.334860+00:00","seq":92,"cycle_id":"20260902T124326-c6b47d68","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-02 expiry with the underlying at 761.85: the median leg costs 0.025 per share to cross. Taken with the market closed, so these are the spreads of a book nobody is quoting and no threshold was written from them.","outcome":{"market_open":false,"spot":761.85,"expiry":"2026-09-02","contracts":122,"leg_half_spread_median":0.025,"leg_half_spread_p90":1.54,"leg_relative_spread_median":0.1273,"leg_relative_spread_p90":2.0,"two_sided_legs":106,"one_sided_legs":16,"leg_relative_spread_median_two_sided":0.1109,"families":[{"family":"put_bwb","candidates":400,"skipped":0,"median_cost":113.28,"p90_cost":510.28,"median_cost_share_of_max_loss":0.3666},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":78.03,"p90_cost":408.78,"median_cost_share_of_max_loss":0.4542},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.59,"p90_cost":3.59,"median_cost_share_of_max_loss":0.0088},{"family":"strangle","candidates":28,"skipped":0,"median_cost":3.09,"p90_cost":5.59,"median_cost_share_of_max_loss":0.0271},{"family":"debit_vertical","candidates":392,"skipped":0,"median_cost":22.14,"p90_cost":111.64,"median_cost_share_of_max_loss":0.0534}]}},{"ts":"2026-09-02T13:55:31.380549+00:00","seq":93,"cycle_id":"20260902T135531-dec9d578","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-02 expiry with the underlying at 762.15: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":762.15,"expiry":"2026-09-02","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.25,"leg_relative_spread_median":0.0389,"leg_relative_spread_p90":2.0,"two_sided_legs":99,"one_sided_legs":23,"leg_relative_spread_median_two_sided":0.0251,"families":[{"family":"put_bwb","candidates":397,"skipped":3,"median_cost":85.28,"p90_cost":140.78,"median_cost_share_of_max_loss":0.6249},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":53.28,"p90_cost":85.78,"median_cost_share_of_max_loss":0.4804},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.09,"p90_cost":3.09,"median_cost_share_of_max_loss":0.0119},{"family":"strangle","candidates":4,"skipped":0,"median_cost":5.09,"p90_cost":5.09,"median_cost_share_of_max_loss":0.0566},{"family":"debit_vertical","candidates":294,"skipped":0,"median_cost":18.64,"p90_cost":45.14,"median_cost_share_of_max_loss":0.0323}]}},{"ts":"2026-09-02T13:55:31.388306+00:00","seq":94,"cycle_id":"20260902T135531-0a9ce9a7","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0513 from 99 quoted legs and replaced the standing value of 0.1280. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.128,"after":0.051282,"legs":99,"market_open":true,"measurement":{"market_open":true,"spot":762.15,"expiry":"2026-09-02","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.25,"leg_relative_spread_median":0.0389,"leg_relative_spread_p90":2.0,"two_sided_legs":99,"one_sided_legs":23,"leg_relative_spread_median_two_sided":0.0251,"families":[{"family":"put_bwb","candidates":397,"skipped":3,"median_cost":85.28,"p90_cost":140.78,"median_cost_share_of_max_loss":0.6249},{"family":"call_bwb","candidates":400,"skipped":0,"median_cost":53.28,"p90_cost":85.78,"median_cost_share_of_max_loss":0.4804},{"family":"straddle","candidates":1,"skipped":0,"median_cost":3.09,"p90_cost":3.09,"median_cost_share_of_max_loss":0.0119},{"family":"strangle","candidates":4,"skipped":0,"median_cost":5.09,"p90_cost":5.09,"median_cost_share_of_max_loss":0.0566},{"family":"debit_vertical","candidates":294,"skipped":0,"median_cost":18.64,"p90_cost":45.14,"median_cost_share_of_max_loss":0.0323}]}}},{"ts":"2026-09-02T14:00:59.877122+00:00","seq":95,"cycle_id":"20260902T140058-c37ef008","action":"snapshot","rationale":"SPY at 763.10 with 122 priceable contracts on the 2026-09-02 expiry; implied skew -0.00950.","features":{"iv_total":0.03060148,"iv_up":0.01054873,"iv_dn":0.02005274,"implied_skew":-0.00950401,"slope_up":10.75427931,"slope_dn":-10.46968456,"liq_half_spread":0.07978689,"liq_depth":564.43442623,"liq_relative_spread":0.52459501,"liq_relative_spread_p90":2.0,"liq_tightness":0.01016125,"tape_volume":12.82984563,"tape_breadth":1.0,"tape_concentration":0.05119852,"tape_put_share":0.51463598,"rv_lag1":0.0,"ret_lag1":0.0,"rv_5":6.59e-06,"rskew":1.18890646,"call_bwb_pnl_lag1":0.0,"call_bwb_pnl_mean5":0.0,"call_bwb_pnl_std5":0.0,"call_bwb_pnl_count":0.0,"debit_vertical_pnl_lag1":0.0,"debit_vertical_pnl_mean5":0.0,"debit_vertical_pnl_std5":0.0,"debit_vertical_pnl_count":0.0,"put_bwb_pnl_lag1":0.0,"put_bwb_pnl_mean5":0.0,"put_bwb_pnl_std5":0.0,"put_bwb_pnl_count":0.0,"straddle_pnl_lag1":0.0,"straddle_pnl_mean5":0.0,"straddle_pnl_std5":0.0,"straddle_pnl_count":0.0,"strangle_pnl_lag1":0.0,"strangle_pnl_mean5":0.0,"strangle_pnl_std5":0.0,"strangle_pnl_count":0.0},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-09-02.json.gz"},{"ts":"2026-09-02T14:01:00.043625+00:00","seq":96,"cycle_id":"20260902T140058-c37ef008","action":"candidate_rejected","rationale":"236 of 400 priced put_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: put broken-wing butterfly 778/776/772, near wing 2 and far wing 4 at a gross edge of 0.35 against 208.28 of cost across 3 legs, leaving -207.93.","structure":"put_bwb","reject_reason":"net_of_cost","consumed":236,"priced":400,"waterfall":{"gross_edge":0.35,"half_spread":-126.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-78.09,"net_edge":-207.93},"worst":{"description":"put broken-wing butterfly 778/776/772, near wing 2 and far wing 4","gross_edge":0.35,"cost":208.28,"net_edge":-207.93,"legs":3}},{"ts":"2026-09-02T14:01:00.117207+00:00","seq":97,"cycle_id":"20260902T140058-c37ef008","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 777/774/764, near wing 3 and far wing 10. Probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030. Gross expected result was 91.45 dollars against 55.78 dollars of execution cost across 3 legs, leaving 35.67 net.","structure":"put_bwb","probability":0.4,"legs":[{"symbol":"SPY260902P00777000","right":"put","strike":777.0,"ratio":1,"bid":13.87,"ask":14.01,"mid":13.94},{"symbol":"SPY260902P00774000","right":"put","strike":774.0,"ratio":-2,"bid":11.02,"ask":11.23,"mid":11.125},{"symbol":"SPY260902P00764000","right":"put","strike":764.0,"ratio":1,"bid":1.63,"ask":1.64,"mid":1.635}],"net_price":-6.1172,"cost_breakdown":{"half_spread":28.5,"slippage":4.0,"fees":0.1891,"exit_reserve":23.0946,"total":55.7837},"max_loss":88.28,"es_contribution":88.28,"contracts":11,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 88.28 per lot at 764 against a per-structure budget of 991.53","blocking":true,"observed":88.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 35.67 after 55.78 of cost","blocking":true,"observed":35.669517,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 28.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902P00774000 at 1.9% of mid against a 5.1% limit","blocking":true,"observed":0.018876,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 971.12 against a cap of 2,974.60","blocking":true,"observed":971.120876,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 359 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.4s old against a 30s budget","blocking":true,"observed":-0.363702,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":91.45,"half_spread":-28.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-23.09,"net_edge":35.67},"sizing":{"contracts":11,"risk_budget":991.53,"max_loss_per_contract":88.28,"es_per_contract":88.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-02T14:01:00.344044+00:00","seq":98,"cycle_id":"20260902T140058-c37ef008","action":"candidate_rejected","rationale":"3 of 400 call_bwb structures carry quotes that do not describe a risk and were not priced. First: call broken-wing butterfly 747/751/756, near wing 4 and far wing 5: structure shows a profit of 8.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"call_bwb","reject_reason":"undefined_risk","unpriceable":["call broken-wing butterfly 747/751/756, near wing 4 and far wing 5: structure shows a profit of 8.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 747/751/757, near wing 4 and far wing 6: structure shows a profit of 14.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 747/751/758, near wing 4 and far wing 7: structure shows a profit of 1.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-02T14:01:00.348456+00:00","seq":99,"cycle_id":"20260902T140058-c37ef008","action":"candidate_rejected","rationale":"242 of 397 priced call_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: call broken-wing butterfly 743/749/757, near wing 6 and far wing 8 at a gross edge of 4.71 against 158.28 of cost across 3 legs, leaving -153.58.","structure":"call_bwb","reject_reason":"net_of_cost","consumed":242,"priced":397,"waterfall":{"gross_edge":4.71,"half_spread":-98.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-56.09,"net_edge":-153.58},"worst":{"description":"call broken-wing butterfly 743/749/757, near wing 6 and far wing 8","gross_edge":4.71,"cost":158.28,"net_edge":-153.58,"legs":3}},{"ts":"2026-09-02T14:01:03.556261+00:00","seq":100,"cycle_id":"20260902T140058-c37ef008","action":"order_submitted","rationale":"Entering 10 lots of call broken-wing butterfly 747/751/763, near wing 4 and far wing 12 at a probability of 0.600. Gross expected result 87.96 dollars less 28.28 dollars of cost leaves 59.68 net, with a 37% win rate across the scenario set. Worst case is 91.28 dollars per lot at 763 and the one percent tail is 91.28; size is limited by risk_budget.","structure":"call_bwb","probability":0.6,"legs":[{"symbol":"SPY260902C00747000","right":"call","strike":747.0,"ratio":1,"bid":15.74,"ask":15.97,"mid":15.855},{"symbol":"SPY260902C00751000","right":"call","strike":751.0,"ratio":-2,"bid":12.21,"ask":12.26,"mid":12.235},{"symbol":"SPY260902C00763000","right":"call","strike":763.0,"ratio":1,"bid":1.24,"ask":1.25,"mid":1.245}],"net_price":-7.16,"cost_breakdown":{"half_spread":17.0,"slippage":4.0,"fees":0.1891,"exit_reserve":7.0946,"total":28.2837},"max_loss":912.84,"es_contribution":912.84,"contracts":10,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 91.28 per lot at 763 against a per-structure budget of 991.53","blocking":true,"observed":91.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 59.68 after 28.28 of cost","blocking":true,"observed":59.677766,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 17.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902C00747000 at 1.5% of mid against a 5.1% limit","blocking":true,"observed":0.014506,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 912.84 against a cap of 2,974.60","blocking":true,"observed":912.83716,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 359 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.4s old against a 30s budget","blocking":true,"observed":-0.397785,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 4","blocking":true,"observed":0.0,"threshold":4.0}],"probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":87.96,"half_spread":-17.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-7.09,"net_edge":59.68},"sizing":{"contracts":10,"risk_budget":991.53,"max_loss_per_contract":91.28,"es_per_contract":91.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260902T140058-c37ef008-call_bwb","rationale_source":"deterministic (featherless introduced or changed a number)","brief":"structure: call broken-wing butterfly 747/751/763, near wing 4 and far wing 12\nfamily: call_bwb\nprobability of a profitable outcome: 0.600 (regime rule (low_variance, implied history of 550 readings))\ngross expected result across 514 historical sessions: 87.96 dollars\nexecution cost: 28.28 dollars across 3 legs, of which 17.00 is half-spread and 7.09 is the reserve to close the shorts\nnet expected result: 59.68 dollars\nwin rate across those sessions: 37.2%\nworst case: 91.28 dollars per lot at an expiry price of 763\none percent tail: 91.28 dollars per lot\nentered for a credit of 7.09 per share\nbreakevens: 762.087\nsize: 10 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed"},{"ts":"2026-09-02T14:01:33.978124+00:00","seq":101,"cycle_id":"20260902T140058-c37ef008","action":"order_rejected","rationale":"Alpaca reports canceled with 0/10 contracts filled; the entry is not recorded as an open position.","structure":"call_bwb","contracts":10,"reject_reason":"entry_not_filled","outcome":{"order_id":"90771d74-eab6-4cb1-838d-7b2489d1d695","status":"canceled","submitted_at":"2026-09-02T14:01:03.632481504Z","client_order_id":"convex-20260902T140058-c37ef008-call_bwb","filled_qty":"0","filled_avg_price":null,"cancel_requested":true},"client_order_id":"convex-20260902T140058-c37ef008-call_bwb"},{"ts":"2026-09-02T15:35:24.854082+00:00","seq":102,"cycle_id":"20260902T153524-f02f6aa8","action":"calibration","rationale":"Tournament profile 'skew_bwb' is authorized to submit one defined-risk paper structure through the canonical ledger. Directional broken-wing butterflies selected by the existing skew/variance rule.","tournament":{"profile":"skew_bwb","mode":"paper_submission"}},{"ts":"2026-09-02T15:35:26.562466+00:00","seq":103,"cycle_id":"20260902T153524-55f13540","action":"snapshot","rationale":"SPY at 766.04 with 122 priceable contracts on the 2026-09-02 expiry; implied skew -0.01512.","features":{"iv_total":0.03421362,"iv_up":0.00954794,"iv_dn":0.02466568,"implied_skew":-0.01511774,"slope_up":14.09020925,"slope_dn":-15.2713755,"liq_half_spread":0.05004508,"liq_depth":623.52459016,"liq_relative_spread":0.49797265,"liq_relative_spread_p90":2.0,"liq_tightness":0.01255989,"tape_volume":14.80084627,"tape_breadth":1.0,"tape_concentration":0.04996447,"tape_put_share":0.49751746,"rv_lag1":1.303e-05,"ret_lag1":0.00360955,"rv_5":9.19e-06,"rskew":1.18554538,"call_bwb_pnl_lag1":0.0,"call_bwb_pnl_mean5":0.0,"call_bwb_pnl_std5":0.0,"call_bwb_pnl_count":0.0,"put_bwb_pnl_lag1":0.0,"put_bwb_pnl_mean5":0.0,"put_bwb_pnl_std5":0.0,"put_bwb_pnl_count":0.0},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-09-02.json.gz"},{"ts":"2026-09-02T15:35:26.677220+00:00","seq":104,"cycle_id":"20260902T153524-55f13540","action":"candidate_rejected","rationale":"27 of 400 put_bwb structures carry quotes that do not describe a risk and were not priced. First: put broken-wing butterfly 779/777/774, near wing 2 and far wing 3: structure shows a profit of 3.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"put_bwb","reject_reason":"undefined_risk","unpriceable":["put broken-wing butterfly 779/777/774, near wing 2 and far wing 3: structure shows a profit of 3.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/773, near wing 2 and far wing 4: structure shows a profit of 0.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/781/777, near wing 3 and far wing 4: structure shows a profit of 6.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 782/780/774, near wing 2 and far wing 6: structure shows a profit of 3.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/781/776, near wing 3 and far wing 5: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 782/780/773, near wing 2 and far wing 7: structure shows a profit of 0.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/780/775, near wing 4 and far wing 5: structure shows a profit of 30.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/781/775, near wing 3 and far wing 6: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/780/774, near wing 4 and far wing 6: structure shows a profit of 43.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 784/781/774, near wing 3 and far wing 7: structure shows a profit of 34.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-02T15:35:26.681997+00:00","seq":105,"cycle_id":"20260902T153524-55f13540","action":"candidate_rejected","rationale":"148 of 373 priced put_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: put broken-wing butterfly 778/775/770, near wing 3 and far wing 5 at a gross edge of 3.48 against 86.78 of cost across 3 legs, leaving -83.31.","structure":"put_bwb","reject_reason":"net_of_cost","consumed":148,"priced":373,"waterfall":{"gross_edge":3.48,"half_spread":-48.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-34.09,"net_edge":-83.31},"worst":{"description":"put broken-wing butterfly 778/775/770, near wing 3 and far wing 5","gross_edge":3.48,"cost":86.78,"net_edge":-83.31,"legs":3}},{"ts":"2026-09-02T15:35:26.689187+00:00","seq":106,"cycle_id":"20260902T153524-55f13540","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 779/777/766, near wing 2 and far wing 11. Probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030. Gross expected result was 113.33 dollars against 39.78 dollars of execution cost across 3 legs, leaving 73.55 net.","structure":"put_bwb","probability":0.4,"legs":[{"symbol":"SPY260902P00779000","right":"put","strike":779.0,"ratio":1,"bid":12.88,"ask":13.14,"mid":13.01},{"symbol":"SPY260902P00777000","right":"put","strike":777.0,"ratio":-2,"bid":11.16,"ask":11.26,"mid":11.21},{"symbol":"SPY260902P00766000","right":"put","strike":766.0,"ratio":1,"bid":0.99,"ask":1.0,"mid":0.995}],"net_price":-8.0172,"cost_breakdown":{"half_spread":23.5,"slippage":4.0,"fees":0.1891,"exit_reserve":12.0946,"total":39.7837},"max_loss":98.28,"es_contribution":98.28,"contracts":10,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 98.28 per lot at 766 against a per-structure budget of 991.53","blocking":true,"observed":98.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 73.55 after 39.78 of cost","blocking":true,"observed":73.54559,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 23.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902P00779000 at 2.0% of mid against a 5.1% limit","blocking":true,"observed":0.019985,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 982.84 against a cap of 2,974.60","blocking":true,"observed":982.83716,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 265 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.3s old against a 30s budget","blocking":true,"observed":-0.345284,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 1","blocking":true,"observed":0.0,"threshold":1.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":113.33,"half_spread":-23.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-12.09,"net_edge":73.55},"sizing":{"contracts":10,"risk_budget":991.53,"max_loss_per_contract":98.28,"es_per_contract":98.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-02T15:35:26.786219+00:00","seq":107,"cycle_id":"20260902T153524-55f13540","action":"candidate_rejected","rationale":"20 of 400 call_bwb structures carry quotes that do not describe a risk and were not priced. First: call broken-wing butterfly 750/752/755, near wing 2 and far wing 3: structure shows a profit of 0.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"call_bwb","reject_reason":"undefined_risk","unpriceable":["call broken-wing butterfly 750/752/755, near wing 2 and far wing 3: structure shows a profit of 0.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/752/756, near wing 2 and far wing 4: structure shows a profit of 22.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/752/757, near wing 2 and far wing 5: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/753/757, near wing 3 and far wing 4: structure shows a profit of 28.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/752/758, near wing 2 and far wing 6: structure shows a profit of 14.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/753/758, near wing 3 and far wing 5: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/752/759, near wing 2 and far wing 7: structure shows a profit of 7.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/753/759, near wing 3 and far wing 6: structure shows a profit of 14.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/752/760, near wing 2 and far wing 8: structure shows a profit of 11.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 750/753/760, near wing 3 and far wing 7: structure shows a profit of 18.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-02T15:35:26.790716+00:00","seq":108,"cycle_id":"20260902T153524-55f13540","action":"candidate_rejected","rationale":"168 of 380 priced call_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: call broken-wing butterfly 748/751/761, near wing 3 and far wing 10 at a gross edge of 14.04 against 147.78 of cost across 3 legs, leaving -133.74.","structure":"call_bwb","reject_reason":"net_of_cost","consumed":168,"priced":380,"waterfall":{"gross_edge":14.04,"half_spread":-87.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-56.09,"net_edge":-133.74},"worst":{"description":"call broken-wing butterfly 748/751/761, near wing 3 and far wing 10","gross_edge":14.04,"cost":147.78,"net_edge":-133.74,"legs":3}},{"ts":"2026-09-02T15:35:38.162358+00:00","seq":109,"cycle_id":"20260902T153524-55f13540","action":"order_submitted","rationale":"The Call Broken-Wing Butterfly (BWB) structure is set with strikes at 750, 753, and 766, with wings at 3 and 13. The probability of a profitable outcome is 0.600, based on a regime with low variance and 550 historical readings. Historically, the gross expected result is 132.63 dollars over 514 sessions, with an execution cost of 36.78 dollars, resulting in a net expected result of 95.84 dollars. The win rate is 39.9%, with a worst-case scenario of 60.28 dollars per lot at an expiry price of 766. The structure is entered for a credit of 9.40 per share, with breakevens at 765.397. The position size is 16 contracts, limited by risk budget. All checks including max_loss, net","structure":"call_bwb","probability":0.6,"legs":[{"symbol":"SPY260902C00750000","right":"call","strike":750.0,"ratio":1,"bid":15.67,"ask":15.83,"mid":15.75},{"symbol":"SPY260902C00753000","right":"call","strike":753.0,"ratio":-2,"bid":13.2,"ask":13.31,"mid":13.255},{"symbol":"SPY260902C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.99,"ask":1.0,"mid":0.995}],"net_price":-9.53,"cost_breakdown":{"half_spread":19.5,"slippage":4.0,"fees":0.1891,"exit_reserve":13.0946,"total":36.7837},"max_loss":964.54,"es_contribution":964.54,"contracts":16,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 60.28 per lot at 766 against a per-structure budget of 991.53","blocking":true,"observed":60.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 95.84 after 36.78 of cost","blocking":true,"observed":95.843341,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 19.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902C00750000 at 1.0% of mid against a 5.1% limit","blocking":true,"observed":0.010159,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 964.54 against a cap of 2,974.60","blocking":true,"observed":964.539456,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 265 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.2s old against a 30s budget","blocking":true,"observed":-0.169538,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 1","blocking":true,"observed":0.0,"threshold":1.0}],"probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":132.63,"half_spread":-19.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-13.09,"net_edge":95.84},"sizing":{"contracts":16,"risk_budget":991.53,"max_loss_per_contract":60.28,"es_per_contract":60.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260902T153524-55f13540-call_bwb","rationale_source":"featherless","brief":"structure: call broken-wing butterfly 750/753/766, near wing 3 and far wing 13\nfamily: call_bwb\nprobability of a profitable outcome: 0.600 (regime rule (low_variance, implied history of 550 readings))\ngross expected result across 514 historical sessions: 132.63 dollars\nexecution cost: 36.78 dollars across 3 legs, of which 19.50 is half-spread and 13.09 is the reserve to close the shorts\nnet expected result: 95.84 dollars\nwin rate across those sessions: 39.9%\nworst case: 60.28 dollars per lot at an expiry price of 766\none percent tail: 60.28 dollars per lot\nentered for a credit of 9.40 per share\nbreakevens: 765.397\nsize: 16 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed","tournament":{"profile":"skew_bwb","mode":"paper_submission"}},{"ts":"2026-09-02T15:36:08.736223+00:00","seq":110,"cycle_id":"20260902T153524-55f13540","action":"order_rejected","rationale":"Alpaca reports canceled with 0/16 contracts filled; the entry is not recorded as an open position.","structure":"call_bwb","contracts":16,"reject_reason":"entry_not_filled","outcome":{"order_id":"88dbeae4-5465-4f4b-8f76-50ecfc66e307","status":"canceled","submitted_at":"2026-09-02T15:35:38.403248502Z","client_order_id":"convex-20260902T153524-55f13540-call_bwb","filled_qty":"0","filled_avg_price":null,"cancel_requested":true},"client_order_id":"convex-20260902T153524-55f13540-call_bwb"},{"ts":"2026-09-02T16:00:31.780322+00:00","seq":111,"cycle_id":"20260902T160031-538d7961","action":"calibration","rationale":"Tournament profile 'execution_bwb' is authorized to submit one defined-risk paper structure through the canonical ledger. The same BWB universe with a recorded, bounded fill-ladder observation plan.","tournament":{"profile":"execution_bwb","mode":"paper_submission"}},{"ts":"2026-09-02T16:00:33.528981+00:00","seq":112,"cycle_id":"20260902T160031-88ca68b2","action":"snapshot","rationale":"SPY at 765.87 with 122 priceable contracts on the 2026-09-02 expiry; implied skew -0.00478.","features":{"iv_total":0.03365211,"iv_up":0.01443454,"iv_dn":0.01921757,"implied_skew":-0.00478304,"slope_up":15.04397128,"slope_dn":-15.7478727,"liq_half_spread":0.03815984,"liq_depth":620.89344262,"liq_relative_spread":0.49976372,"liq_relative_spread_p90":2.0,"liq_tightness":0.01575926,"tape_volume":14.95092043,"tape_breadth":1.0,"tape_concentration":0.05021031,"tape_put_share":0.50581664,"rv_lag1":1.192e-05,"ret_lag1":0.00345288,"rv_5":8.97e-06,"rskew":1.18570773,"call_bwb_pnl_lag1":0.0,"call_bwb_pnl_mean5":0.0,"call_bwb_pnl_std5":0.0,"call_bwb_pnl_count":0.0,"put_bwb_pnl_lag1":0.0,"put_bwb_pnl_mean5":0.0,"put_bwb_pnl_std5":0.0,"put_bwb_pnl_count":0.0},"chain_archive":"/home/ubuntu/convex/data/chains/chain-2026-09-02.json.gz"},{"ts":"2026-09-02T16:00:33.635487+00:00","seq":113,"cycle_id":"20260902T160031-88ca68b2","action":"candidate_rejected","rationale":"17 of 400 put_bwb structures carry quotes that do not describe a risk and were not priced. First: put broken-wing butterfly 779/777/774, near wing 2 and far wing 3: structure shows a profit of 10.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"put_bwb","reject_reason":"undefined_risk","unpriceable":["put broken-wing butterfly 779/777/774, near wing 2 and far wing 3: structure shows a profit of 10.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/773, near wing 2 and far wing 4: structure shows a profit of 10.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/772, near wing 2 and far wing 5: structure shows a profit of 8.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 780/777/773, near wing 3 and far wing 4: structure shows a profit of 14.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/771, near wing 2 and far wing 6: structure shows a profit of 13.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 780/777/772, near wing 3 and far wing 5: structure shows a profit of 12.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/770, near wing 2 and far wing 7: structure shows a profit of 7.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 780/777/771, near wing 3 and far wing 6: structure shows a profit of 17.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 781/777/772, near wing 4 and far wing 5: structure shows a profit of 16.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","put broken-wing butterfly 779/777/769, near wing 2 and far wing 8: structure shows a profit of 5.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-02T16:00:33.638876+00:00","seq":114,"cycle_id":"20260902T160031-88ca68b2","action":"candidate_rejected","rationale":"112 of 383 priced put_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: put broken-wing butterfly 782/778/770, near wing 4 and far wing 8 at a gross edge of 4.12 against 94.28 of cost across 3 legs, leaving -90.16.","structure":"put_bwb","reject_reason":"net_of_cost","consumed":112,"priced":383,"waterfall":{"gross_edge":4.12,"half_spread":-59.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-31.09,"net_edge":-90.16},"worst":{"description":"put broken-wing butterfly 782/778/770, near wing 4 and far wing 8","gross_edge":4.12,"cost":94.28,"net_edge":-90.16,"legs":3}},{"ts":"2026-09-02T16:00:33.645926+00:00","seq":115,"cycle_id":"20260902T160031-88ca68b2","action":"candidate_rejected","rationale":"Refused put broken-wing butterfly 781/777/766, near wing 4 and far wing 11. Probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030. Gross expected result was 122.27 dollars against 22.28 dollars of execution cost across 3 legs, leaving 99.98 net.","structure":"put_bwb","probability":0.4,"legs":[{"symbol":"SPY260902P00781000","right":"put","strike":781.0,"ratio":1,"bid":15.0,"ask":15.15,"mid":15.075},{"symbol":"SPY260902P00777000","right":"put","strike":777.0,"ratio":-2,"bid":11.34,"ask":11.37,"mid":11.355},{"symbol":"SPY260902P00766000","right":"put","strike":766.0,"ratio":1,"bid":1.0,"ask":1.05,"mid":1.025}],"net_price":-6.3872,"cost_breakdown":{"half_spread":13.0,"slippage":4.0,"fees":0.1891,"exit_reserve":5.0946,"total":22.2837},"max_loss":61.28,"es_contribution":61.28,"contracts":16,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 61.28 per lot at 766 against a per-structure budget of 991.53","blocking":true,"observed":61.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 99.98 after 22.28 of cost","blocking":true,"observed":99.981909,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 13.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902P00766000 at 4.9% of mid against a 5.1% limit","blocking":true,"observed":0.04878,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 980.54 against a cap of 2,974.60","blocking":true,"observed":980.539456,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 239 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":false,"detail":"probability of a profitable outcome is 0.400, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.4,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.7s old against a 30s budget","blocking":true,"observed":-0.745688,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 1","blocking":true,"observed":0.0,"threshold":1.0}],"reject_reason":"classifier_confidence","probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":122.27,"half_spread":-13.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-5.09,"net_edge":99.98},"sizing":{"contracts":16,"risk_budget":991.53,"max_loss_per_contract":61.28,"es_per_contract":61.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"}},{"ts":"2026-09-02T16:00:33.738593+00:00","seq":116,"cycle_id":"20260902T160031-88ca68b2","action":"candidate_rejected","rationale":"22 of 400 call_bwb structures carry quotes that do not describe a risk and were not priced. First: call broken-wing butterfly 749/751/754, near wing 2 and far wing 3: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","structure":"call_bwb","reject_reason":"undefined_risk","unpriceable":["call broken-wing butterfly 749/751/754, near wing 2 and far wing 3: structure shows a profit of 21.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 755/757/760, near wing 2 and far wing 3: structure shows a profit of 8.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 749/751/755, near wing 2 and far wing 4: structure shows a profit of 4.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 749/751/756, near wing 2 and far wing 5: structure shows a profit of 10.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 754/757/761, near wing 3 and far wing 4: structure shows a profit of 16.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 754/757/762, near wing 3 and far wing 5: structure shows a profit of 9.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 747/751/756, near wing 4 and far wing 5: structure shows a profit of 1.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 754/757/763, near wing 3 and far wing 6: structure shows a profit of 3.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 749/751/759, near wing 2 and far wing 8: structure shows a profit of 8.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read","call broken-wing butterfly 746/751/757, near wing 5 and far wing 6: structure shows a profit of 20.72 at every expiry price; refusing to size an apparent arbitrage, the quotes should be re-read"]},{"ts":"2026-09-02T16:00:33.742476+00:00","seq":117,"cycle_id":"20260902T160031-88ca68b2","action":"candidate_rejected","rationale":"164 of 378 priced call_bwb structures showed a gross profit that execution cost consumed entirely, and were refused before ranking. Worst: call broken-wing butterfly 751/753/758, near wing 2 and far wing 5 at a gross edge of 12.11 against 80.28 of cost across 3 legs, leaving -68.17.","structure":"call_bwb","reject_reason":"net_of_cost","consumed":164,"priced":378,"waterfall":{"gross_edge":12.11,"half_spread":-45.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-31.09,"net_edge":-68.17},"worst":{"description":"call broken-wing butterfly 751/753/758, near wing 2 and far wing 5","gross_edge":12.11,"cost":80.28,"net_edge":-68.17,"legs":3}},{"ts":"2026-09-02T16:00:43.784353+00:00","seq":118,"cycle_id":"20260902T160031-88ca68b2","action":"order_submitted","rationale":"Entering 15 lots of call broken-wing butterfly 750/757/766, near wing 7 and far wing 9 at a probability of 0.600. Gross expected result 100.98 dollars less 16.28 dollars of cost leaves 84.69 net, with a 41% win rate across the scenario set. Worst case is 64.28 dollars per lot at 766 and the one percent tail is 64.28; size is limited by risk_budget.","structure":"call_bwb","probability":0.6,"legs":[{"symbol":"SPY260902C00750000","right":"call","strike":750.0,"ratio":1,"bid":15.69,"ask":15.72,"mid":15.705},{"symbol":"SPY260902C00757000","right":"call","strike":757.0,"ratio":-2,"bid":9.04,"ask":9.08,"mid":9.06},{"symbol":"SPY260902C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.89,"ask":0.9,"mid":0.895}],"net_price":-1.42,"cost_breakdown":{"half_spread":6.0,"slippage":4.0,"fees":0.1891,"exit_reserve":6.0946,"total":16.2837},"max_loss":964.26,"es_contribution":964.26,"contracts":15,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 64.28 per lot at 766 against a per-structure budget of 991.53","blocking":true,"observed":64.283716,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 84.69 after 16.28 of cost","blocking":true,"observed":84.692347,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 6.00 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902C00766000 at 1.1% of mid against a 5.1% limit","blocking":true,"observed":0.011173,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 964.26 against a cap of 2,974.60","blocking":true,"observed":964.25574,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 239 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is -0.4s old against a 30s budget","blocking":true,"observed":-0.41108,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 1","blocking":true,"observed":0.0,"threshold":1.0}],"probability_source":"regime rule (low_variance, implied history of 550 readings)","waterfall":{"gross_edge":100.98,"half_spread":-6.0,"slippage":-4.0,"fees":-0.19,"exit_reserve":-6.09,"net_edge":84.69},"sizing":{"contracts":15,"risk_budget":991.53,"max_loss_per_contract":64.28,"es_per_contract":64.28,"es_headroom":2974.6,"binding_constraint":"risk_budget"},"client_order_id":"convex-20260902T160031-88ca68b2-call_bwb","rationale_source":"deterministic (featherless introduced or changed a number)","brief":"structure: call broken-wing butterfly 750/757/766, near wing 7 and far wing 9\nfamily: call_bwb\nprobability of a profitable outcome: 0.600 (regime rule (low_variance, implied history of 550 readings))\ngross expected result across 514 historical sessions: 100.98 dollars\nexecution cost: 16.28 dollars across 3 legs, of which 6.00 is half-spread and 6.09 is the reserve to close the shorts\nnet expected result: 84.69 dollars\nwin rate across those sessions: 41.2%\nworst case: 64.28 dollars per lot at an expiry price of 766\none percent tail: 64.28 dollars per lot\nentered for a credit of 1.36 per share\nbreakevens: 765.357\nsize: 15 contracts, limited by risk_budget\nchecks: max_loss passed; net_of_cost passed; leg_count passed; liquidity passed; expected_shortfall passed; assignment passed; classifier_confidence passed; feature_staleness passed; concurrency passed","tournament":{"profile":"execution_bwb","mode":"paper_submission"}},{"ts":"2026-09-02T16:01:14.945645+00:00","seq":119,"cycle_id":"20260902T160031-88ca68b2","action":"order_submitted","rationale":"Fresh-quote reprice rung 1: submitting 6 lots at -0.57 after all gates passed.","structure":"call_bwb","net_price":-0.57,"contracts":6,"checks":[{"gate":"max_loss","scope":"candidate","passed":true,"detail":"worst case 147.09 per lot at 766 against a per-structure budget of 991.53","blocking":true,"observed":147.094572,"threshold":991.5338},{"gate":"net_of_cost","scope":"candidate","passed":true,"detail":"net edge 2.30 after 11.78 of cost","blocking":true,"observed":2.301505,"threshold":0.0},{"gate":"leg_count","scope":"candidate","passed":true,"detail":"3 legs to cross, costing 3.50 in half-spread","blocking":false,"observed":3.0},{"gate":"liquidity","scope":"candidate","passed":true,"detail":"widest leg is SPY260902C00766000 at 1.2% of mid against a 5.1% limit","blocking":true,"observed":0.011834,"threshold":0.0513},{"gate":"expected_shortfall","scope":"candidate","passed":true,"detail":"portfolio one-percent tail would be 882.57 against a cap of 2,974.60","blocking":true,"observed":882.567432,"threshold":2974.6014},{"gate":"assignment","scope":"candidate","passed":true,"detail":"1 in-the-money short leg(s) with 239 minutes to the close","blocking":true,"observed":1.0},{"gate":"classifier_confidence","scope":"candidate","passed":true,"detail":"probability of a profitable outcome is 0.600, 0.100 from the coin flip against a band of 0.030","blocking":true,"observed":0.6,"threshold":0.53},{"gate":"feature_staleness","scope":"candidate","passed":true,"detail":"oldest leg quote is 0.4s old against a 30s budget","blocking":true,"observed":0.430975,"threshold":30.0},{"gate":"concurrency","scope":"candidate","passed":true,"detail":"0 structures open against a cap of 1","blocking":true,"observed":0.0,"threshold":1.0}],"tournament":{"profile":"execution_bwb","mode":"paper_submission"},"client_order_id":"convex-20260902T160031-88ca68b2-call_bwb-r1","reprice_attempt":1,"waterfall":{"gross_edge":14.09,"half_spread":-3.5,"slippage":-4.0,"fees":-0.19,"exit_reserve":-4.09,"net_edge":2.3}},{"ts":"2026-09-02T16:01:22.843807+00:00","seq":120,"cycle_id":"20260902T160031-88ca68b2","action":"order_filled","rationale":"Alpaca verified reprice rung 1 as fully filled for 6 contracts.","structure":"call_bwb","legs":[{"symbol":"SPY260902C00750000","right":"call","strike":750.0,"ratio":1,"bid":15.99,"ask":16.01,"mid":16.0},{"symbol":"SPY260902C00757000","right":"call","strike":757.0,"ratio":-2,"bid":8.74,"ask":8.76,"mid":8.75},{"symbol":"SPY260902C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.84,"ask":0.85,"mid":0.845}],"net_price":-0.57,"cost_breakdown":{"half_spread":3.5,"slippage":4.0,"fees":0.1891,"exit_reserve":4.0946,"total":11.7837},"max_loss":882.57,"es_contribution":882.57,"contracts":6,"outcome":{"order_id":"1d22771e-1d5a-4d4d-8550-d8d72323c37a","status":"filled","submitted_at":"2026-09-02T16:01:15.006798097Z","client_order_id":"convex-20260902T160031-88ca68b2-call_bwb-r1","filled_qty":"6","filled_avg_price":"-0.97","cancel_requested":false},"tournament":{"profile":"execution_bwb","mode":"paper_submission"},"client_order_id":"convex-20260902T160031-88ca68b2-call_bwb-r1","reprice_attempt":1},{"ts":"2026-09-02T19:30:02.359176+00:00","seq":121,"cycle_id":"20260902T193001-febd87e2","action":"risk_halt","rationale":"Closing 3 of 3 open leg(s) on assignment_guard. SPY is at 765.44 with 30 minutes to the close.","reject_reason":"assignment_guard","spot":765.445,"pin_band":1.9136,"day_pnl_pct":-0.000853,"targets":["SPY260902C00757000","SPY260902C00750000","SPY260902C00766000"]},{"ts":"2026-09-02T19:30:02.461218+00:00","seq":122,"cycle_id":"20260902T193001-febd87e2","action":"position_close_submitted","rationale":"Submitting a closing limit at 8.53 for -12 SPY260902C00757000, crossing 0.10 from a mid of 8.43.","structure":"SPY260902C00757000","net_price":8.53,"contracts":-12,"client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:30:03.878837+00:00","seq":123,"cycle_id":"20260902T193001-febd87e2","action":"position_closed","rationale":"Alpaca verified close 995a9851-78bc-4744-8964-07e88eb91e04 fully filled at 8.45 for -12 SPY260902C00757000.","structure":"SPY260902C00757000","net_price":8.53,"contracts":-12,"outcome":{"order_id":"995a9851-78bc-4744-8964-07e88eb91e04","status":"filled","submitted_at":"2026-09-02T19:30:02.588511373Z","client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C","filled_qty":"12","filled_avg_price":"8.45","cancel_requested":false,"trigger":"assignment_guard","unrealised_pnl_at_close":516.0,"average_entry_price":8.89},"client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:30:03.919786+00:00","seq":124,"cycle_id":"20260902T193001-febd87e2","action":"position_close_submitted","rationale":"Submitting a closing limit at 15.67 for +6 SPY260902C00750000, crossing 0.02 from a mid of 15.69.","structure":"SPY260902C00750000","net_price":15.67,"contracts":6,"client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:30:04.040872+00:00","seq":125,"cycle_id":"20260902T193001-febd87e2","action":"order_rejected","rationale":"Could not close SPY260902C00750000: place_option_order was rejected: API rejected the order","structure":"SPY260902C00750000","contracts":6,"reject_reason":"close_rejected","client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:30:04.047337+00:00","seq":126,"cycle_id":"20260902T193001-febd87e2","action":"position_close_submitted","rationale":"Submitting a closing limit at 0.36 for +6 SPY260902C00766000, crossing 0.03 from a mid of 0.39.","structure":"SPY260902C00766000","net_price":0.36,"contracts":6,"client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:30:04.169485+00:00","seq":127,"cycle_id":"20260902T193001-febd87e2","action":"order_rejected","rationale":"Could not close SPY260902C00766000: place_option_order was rejected: API rejected the order","structure":"SPY260902C00766000","contracts":6,"reject_reason":"close_rejected","client_order_id":"convex-close-20260902T193001-febd87e2-SPY260902C"},{"ts":"2026-09-02T19:35:16.059924+00:00","seq":128,"cycle_id":"20260902T193515-f54acba0","action":"risk_halt","rationale":"Closing 2 of 2 open leg(s) on assignment_guard. SPY is at 765.29 with 25 minutes to the close.","reject_reason":"assignment_guard","spot":765.29,"pin_band":1.9132,"day_pnl_pct":-0.002006,"targets":["SPY260902C00750000","SPY260902C00766000"]},{"ts":"2026-09-02T19:35:16.064267+00:00","seq":129,"cycle_id":"20260902T193515-f54acba0","action":"position_close_submitted","rationale":"Submitting a closing limit at 15.39 for +6 SPY260902C00750000, crossing 0.02 from a mid of 15.41.","structure":"SPY260902C00750000","net_price":15.39,"contracts":6,"client_order_id":"convex-close-20260902T193515-f54acba0-SPY260902C"},{"ts":"2026-09-02T19:35:46.472121+00:00","seq":130,"cycle_id":"20260902T193515-f54acba0","action":"order_rejected","rationale":"Close bc3b6dcb-87eb-46e6-a180-5b49c35f0650 is canceled with 0/6 contracts filled; the position remains under guard.","structure":"SPY260902C00750000","net_price":15.39,"contracts":6,"reject_reason":"close_not_filled","outcome":{"order_id":"bc3b6dcb-87eb-46e6-a180-5b49c35f0650","status":"canceled","submitted_at":"2026-09-02T19:35:16.138339209Z","client_order_id":"convex-close-20260902T193515-f54acba0-SPY260902C","filled_qty":"0","filled_avg_price":null,"cancel_requested":true,"trigger":"assignment_guard","unrealised_pnl_at_close":-396.0,"average_entry_price":15.92},"client_order_id":"convex-close-20260902T193515-f54acba0-SPY260902C"},{"ts":"2026-09-02T19:35:46.476500+00:00","seq":131,"cycle_id":"20260902T193515-f54acba0","action":"position_close_submitted","rationale":"Submitting a closing limit at 0.36 for +6 SPY260902C00766000, crossing 0.01 from a mid of 0.36.","structure":"SPY260902C00766000","net_price":0.36,"contracts":6,"client_order_id":"convex-close-20260902T193515-f54acba0-SPY260902C"},{"ts":"2026-09-02T19:35:46.576960+00:00","seq":132,"cycle_id":"20260902T193515-f54acba0","action":"order_rejected","rationale":"Could not close SPY260902C00766000: place_option_order was rejected: API rejected the order","structure":"SPY260902C00766000","contracts":6,"reject_reason":"close_rejected","client_order_id":"convex-close-20260902T193515-f54acba0-SPY260902C"},{"ts":"2026-09-02T19:40:50.850807+00:00","seq":133,"cycle_id":"20260902T194050-7c6b9d44","action":"risk_halt","rationale":"Closing 2 of 2 open leg(s) on assignment_guard. SPY is at 765.15 with 19 minutes to the close.","reject_reason":"assignment_guard","spot":765.155,"pin_band":1.9129,"day_pnl_pct":-0.002974,"targets":["SPY260902C00750000","SPY260902C00766000"]},{"ts":"2026-09-02T19:40:50.854471+00:00","seq":134,"cycle_id":"20260902T194050-7c6b9d44","action":"position_close_submitted","rationale":"Submitting a closing limit at 15.41 for +6 SPY260902C00750000, crossing 0.02 from a mid of 15.43.","structure":"SPY260902C00750000","net_price":15.41,"contracts":6,"client_order_id":"convex-close-20260902T194050-7c6b9d44-SPY260902C"},{"ts":"2026-09-02T19:41:21.244137+00:00","seq":135,"cycle_id":"20260902T194050-7c6b9d44","action":"order_rejected","rationale":"Close 4e76fc1b-af4f-49ad-9d4d-1a1c125b4d9c is canceled with 0/6 contracts filled; the position remains under guard.","structure":"SPY260902C00750000","net_price":15.41,"contracts":6,"reject_reason":"close_not_filled","outcome":{"order_id":"4e76fc1b-af4f-49ad-9d4d-1a1c125b4d9c","status":"canceled","submitted_at":"2026-09-02T19:40:50.918811781Z","client_order_id":"convex-close-20260902T194050-7c6b9d44-SPY260902C","filled_qty":"0","filled_avg_price":null,"cancel_requested":true,"trigger":"assignment_guard","unrealised_pnl_at_close":-480.0,"average_entry_price":15.92},"client_order_id":"convex-close-20260902T194050-7c6b9d44-SPY260902C"},{"ts":"2026-09-02T19:41:21.248499+00:00","seq":136,"cycle_id":"20260902T194050-7c6b9d44","action":"position_close_submitted","rationale":"Submitting a closing limit at 0.30 for +6 SPY260902C00766000, crossing 0.01 from a mid of 0.30.","structure":"SPY260902C00766000","net_price":0.3,"contracts":6,"client_order_id":"convex-close-20260902T194050-7c6b9d44-SPY260902C"},{"ts":"2026-09-02T19:41:21.347752+00:00","seq":137,"cycle_id":"20260902T194050-7c6b9d44","action":"order_rejected","rationale":"Could not close SPY260902C00766000: place_option_order was rejected: API rejected the order","structure":"SPY260902C00766000","contracts":6,"reject_reason":"close_rejected","client_order_id":"convex-close-20260902T194050-7c6b9d44-SPY260902C"},{"ts":"2026-09-02T19:46:27.818949+00:00","seq":138,"cycle_id":"20260902T194627-bbe036de","action":"risk_halt","rationale":"Closing 1 of 1 open leg(s) on assignment_guard. SPY is at 765.33 with 14 minutes to the close.","reject_reason":"assignment_guard","spot":765.33,"pin_band":1.9133,"day_pnl_pct":-0.001504,"targets":["SPY260902C00750000"]},{"ts":"2026-09-02T19:46:27.823292+00:00","seq":139,"cycle_id":"20260902T194627-bbe036de","action":"position_close_submitted","rationale":"Submitting a closing limit at 15.50 for +2 SPY260902C00750000, crossing 0.02 from a mid of 15.52.","structure":"SPY260902C00750000","net_price":15.5,"contracts":2,"client_order_id":"convex-close-20260902T194627-bbe036de-SPY260902C"},{"ts":"2026-09-02T19:46:58.213492+00:00","seq":140,"cycle_id":"20260902T194627-bbe036de","action":"order_rejected","rationale":"Close d02073bb-beff-4e63-98d4-085467c575a4 is canceled with 0/2 contracts filled; the position remains under guard.","structure":"SPY260902C00750000","net_price":15.5,"contracts":2,"reject_reason":"close_not_filled","outcome":{"order_id":"d02073bb-beff-4e63-98d4-085467c575a4","status":"canceled","submitted_at":"2026-09-02T19:46:27.883827938Z","client_order_id":"convex-close-20260902T194627-bbe036de-SPY260902C","filled_qty":"0","filled_avg_price":null,"cancel_requested":true,"trigger":"assignment_guard","unrealised_pnl_at_close":-122.0,"average_entry_price":15.92},"client_order_id":"convex-close-20260902T194627-bbe036de-SPY260902C"},{"ts":"2026-09-02T19:52:04.320521+00:00","seq":141,"cycle_id":"20260902T195203-6224703b","action":"risk_halt","rationale":"Closing 1 of 1 open leg(s) on assignment_guard. SPY is at 765.09 with 8 minutes to the close.","reject_reason":"assignment_guard","spot":765.085,"pin_band":1.9127,"day_pnl_pct":-0.001928,"targets":["SPY260902C00750000"]},{"ts":"2026-09-02T19:52:04.324340+00:00","seq":142,"cycle_id":"20260902T195203-6224703b","action":"position_close_submitted","rationale":"Submitting a closing limit at 15.13 for +2 SPY260902C00750000, crossing 0.03 from a mid of 15.16.","structure":"SPY260902C00750000","net_price":15.13,"contracts":2,"client_order_id":"convex-close-20260902T195203-6224703b-SPY260902C"},{"ts":"2026-09-02T19:52:11.158425+00:00","seq":143,"cycle_id":"20260902T195203-6224703b","action":"position_closed","rationale":"Alpaca verified close 8c05075a-0b4b-4519-a123-bbcc7f31891e fully filled at 15.16 for +2 SPY260902C00750000.","structure":"SPY260902C00750000","net_price":15.13,"contracts":2,"outcome":{"order_id":"8c05075a-0b4b-4519-a123-bbcc7f31891e","status":"filled","submitted_at":"2026-09-02T19:52:04.404431129Z","client_order_id":"convex-close-20260902T195203-6224703b-SPY260902C","filled_qty":"2","filled_avg_price":"15.16","cancel_requested":false,"trigger":"assignment_guard","unrealised_pnl_at_close":-164.0,"average_entry_price":15.92},"client_order_id":"convex-close-20260902T195203-6224703b-SPY260902C"},{"ts":"2026-09-02T20:15:29.931787+00:00","seq":144,"cycle_id":"20260902T140058-c37ef008","action":"position_closed","rationale":"Expired with SPY settling at 765.20. 10 lot(s) entered at -7.16 were worth -840.00 dollars.","structure":"call_bwb","contracts":10,"outcome":{"realised_pnl":-840.0,"settlement_price":765.2,"basis":"payoff at the official close, held to expiry","session_date":"2026-09-02"}},{"ts":"2026-09-02T20:56:55.778520+00:00","seq":145,"cycle_id":"audit-20260902-canceled-entry","action":"correction","rationale":"Correction to receipt 144: its entry receipt 100 was canceled by Alpaca with 0/10 contracts filled in receipt 101. Receipt 144 is not a realised position and is excluded from dashboard P&L and strategy history.","structure":"call_bwb","invalidates":[144],"source_receipts":[100,101,144],"reason":"canceled_zero_fill_was_incorrectly_settled"},{"ts":"2026-09-02T22:09:09.617504+00:00","seq":146,"cycle_id":"20260902T160031-88ca68b2","action":"order_reconciled","rationale":"Broker reconciliation verified entry 1d22771e-1d5a-4d4d-8550-d8d72323c37a fully filled for 6 contracts. This corrects an earlier pending_new receipt without rewriting it.","structure":"call_bwb","legs":[{"symbol":"SPY260902C00750000","right":"call","strike":750.0,"ratio":1,"bid":15.99,"ask":16.01,"mid":16.0},{"symbol":"SPY260902C00757000","right":"call","strike":757.0,"ratio":-2,"bid":8.74,"ask":8.76,"mid":8.75},{"symbol":"SPY260902C00766000","right":"call","strike":766.0,"ratio":1,"bid":0.84,"ask":0.85,"mid":0.845}],"net_price":-0.97,"cost_breakdown":{"half_spread":3.5,"slippage":4.0,"fees":0.1891,"exit_reserve":4.0946,"total":11.7837},"contracts":6,"outcome":{"order_id":"1d22771e-1d5a-4d4d-8550-d8d72323c37a","status":"filled","submitted_at":"2026-09-02T16:01:15.006798097Z","client_order_id":"convex-20260902T160031-88ca68b2-call_bwb-r1","filled_qty":"6","filled_avg_price":"-0.97"},"entry_order_id":"1d22771e-1d5a-4d4d-8550-d8d72323c37a","reconciles_sequence":120,"broker_leg_fills":[{"order_id":"e8f13081-655e-492c-8ef1-23154ef558e3","symbol":"SPY260902C00750000","side":"buy","qty":6,"price":"15.92"},{"order_id":"3a5e8d07-c9d3-4bb1-ae4f-f75aa43295d2","symbol":"SPY260902C00757000","side":"sell","qty":12,"price":"8.89"},{"order_id":"a8e94adb-027e-45e2-b525-bd78fc7a570c","symbol":"SPY260902C00766000","side":"buy","qty":6,"price":"0.89"}]},{"ts":"2026-09-02T22:09:09.622431+00:00","seq":147,"cycle_id":"20260902T160031-88ca68b2","action":"position_reconciled","rationale":"Broker fills reconcile call_bwb to -180.00 after 0.00 in day-level broker fees allocated by executed contracts.","structure":"call_bwb","contracts":6,"outcome":{"realised_pnl":-180.0,"gross_realised_pnl":-180.0,"execution_cost":0.0,"broker_fees":0.0,"entry_cash":582.0,"exit_cash":-762.0,"entry_order_id":"1d22771e-1d5a-4d4d-8550-d8d72323c37a","exit_order_ids":["8c05075a-0b4b-4519-a123-bbcc7f31891e","3f19212a-d45d-4070-8528-50c3a6237aa9","995a9851-78bc-4744-8964-07e88eb91e04","845c832c-6496-4410-aca1-930b34e6fd4f"],"basis":"broker_fills_with_day_level_fee_allocation"},"entry_order_id":"1d22771e-1d5a-4d4d-8550-d8d72323c37a","fee_allocation":"proportional_to_verified_executed_contracts","broker_fee_total_for_day":0.0},{"ts":"2026-09-03T13:55:16.328345+00:00","seq":148,"cycle_id":"20260903T135516-2d260928","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-03 expiry with the underlying at 769.54: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":769.54,"expiry":"2026-09-03","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.16,"leg_relative_spread_median":0.0334,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0173,"families":[]}},{"ts":"2026-09-03T13:55:16.348678+00:00","seq":149,"cycle_id":"20260903T135516-b9587144","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0311 from 94 quoted legs and replaced the standing value of 0.0100. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.01,"after":0.031099,"legs":94,"market_open":true,"measurement":{"market_open":true,"spot":769.54,"expiry":"2026-09-03","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.16,"leg_relative_spread_median":0.0334,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0173,"families":[]}}},{"ts":"2026-09-03T14:01:01.474866+00:00","seq":150,"cycle_id":"20260903T140101-8f7c31d1","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-04T13:55:09.865202+00:00","seq":151,"cycle_id":"20260904T135509-f80d2cb6","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-04 expiry with the underlying at 772.32: the median leg costs 0.020 per share to cross.","outcome":{"market_open":true,"spot":772.32,"expiry":"2026-09-04","contracts":124,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.0306,"leg_relative_spread_p90":2.0,"two_sided_legs":101,"one_sided_legs":23,"leg_relative_spread_median_two_sided":0.022,"families":[]}},{"ts":"2026-09-04T13:55:09.877493+00:00","seq":152,"cycle_id":"20260904T135509-34200887","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0380 from 101 quoted legs and replaced the standing value of 0.0311. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0311,"after":0.038023,"legs":101,"market_open":true,"measurement":{"market_open":true,"spot":772.32,"expiry":"2026-09-04","contracts":124,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.0306,"leg_relative_spread_p90":2.0,"two_sided_legs":101,"one_sided_legs":23,"leg_relative_spread_median_two_sided":0.022,"families":[]}}},{"ts":"2026-09-04T14:01:01.040881+00:00","seq":153,"cycle_id":"20260904T140101-51bd5426","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-07T13:55:09.054747+00:00","seq":154,"cycle_id":"20260907T135509-3ce5d856","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-08 expiry with the underlying at 769.92: the median leg costs 0.025 per share to cross. Taken with the market closed, so these are the spreads of a book nobody is quoting and no threshold was written from them.","outcome":{"market_open":false,"spot":769.92,"expiry":"2026-09-08","contracts":122,"leg_half_spread_median":0.025,"leg_half_spread_p90":0.345,"leg_relative_spread_median":0.0468,"leg_relative_spread_p90":2.0,"two_sided_legs":108,"one_sided_legs":14,"leg_relative_spread_median_two_sided":0.0341,"families":[]}},{"ts":"2026-09-07T14:00:09.547138+00:00","seq":155,"cycle_id":"20260907T140009-1b16a52a","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: Alpaca reports the market closed; no entry may run.","reject_reason":"fresh_calibration"},{"ts":"2026-09-08T13:55:17.043704+00:00","seq":156,"cycle_id":"20260908T135517-fce7e598","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-08 expiry with the underlying at 767.35: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":767.35,"expiry":"2026-09-08","contracts":124,"leg_half_spread_median":0.0152,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0346,"leg_relative_spread_p90":2.0,"two_sided_legs":100,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0194,"families":[]}},{"ts":"2026-09-08T13:55:17.064265+00:00","seq":157,"cycle_id":"20260908T135517-b69f4a6a","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0375 from 100 quoted legs and replaced the standing value of 0.0380. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.038,"after":0.037534,"legs":100,"market_open":true,"measurement":{"market_open":true,"spot":767.35,"expiry":"2026-09-08","contracts":124,"leg_half_spread_median":0.0152,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0346,"leg_relative_spread_p90":2.0,"two_sided_legs":100,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0194,"families":[]}}},{"ts":"2026-09-08T14:01:00.930974+00:00","seq":158,"cycle_id":"20260908T140100-c460dcdc","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-09T13:55:12.129464+00:00","seq":159,"cycle_id":"20260909T135512-2dca0a01","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-09 expiry with the underlying at 763.79: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":763.79,"expiry":"2026-09-09","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0286,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0187,"families":[]}},{"ts":"2026-09-09T13:55:12.144903+00:00","seq":160,"cycle_id":"20260909T135512-45599a8f","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0311 from 98 quoted legs and replaced the standing value of 0.0375. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0375,"after":0.031128,"legs":98,"market_open":true,"measurement":{"market_open":true,"spot":763.79,"expiry":"2026-09-09","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0286,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0187,"families":[]}}},{"ts":"2026-09-09T14:01:01.309319+00:00","seq":161,"cycle_id":"20260909T140101-909c25f1","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-10T13:55:10.330615+00:00","seq":162,"cycle_id":"20260910T135510-0ff18897","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-10 expiry with the underlying at 757.27: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":757.27,"expiry":"2026-09-10","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.205,"leg_relative_spread_median":0.031,"leg_relative_spread_p90":2.0,"two_sided_legs":107,"one_sided_legs":15,"leg_relative_spread_median_two_sided":0.0231,"families":[]}},{"ts":"2026-09-10T13:55:10.343719+00:00","seq":163,"cycle_id":"20260910T135510-4bc2968b","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0445 from 107 quoted legs and replaced the standing value of 0.0311. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0311,"after":0.044517,"legs":107,"market_open":true,"measurement":{"market_open":true,"spot":757.27,"expiry":"2026-09-10","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.205,"leg_relative_spread_median":0.031,"leg_relative_spread_p90":2.0,"two_sided_legs":107,"one_sided_legs":15,"leg_relative_spread_median_two_sided":0.0231,"families":[]}}},{"ts":"2026-09-10T14:01:00.904292+00:00","seq":164,"cycle_id":"20260910T140100-9c874d2c","action":"stand_down","rationale":"Gap-continuation profile stood down: no completed 10:00 signal bar","structure":"debit_vertical","reject_reason":"gap_signal_unavailable","profile":"gap_continuation_vertical"},{"ts":"2026-09-11T13:55:12.266156+00:00","seq":165,"cycle_id":"20260911T135512-4dfc74aa","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-11 expiry with the underlying at 765.11: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":765.11,"expiry":"2026-09-11","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.1795,"leg_relative_spread_median":0.0263,"leg_relative_spread_p90":2.0,"two_sided_legs":105,"one_sided_legs":17,"leg_relative_spread_median_two_sided":0.0204,"families":[]}},{"ts":"2026-09-11T13:55:12.278698+00:00","seq":166,"cycle_id":"20260911T135512-90b796e9","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0351 from 105 quoted legs and replaced the standing value of 0.0445. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0445,"after":0.035088,"legs":105,"market_open":true,"measurement":{"market_open":true,"spot":765.11,"expiry":"2026-09-11","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.1795,"leg_relative_spread_median":0.0263,"leg_relative_spread_p90":2.0,"two_sided_legs":105,"one_sided_legs":17,"leg_relative_spread_median_two_sided":0.0204,"families":[]}}},{"ts":"2026-09-11T14:02:14.422668+00:00","seq":167,"cycle_id":"20260911T140213-acbebd90","action":"risk_halt","rationale":"No cycle today: past the submission cutoff at 2026-09-04 11:00 EDT, no new positions are opened.","checks":[{"gate":"kill_switch","scope":"session","passed":true,"detail":"no kill switch file","blocking":true},{"gate":"calibration","scope":"session","passed":true,"detail":"measured, except these which stand at deliberate over-estimates pending a fill to measure them from: costs.slippage_ticks_per_leg, session.pin_band_pct","blocking":true},{"gate":"market_calendar","scope":"session","passed":false,"detail":"past the submission cutoff at 2026-09-04 11:00 EDT, no new positions are opened","blocking":true},{"gate":"daily_loss_limit","scope":"session","passed":true,"detail":"day P&L is +0.00% against a 3% limit","blocking":true,"observed":-0.0,"threshold":0.03},{"gate":"buying_power","scope":"session","passed":true,"detail":"account reports 98,970.95 of buying power","blocking":true,"observed":98970.95},{"gate":"cost_budget","scope":"session","passed":true,"detail":"6.62 of execution cost paid against a budget of 1,979.42","blocking":true,"observed":6.62,"threshold":1979.419}],"reject_reason":"market_calendar"},{"ts":"2026-09-14T13:55:10.750832+00:00","seq":168,"cycle_id":"20260914T135510-00398746","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-14 expiry with the underlying at 760.15: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":760.15,"expiry":"2026-09-14","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.036,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0217,"families":[]}},{"ts":"2026-09-14T13:55:10.765663+00:00","seq":169,"cycle_id":"20260914T135510-99b934fb","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0465 from 103 quoted legs and replaced the standing value of 0.0351. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0351,"after":0.046512,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":760.15,"expiry":"2026-09-14","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.036,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0217,"families":[]}}},{"ts":"2026-09-14T14:01:01.105644+00:00","seq":170,"cycle_id":"20260914T140101-c51465c2","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-15T13:55:09.748813+00:00","seq":171,"cycle_id":"20260915T135509-e6ad438f","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-15 expiry with the underlying at 759.74: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":759.74,"expiry":"2026-09-15","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.14,"leg_relative_spread_median":0.0324,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0192,"families":[]}},{"ts":"2026-09-15T13:55:09.762576+00:00","seq":172,"cycle_id":"20260915T135509-eb5605f6","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0690 from 103 quoted legs and replaced the standing value of 0.0465. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0465,"after":0.068966,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":759.74,"expiry":"2026-09-15","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.14,"leg_relative_spread_median":0.0324,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0192,"families":[]}}},{"ts":"2026-09-15T14:01:01.033152+00:00","seq":173,"cycle_id":"20260915T140101-ae22a16d","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-16T13:55:10.709781+00:00","seq":174,"cycle_id":"20260916T135510-0c0cfc71","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-16 expiry with the underlying at 760.25: the median leg costs 0.005 per share to cross.","outcome":{"market_open":true,"spot":760.25,"expiry":"2026-09-16","contracts":122,"leg_half_spread_median":0.005,"leg_half_spread_p90":0.185,"leg_relative_spread_median":0.0235,"leg_relative_spread_p90":1.3333,"two_sided_legs":111,"one_sided_legs":11,"leg_relative_spread_median_two_sided":0.0194,"families":[]}},{"ts":"2026-09-16T13:55:10.720098+00:00","seq":175,"cycle_id":"20260916T135510-23a2d5f6","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0390 from 111 quoted legs and replaced the standing value of 0.0690. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.069,"after":0.03902,"legs":111,"market_open":true,"measurement":{"market_open":true,"spot":760.25,"expiry":"2026-09-16","contracts":122,"leg_half_spread_median":0.005,"leg_half_spread_p90":0.185,"leg_relative_spread_median":0.0235,"leg_relative_spread_p90":1.3333,"two_sided_legs":111,"one_sided_legs":11,"leg_relative_spread_median_two_sided":0.0194,"families":[]}}},{"ts":"2026-09-16T14:01:00.946692+00:00","seq":176,"cycle_id":"20260916T140100-7f139756","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-17T13:55:10.892813+00:00","seq":177,"cycle_id":"20260917T135510-ad3ef497","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-17 expiry with the underlying at 761.10: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":761.1,"expiry":"2026-09-17","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.195,"leg_relative_spread_median":0.0281,"leg_relative_spread_p90":2.0,"two_sided_legs":105,"one_sided_legs":17,"leg_relative_spread_median_two_sided":0.0217,"families":[]}},{"ts":"2026-09-17T13:55:10.911754+00:00","seq":178,"cycle_id":"20260917T135510-c6fd25e7","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0800 from 105 quoted legs and replaced the standing value of 0.0390. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.039,"after":0.08,"legs":105,"market_open":true,"measurement":{"market_open":true,"spot":761.1,"expiry":"2026-09-17","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.195,"leg_relative_spread_median":0.0281,"leg_relative_spread_p90":2.0,"two_sided_legs":105,"one_sided_legs":17,"leg_relative_spread_median_two_sided":0.0217,"families":[]}}},{"ts":"2026-09-17T14:01:00.917270+00:00","seq":179,"cycle_id":"20260917T140100-a478cb61","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-18T13:55:13.409390+00:00","seq":180,"cycle_id":"20260918T135513-783ac4ce","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-18 expiry with the underlying at 759.87: the median leg costs 0.022 per share to cross.","outcome":{"market_open":true,"spot":759.87,"expiry":"2026-09-18","contracts":122,"leg_half_spread_median":0.0225,"leg_half_spread_p90":0.395,"leg_relative_spread_median":0.0468,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0385,"families":[]}},{"ts":"2026-09-18T13:55:13.419613+00:00","seq":181,"cycle_id":"20260918T135513-09ace661","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0540 from 98 quoted legs and replaced the standing value of 0.0800. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.08,"after":0.054005,"legs":98,"market_open":true,"measurement":{"market_open":true,"spot":759.87,"expiry":"2026-09-18","contracts":122,"leg_half_spread_median":0.0225,"leg_half_spread_p90":0.395,"leg_relative_spread_median":0.0468,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":24,"leg_relative_spread_median_two_sided":0.0385,"families":[]}}},{"ts":"2026-09-18T14:01:01.711744+00:00","seq":182,"cycle_id":"20260918T140101-edd31d52","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-21T13:55:12.614957+00:00","seq":183,"cycle_id":"20260921T135512-ac5e9b59","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-21 expiry with the underlying at 767.38: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":767.38,"expiry":"2026-09-21","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.405,"leg_relative_spread_median":0.0568,"leg_relative_spread_p90":2.0,"two_sided_legs":95,"one_sided_legs":29,"leg_relative_spread_median_two_sided":0.0363,"families":[]}},{"ts":"2026-09-21T13:55:12.627469+00:00","seq":184,"cycle_id":"20260921T135512-8c00976d","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0537 from 95 quoted legs and replaced the standing value of 0.0540. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.054,"after":0.053712,"legs":95,"market_open":true,"measurement":{"market_open":true,"spot":767.38,"expiry":"2026-09-21","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.405,"leg_relative_spread_median":0.0568,"leg_relative_spread_p90":2.0,"two_sided_legs":95,"one_sided_legs":29,"leg_relative_spread_median_two_sided":0.0363,"families":[]}}},{"ts":"2026-09-21T14:01:25.090974+00:00","seq":185,"cycle_id":"20260921T140124-fba13e58","action":"risk_halt","rationale":"No cycle today: past the submission cutoff at 2026-09-04 11:00 EDT, no new positions are opened.","checks":[{"gate":"kill_switch","scope":"session","passed":true,"detail":"no kill switch file","blocking":true},{"gate":"calibration","scope":"session","passed":true,"detail":"measured, except these which stand at deliberate over-estimates pending a fill to measure them from: costs.slippage_ticks_per_leg, session.pin_band_pct","blocking":true},{"gate":"market_calendar","scope":"session","passed":false,"detail":"past the submission cutoff at 2026-09-04 11:00 EDT, no new positions are opened","blocking":true},{"gate":"daily_loss_limit","scope":"session","passed":true,"detail":"day P&L is +0.00% against a 3% limit","blocking":true,"observed":-0.0,"threshold":0.03},{"gate":"buying_power","scope":"session","passed":true,"detail":"account reports 98,970.95 of buying power","blocking":true,"observed":98970.95},{"gate":"cost_budget","scope":"session","passed":true,"detail":"6.62 of execution cost paid against a budget of 1,979.42","blocking":true,"observed":6.62,"threshold":1979.419}],"reject_reason":"market_calendar"},{"ts":"2026-09-22T13:55:12.048005+00:00","seq":186,"cycle_id":"20260922T135512-82f204f0","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-22 expiry with the underlying at 774.02: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":774.02,"expiry":"2026-09-22","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.12,"leg_relative_spread_median":0.0284,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0155,"families":[]}},{"ts":"2026-09-22T13:55:12.059192+00:00","seq":187,"cycle_id":"20260922T135512-fdff1962","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0408 from 103 quoted legs and replaced the standing value of 0.0537. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0537,"after":0.040816,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":774.02,"expiry":"2026-09-22","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.12,"leg_relative_spread_median":0.0284,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0155,"families":[]}}},{"ts":"2026-09-22T14:01:00.938849+00:00","seq":188,"cycle_id":"20260922T140100-e137ce20","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-23T13:55:12.953842+00:00","seq":189,"cycle_id":"20260923T135512-394b3d2f","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-23 expiry with the underlying at 770.75: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":770.75,"expiry":"2026-09-23","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.245,"leg_relative_spread_median":0.035,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0213,"families":[]}},{"ts":"2026-09-23T13:55:12.963608+00:00","seq":190,"cycle_id":"20260923T135512-87ec9a42","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0332 from 94 quoted legs and replaced the standing value of 0.0408. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0408,"after":0.033223,"legs":94,"market_open":true,"measurement":{"market_open":true,"spot":770.75,"expiry":"2026-09-23","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.245,"leg_relative_spread_median":0.035,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0213,"families":[]}}},{"ts":"2026-09-23T14:01:00.893930+00:00","seq":191,"cycle_id":"20260923T140100-b972fa77","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-24T13:55:12.385743+00:00","seq":192,"cycle_id":"20260924T135512-42665d11","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-24 expiry with the underlying at 764.86: the median leg costs 0.020 per share to cross.","outcome":{"market_open":true,"spot":764.86,"expiry":"2026-09-24","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.0315,"leg_relative_spread_p90":2.0,"two_sided_legs":104,"one_sided_legs":18,"leg_relative_spread_median_two_sided":0.0212,"families":[]}},{"ts":"2026-09-24T13:55:12.396351+00:00","seq":193,"cycle_id":"20260924T135512-36a9d30b","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0465 from 104 quoted legs and replaced the standing value of 0.0332. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0332,"after":0.046512,"legs":104,"market_open":true,"measurement":{"market_open":true,"spot":764.86,"expiry":"2026-09-24","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.0315,"leg_relative_spread_p90":2.0,"two_sided_legs":104,"one_sided_legs":18,"leg_relative_spread_median_two_sided":0.0212,"families":[]}}},{"ts":"2026-09-24T14:01:00.918994+00:00","seq":194,"cycle_id":"20260924T140100-7e97948d","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-25T13:55:13.378344+00:00","seq":195,"cycle_id":"20260925T135513-c0eae26a","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-25 expiry with the underlying at 770.16: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":770.16,"expiry":"2026-09-25","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.0284,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0197,"families":[]}},{"ts":"2026-09-25T13:55:13.391508+00:00","seq":196,"cycle_id":"20260925T135513-f68dd7c9","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0482 from 103 quoted legs and replaced the standing value of 0.0465. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0465,"after":0.048217,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":770.16,"expiry":"2026-09-25","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.0284,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0197,"families":[]}}},{"ts":"2026-09-25T14:01:01.035648+00:00","seq":197,"cycle_id":"20260925T140101-50460c86","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-28T13:55:10.480813+00:00","seq":198,"cycle_id":"20260928T135510-0392f7ce","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-28 expiry with the underlying at 768.08: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":768.08,"expiry":"2026-09-28","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.205,"leg_relative_spread_median":0.0335,"leg_relative_spread_p90":2.0,"two_sided_legs":101,"one_sided_legs":21,"leg_relative_spread_median_two_sided":0.0225,"families":[]}},{"ts":"2026-09-28T13:55:10.495519+00:00","seq":199,"cycle_id":"20260928T135510-a6983285","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0377 from 101 quoted legs and replaced the standing value of 0.0482. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0482,"after":0.037736,"legs":101,"market_open":true,"measurement":{"market_open":true,"spot":768.08,"expiry":"2026-09-28","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.205,"leg_relative_spread_median":0.0335,"leg_relative_spread_p90":2.0,"two_sided_legs":101,"one_sided_legs":21,"leg_relative_spread_median_two_sided":0.0225,"families":[]}}},{"ts":"2026-09-28T14:01:00.912082+00:00","seq":200,"cycle_id":"20260928T140100-db3e3821","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-09-29T13:55:11.773839+00:00","seq":201,"cycle_id":"20260929T135511-54b307cb","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-29 expiry with the underlying at 765.24: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":765.24,"expiry":"2026-09-29","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.13,"leg_relative_spread_median":0.0317,"leg_relative_spread_p90":2.0,"two_sided_legs":96,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0201,"families":[]}},{"ts":"2026-09-29T13:55:11.784871+00:00","seq":202,"cycle_id":"20260929T135511-b252fbb2","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0359 from 96 quoted legs and replaced the standing value of 0.0377. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0377,"after":0.035853,"legs":96,"market_open":true,"measurement":{"market_open":true,"spot":765.24,"expiry":"2026-09-29","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.13,"leg_relative_spread_median":0.0317,"leg_relative_spread_p90":2.0,"two_sided_legs":96,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0201,"families":[]}}},{"ts":"2026-09-29T14:01:01.136402+00:00","seq":203,"cycle_id":"20260929T140101-d530fcac","action":"stand_down","rationale":"Gap-continuation profile stood down: no completed 10:00 signal bar","structure":"debit_vertical","reject_reason":"gap_signal_unavailable","profile":"gap_continuation_vertical"},{"ts":"2026-09-30T13:55:13.795743+00:00","seq":204,"cycle_id":"20260930T135513-60f1435c","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-09-30 expiry with the underlying at 767.52: the median leg costs 0.010 per share to cross.","outcome":{"market_open":true,"spot":767.52,"expiry":"2026-09-30","contracts":124,"leg_half_spread_median":0.01,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.03,"leg_relative_spread_p90":2.0,"two_sided_legs":106,"one_sided_legs":18,"leg_relative_spread_median_two_sided":0.0183,"families":[]}},{"ts":"2026-09-30T13:55:13.806833+00:00","seq":205,"cycle_id":"20260930T135513-3a936632","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0383 from 106 quoted legs and replaced the standing value of 0.0359. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0359,"after":0.038293,"legs":106,"market_open":true,"measurement":{"market_open":true,"spot":767.52,"expiry":"2026-09-30","contracts":124,"leg_half_spread_median":0.01,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.03,"leg_relative_spread_p90":2.0,"two_sided_legs":106,"one_sided_legs":18,"leg_relative_spread_median_two_sided":0.0183,"families":[]}}},{"ts":"2026-09-30T14:01:01.072177+00:00","seq":206,"cycle_id":"20260930T140101-19ac4c70","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-01T13:55:11.851572+00:00","seq":207,"cycle_id":"20261001T135511-dca8b2f6","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-01 expiry with the underlying at 763.79: the median leg costs 0.010 per share to cross.","outcome":{"market_open":true,"spot":763.79,"expiry":"2026-10-01","contracts":122,"leg_half_spread_median":0.0103,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0283,"leg_relative_spread_p90":2.0,"two_sided_legs":102,"one_sided_legs":20,"leg_relative_spread_median_two_sided":0.0187,"families":[]}},{"ts":"2026-10-01T13:55:11.880413+00:00","seq":208,"cycle_id":"20261001T135511-380f0ee5","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0398 from 102 quoted legs and replaced the standing value of 0.0383. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0383,"after":0.039828,"legs":102,"market_open":true,"measurement":{"market_open":true,"spot":763.79,"expiry":"2026-10-01","contracts":122,"leg_half_spread_median":0.0103,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0283,"leg_relative_spread_p90":2.0,"two_sided_legs":102,"one_sided_legs":20,"leg_relative_spread_median_two_sided":0.0187,"families":[]}}},{"ts":"2026-10-01T14:01:01.005243+00:00","seq":209,"cycle_id":"20261001T140101-d1520d9b","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-02T14:00:40.464229+00:00","seq":210,"cycle_id":"20261002T140040-47d69ca7","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server failed to start: unhandled errors in a TaskGroup (1 sub-exception).","reject_reason":"fresh_calibration"},{"ts":"2026-10-05T14:01:41.738779+00:00","seq":211,"cycle_id":"20261005T140141-5d28538c","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-06T13:55:54.268266+00:00","seq":212,"cycle_id":"20261006T135554-42c6fabd","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-06 expiry with the underlying at 779.56: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":779.56,"expiry":"2026-10-06","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.0368,"leg_relative_spread_p90":2.0,"two_sided_legs":95,"one_sided_legs":29,"leg_relative_spread_median_two_sided":0.0204,"families":[]}},{"ts":"2026-10-06T13:55:54.351396+00:00","seq":213,"cycle_id":"20261006T135554-7e1f867c","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0363 from 95 quoted legs and replaced the standing value of 0.0398. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0398,"after":0.036262,"legs":95,"market_open":true,"measurement":{"market_open":true,"spot":779.56,"expiry":"2026-10-06","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.17,"leg_relative_spread_median":0.0368,"leg_relative_spread_p90":2.0,"two_sided_legs":95,"one_sided_legs":29,"leg_relative_spread_median_two_sided":0.0204,"families":[]}}},{"ts":"2026-10-06T14:03:35.673883+00:00","seq":214,"cycle_id":"20261006T140335-6b614373","action":"stand_down","rationale":"Gap-continuation profile stood down: gap profile only permits execution from 10:01 to 10:03 America/New_York","structure":"debit_vertical","reject_reason":"gap_signal_unavailable","profile":"gap_continuation_vertical"},{"ts":"2026-10-07T13:56:49.751104+00:00","seq":215,"cycle_id":"20261007T135649-9787b7d1","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-07 expiry with the underlying at 774.85: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":774.85,"expiry":"2026-10-07","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.215,"leg_relative_spread_median":0.0343,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0217,"families":[]}},{"ts":"2026-10-07T13:56:49.762503+00:00","seq":216,"cycle_id":"20261007T135649-e3e41cbe","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0356 from 98 quoted legs and replaced the standing value of 0.0363. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0363,"after":0.035587,"legs":98,"market_open":true,"measurement":{"market_open":true,"spot":774.85,"expiry":"2026-10-07","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.215,"leg_relative_spread_median":0.0343,"leg_relative_spread_p90":2.0,"two_sided_legs":98,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0217,"families":[]}}},{"ts":"2026-10-07T14:03:03.103976+00:00","seq":217,"cycle_id":"20261007T140303-5480fefd","action":"stand_down","rationale":"Gap-continuation profile stood down: gap profile only permits execution from 10:01 to 10:03 America/New_York","structure":"debit_vertical","reject_reason":"gap_signal_unavailable","profile":"gap_continuation_vertical"},{"ts":"2026-10-08T14:00:51.749699+00:00","seq":218,"cycle_id":"20261008T140051-be8c19b3","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: latest calibration receipt is not from today's exchange session.","reject_reason":"fresh_calibration"},{"ts":"2026-10-09T13:55:57.278123+00:00","seq":219,"cycle_id":"20261009T135557-c51f2e8f","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-09 expiry with the underlying at 775.86: the median leg costs 0.018 per share to cross.","outcome":{"market_open":true,"spot":775.86,"expiry":"2026-10-09","contracts":124,"leg_half_spread_median":0.0175,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.0337,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":21,"leg_relative_spread_median_two_sided":0.0218,"families":[]}},{"ts":"2026-10-09T13:55:57.941715+00:00","seq":220,"cycle_id":"20261009T135557-6bc9e5d1","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0541 from 103 quoted legs and replaced the standing value of 0.0356. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0356,"after":0.054054,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":775.86,"expiry":"2026-10-09","contracts":124,"leg_half_spread_median":0.0175,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.0337,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":21,"leg_relative_spread_median_two_sided":0.0218,"families":[]}}},{"ts":"2026-10-09T14:02:31.941902+00:00","seq":221,"cycle_id":"20261009T140231-fdf7fe46","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-12T13:56:26.888740+00:00","seq":222,"cycle_id":"20261012T135626-80376d98","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-12 expiry with the underlying at 778.75: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":778.75,"expiry":"2026-10-12","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.038,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0153,"families":[]}},{"ts":"2026-10-12T13:56:26.902257+00:00","seq":223,"cycle_id":"20261012T135626-4ff269a0","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0346 from 94 quoted legs and replaced the standing value of 0.0541. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0541,"after":0.034602,"legs":94,"market_open":true,"measurement":{"market_open":true,"spot":778.75,"expiry":"2026-10-12","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.155,"leg_relative_spread_median":0.038,"leg_relative_spread_p90":2.0,"two_sided_legs":94,"one_sided_legs":30,"leg_relative_spread_median_two_sided":0.0153,"families":[]}}},{"ts":"2026-10-13T13:57:29.102431+00:00","seq":224,"cycle_id":"20261013T135729-3756b6ed","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-13 expiry with the underlying at 777.87: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":777.87,"expiry":"2026-10-13","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0396,"leg_relative_spread_p90":2.0,"two_sided_legs":93,"one_sided_legs":31,"leg_relative_spread_median_two_sided":0.0193,"families":[]}},{"ts":"2026-10-13T13:57:29.259877+00:00","seq":225,"cycle_id":"20261013T135729-911e3fdd","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0364 from 93 quoted legs and replaced the standing value of 0.0346. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0346,"after":0.036364,"legs":93,"market_open":true,"measurement":{"market_open":true,"spot":777.87,"expiry":"2026-10-13","contracts":124,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.15,"leg_relative_spread_median":0.0396,"leg_relative_spread_p90":2.0,"two_sided_legs":93,"one_sided_legs":31,"leg_relative_spread_median_two_sided":0.0193,"families":[]}}},{"ts":"2026-10-13T14:01:19.334480+00:00","seq":226,"cycle_id":"20261013T140119-8de278ce","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-14T14:01:38.379789+00:00","seq":227,"cycle_id":"20261014T140138-33605142","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-15T14:01:48.058758+00:00","seq":228,"cycle_id":"20261015T140148-13b0293c","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-16T14:01:40.865818+00:00","seq":229,"cycle_id":"20261016T140140-e74dd7db","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-19T14:01:33.656748+00:00","seq":230,"cycle_id":"20261019T140133-027e0c02","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-20T13:56:17.851752+00:00","seq":231,"cycle_id":"20261020T135617-64ca4851","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-20 expiry with the underlying at 767.13: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":767.13,"expiry":"2026-10-20","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.23,"leg_relative_spread_median":0.0347,"leg_relative_spread_p90":2.0,"two_sided_legs":102,"one_sided_legs":20,"leg_relative_spread_median_two_sided":0.0256,"families":[]}},{"ts":"2026-10-20T13:56:17.866057+00:00","seq":232,"cycle_id":"20261020T135617-813f6928","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0426 from 102 quoted legs and replaced the standing value of 0.0364. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0364,"after":0.042573,"legs":102,"market_open":true,"measurement":{"market_open":true,"spot":767.13,"expiry":"2026-10-20","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.23,"leg_relative_spread_median":0.0347,"leg_relative_spread_p90":2.0,"two_sided_legs":102,"one_sided_legs":20,"leg_relative_spread_median_two_sided":0.0256,"families":[]}}},{"ts":"2026-10-20T14:02:21.801318+00:00","seq":233,"cycle_id":"20261020T140221-21179b34","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-21T14:02:05.290669+00:00","seq":234,"cycle_id":"20261021T140205-e9bb298f","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-22T14:06:57.806902+00:00","seq":235,"cycle_id":"20261022T140657-31edd8d5","action":"risk_halt","rationale":"No 10:00 entry: fresh calibration prerequisite failed: the Alpaca MCP server did not come up within 60s (/home/ubuntu/convex/.venv/bin/alpaca-mcp-server).","reject_reason":"fresh_calibration"},{"ts":"2026-10-23T13:55:14.251695+00:00","seq":236,"cycle_id":"20261023T135514-009ef7b2","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-23 expiry with the underlying at 760.23: the median leg costs 0.020 per share to cross.","outcome":{"market_open":true,"spot":760.23,"expiry":"2026-10-23","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.2,"leg_relative_spread_median":0.0262,"leg_relative_spread_p90":1.2,"two_sided_legs":113,"one_sided_legs":9,"leg_relative_spread_median_two_sided":0.0209,"families":[]}},{"ts":"2026-10-23T13:55:14.268749+00:00","seq":237,"cycle_id":"20261023T135514-2ad1256a","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0444 from 113 quoted legs and replaced the standing value of 0.0426. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0426,"after":0.044444,"legs":113,"market_open":true,"measurement":{"market_open":true,"spot":760.23,"expiry":"2026-10-23","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.2,"leg_relative_spread_median":0.0262,"leg_relative_spread_p90":1.2,"two_sided_legs":113,"one_sided_legs":9,"leg_relative_spread_median_two_sided":0.0209,"families":[]}}},{"ts":"2026-10-23T14:01:01.553687+00:00","seq":238,"cycle_id":"20261023T140101-54eb4709","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-26T13:55:11.249153+00:00","seq":239,"cycle_id":"20261026T135511-f518d579","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-26 expiry with the underlying at 763.86: the median leg costs 0.020 per share to cross.","outcome":{"market_open":true,"spot":763.86,"expiry":"2026-10-26","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.0358,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0216,"families":[]}},{"ts":"2026-10-26T13:55:11.263031+00:00","seq":240,"cycle_id":"20261026T135511-3f8e4303","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0486 from 103 quoted legs and replaced the standing value of 0.0444. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0444,"after":0.048612,"legs":103,"market_open":true,"measurement":{"market_open":true,"spot":763.86,"expiry":"2026-10-26","contracts":122,"leg_half_spread_median":0.02,"leg_half_spread_p90":0.175,"leg_relative_spread_median":0.0358,"leg_relative_spread_p90":2.0,"two_sided_legs":103,"one_sided_legs":19,"leg_relative_spread_median_two_sided":0.0216,"families":[]}}},{"ts":"2026-10-26T14:01:01.061747+00:00","seq":241,"cycle_id":"20261026T140101-e2e622a5","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-27T13:55:11.293088+00:00","seq":242,"cycle_id":"20261027T135511-d68eb6ee","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-27 expiry with the underlying at 765.99: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":765.99,"expiry":"2026-10-27","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.125,"leg_relative_spread_median":0.0303,"leg_relative_spread_p90":2.0,"two_sided_legs":96,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0152,"families":[]}},{"ts":"2026-10-27T13:55:11.301997+00:00","seq":243,"cycle_id":"20261027T135511-d321a956","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0361 from 96 quoted legs and replaced the standing value of 0.0486. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0486,"after":0.036095,"legs":96,"market_open":true,"measurement":{"market_open":true,"spot":765.99,"expiry":"2026-10-27","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.125,"leg_relative_spread_median":0.0303,"leg_relative_spread_p90":2.0,"two_sided_legs":96,"one_sided_legs":26,"leg_relative_spread_median_two_sided":0.0152,"families":[]}}},{"ts":"2026-10-27T14:01:00.920001+00:00","seq":244,"cycle_id":"20261027T140100-12525236","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"},{"ts":"2026-10-28T13:55:11.586573+00:00","seq":245,"cycle_id":"20261028T135511-e0038f7a","action":"calibration","rationale":"Measured SPY 0DTE execution cost on the 2026-10-28 expiry with the underlying at 770.12: the median leg costs 0.015 per share to cross.","outcome":{"market_open":true,"spot":770.12,"expiry":"2026-10-28","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.13,"leg_relative_spread_median":0.0226,"leg_relative_spread_p90":2.0,"two_sided_legs":108,"one_sided_legs":14,"leg_relative_spread_median_two_sided":0.0155,"families":[]}},{"ts":"2026-10-28T13:55:11.596245+00:00","seq":246,"cycle_id":"20261028T135511-0ead46a2","action":"calibration","rationale":"Measured liquidity.max_relative_spread at 0.0339 from 108 quoted legs and replaced the standing value of 0.0361. The key is cleared from provenance.hypothesis, so the calibration check no longer stands the session down for it.","outcome":{"key":"liquidity.max_relative_spread","before":0.0361,"after":0.033898,"legs":108,"market_open":true,"measurement":{"market_open":true,"spot":770.12,"expiry":"2026-10-28","contracts":122,"leg_half_spread_median":0.015,"leg_half_spread_p90":0.13,"leg_relative_spread_median":0.0226,"leg_relative_spread_p90":2.0,"two_sided_legs":108,"one_sided_legs":14,"leg_relative_spread_median_two_sided":0.0155,"families":[]}}},{"ts":"2026-10-28T14:01:01.376576+00:00","seq":247,"cycle_id":"20261028T140101-1d3bf08e","action":"stand_down","rationale":"Gap-continuation profile stood down: no qualifying overnight gap remained on the same side of VWAP at 10:00 ET.","structure":"debit_vertical","reject_reason":"gap_signal_absent","profile":"gap_continuation_vertical"}]