Contract Delta: 008 Pricing Awareness and Market Data
Parent state: 007-observability-lgtm-compose
REST/OpenAPI Changesβ
trade-servicerequest/response schema extendsTradeOrderwithprice.position-servicepayloads includeaverageCostBasisin positions andpricein trades.- New local service endpoint:
price-publisher:GET /prices,GET /prices/{ticker},GET /health.GET /pricesis the canonical multi-symbol bootstrap path (all symbols by default, optionally filtered by request parameters when provided by implementation).price-publisher /healthincludes active publish cadence config (minMs,maxMs,ratio).
Event Contract Changesβ
- Existing account-scoped topics remain:
/accounts/<accountId>/trades/accounts/<accountId>/positions
- New market data topic family:
pricing.<TICKER>
Expected pricing payload:
{
"ticker": "IBM",
"price": 187.245,
"openPrice": 186.000,
"closePrice": 187.400,
"asOf": "2026-03-31T11:00:00.000Z",
"source": "snapshot"
}
asOf is a server-assigned timestamp and is required for both snapshot REST responses and stream (pricing.<TICKER>) events so clients can safely pick the freshest update.
Reference Data Symbol Contract Notesβ
- State
008normalizes legacyFBsymbol toMETAfor returned stock identifiers. - Runtime supported symbol set is expected to match between
reference-dataandprice-publisher.