Skip to content

Implement engine-side market protections#528

Merged
pedrosakuma merged 2 commits into
mainfrom
feat/500-engine-market-protections
Jun 20, 2026
Merged

Implement engine-side market protections#528
pedrosakuma merged 2 commits into
mainfrom
feat/500-engine-market-protections

Conversation

@pedrosakuma

Copy link
Copy Markdown
Owner

Part of #500 (GAP-28).

This PR implements the engine-side core market protections:

  • static per-instrument price-band enforcement for Limit submit/replace
  • auction-phase TOP collar enforcement for Reserved/FinalClosingCall
  • per-instrument max order quantity and max order value limits

Deferred: EntryPoint protectionPrice semantics for market orders.

No Commands.cs enum additions and no snapshot codec bump.

@pedrosakuma pedrosakuma marked this pull request as ready for review June 20, 2026 20:12
@pedrosakuma pedrosakuma force-pushed the feat/500-engine-market-protections branch from f1200f1 to c84e20f Compare June 20, 2026 21:03
@pedrosakuma pedrosakuma changed the base branch from main to fix/516-gtd-replace-stale-expire June 20, 2026 21:03
@pedrosakuma pedrosakuma deleted the branch main June 20, 2026 21:09
@pedrosakuma pedrosakuma reopened this Jun 20, 2026
@pedrosakuma pedrosakuma changed the base branch from fix/516-gtd-replace-stale-expire to main June 20, 2026 21:09
pedrosakuma and others added 2 commits June 20, 2026 21:10
Part of #500. Enforce static instrument price bands, auction TOP collars, per-instrument max order quantity, and per-instrument max order value in the matching engine without adding snapshot state or new command enums.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add auction-collar coverage for FinalClosingCall and broaden the max-order-value acceptance matrix, including boundary, absent-limit, replace, and overflow-sized inputs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@pedrosakuma pedrosakuma force-pushed the feat/500-engine-market-protections branch from c84e20f to b76cd74 Compare June 20, 2026 21:10
@pedrosakuma pedrosakuma merged commit 90ea2ad into main Jun 20, 2026
6 checks passed
@pedrosakuma pedrosakuma deleted the feat/500-engine-market-protections branch June 20, 2026 21:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant