2270-execution-engine
| # | Message Name | Description |
|---|---|---|
| 2358 | AtsDegrossAuctionSchedule | Published by the degrossing execution engine at start of day; each row's state updates as the sequence runs. Clients consume this — the sequence is never hard-coded client-side. Sequence: Trial 9:55 CST, then Real auctions 10:00 / 10:05 / 10:10 / 10:15 CST, 3 expiries each. |
| 2357 | AtsDegrossAvailability | Published by the degrossing execution engine once a minute from open + 5 minutes until the final auction of the day, smeared to a fixed publish rate. Every candidate ticker is published with a status: Available, Suspended, DayClosed, or the reason it is not offered — so a client can always see why a position is not degrossable. Strike is a TICKER-level fact shared by all three expiries, chosen from flex instruments that actually exist (nearest the underlier), and frozen at the ticker's first publish of the day. The per-expiry block (3 entries) carries the SR-controlled economics; block index = expiry slot = SpdrParentOrder groupingCode (1/2/3). Auction sequence state lives on AtsDegrossAuctionSchedule (2358). Publish-only: no archive directives and .Archive() is never called — published messages are captured automatically. A ticker is only published when it has a current-day stock book quote or print; names with no today market are not advertised at all. Retired field numbers (NEVER reuse): 112 (per-slot strike; strike is row-level at 103), 101 (row-level srRate; the rate is per expiry at 120). Replaces AtsDegrossRevConSpreads (2355). |
| 2359 | AtsDegrossFlexRequest | Published by the degrossing execution engine after the close, one record per instrument we want to exist for the next trading day and do not already see as a FlexOptionDefinition (4435). Keyed by the OptionKey we want, so requested-versus-existing is a straight key comparison. The request set is "desired strike x 3 auction expiries x call and put, minus what already exists", which covers both triggers without special cases: a strike that drifted past the selection band yields six requests at a new strike, and a calendar roll yields two at the existing strike for the newly appeared expiry. |
| 2360 | AtsDegrossMarketSummary | Published by the degrossing execution engine at each auction close. This is the PUBLIC post-auction disclosure — venue totals only, never per-client figures (per-order results are AtsDegrossRevConResult (2356)). The WTS merges these onto LiveGridDegrossMarket (6973) rows. Prices are PACKAGE space, like 2356/4030 — the book matches there; consumers rebase +strike for trader R/C display. Publish-only: no archive directives and .Archive() is never called. |
| 2356 | AtsDegrossRevConResult | Published by the degrossing execution engine: Received on order arrival, then per-auction results after each event in the day's sequence (Trial 9:55 CST, Real 10:00/10:05/10:10/10:15; see AtsDegrossAuctionSchedule (2358)), Final after the order's last event. The WTS merges per-(ticker, expiry) results into LiveGridBasketDegrossDetail (6912) rows; per-auction rollups drive the Basket Manager summary boxes. |
| 2355 | AtsDegrossRevConSpreads | Deleted once the EE publisher and WTS join cut over; do not add consumers. The number is reusable a few weeks after deletion. |
| 2270 | ExternAggGroupReport | |
| 2325 | SpdrRiskExecution | SpdrRiskExecution records are published every time a SpdrParentExecution record is published |
| 2330 | SpdrSweepDetail | SpdrSweepDetail records are published by execution engines when sweep trigger groups are processed |
| 2335 | SpdrSweepExchDetail | SpdrSweepExchDetail records are published by execution engines when sweep trigger groups are processed |