Three levels, three questions
Account-level rules answer a question about one investor's exposure. Strategy-level rules answer a question about one strategy across everyone copying it. Tenant-level rules answer a question about the venue as a whole.
The levels are evaluated independently. A rule at one level does not need to know about the others, which keeps each rule readable and each decision attributable to exactly one place.
Rule types
Rules fall into a small number of types. The type decides when the rule runs and what it can do — a pre-trade limit refuses an order, while a drawdown threshold can pause a subscription.
- Exposure limits — maximum size or notional per instrument, strategy or account
- Drawdown thresholds — equity or peak-relative limits that pause copying
- Instrument and session restrictions — what may be traded, and when
- Kill switches — an operator action that stops new activity at a chosen level
Evaluation, before and after
Pre-trade rules evaluate a prospective order and can refuse it. Post-trade rules evaluate a position that already exists and can trigger an action such as pausing a subscription or flattening exposure under policy.
Both run inside the same engine, so a rule does not need to care whether it is looking forwards or backwards — only at what state and what decision.
Reading the evaluation log
Every evaluation is recorded with the rule that ran, the state it saw and the outcome it produced. A refused order is not an error to be silenced; it is the record of the system working as configured.
The log is what makes risk configurable rather than folkloric: an operator can point at the exact rule that stopped something, and change it deliberately if it was wrong.