Pre-Trade Risk System
Nanoconda provides a Pre-Trade Risk System that enforces risk controls on all orders prior to submission to the exchange.
Orders that fail any configured risk check are rejected before transmission.
Risk parameters may be adjusted in real time by authorized parties, including the FCM.
System Scope
| Function | Description |
|---|---|
| Pre-trade enforcement | All new orders are validated prior to exchange submission |
| Order state management | Maintains real-time order state per session |
| Order actions | Supports order submission, cancellation, and modification |
| Trading control (Kill Switch) | Allows trading to be enabled or disabled per session or algorithm |
Pre-Trade Risk Checks
| Risk Check | Description | Notes |
|---|---|---|
| Asset net exposure | Prevents orders that would exceed configured net exposure limits | Config: maxpositions |
| Clip size | Restricts maximum quantity per order | Config: clipsize |
| Fat finger | Blocks orders exceeding safety thresholds | |
| Price bands | Ensures order prices reasonability | Exchange Price Bands |
| Session status | Blocks orders if session or algo trading is disabled or disconnected | GUI or API enabled |
| Throttle limits | Limits order actions submission rate | Config: throttle-limit, throttle-window |
| Maximum Daily Lots | Limits Total number of daily lots traded | Config: maxdailylots |
| Capital usage | Prevents orders that would cause total capital usage to exceed the account balance | All instrument capital usage ≤ account balance |
Capital Usage
Capital usage is calculated using the configured capitalreq value for each asset and applied to its net exposure (current net position plus working orders).
Before accepting a new order, Nanoconda calculates the projected total capital usage across all assets, including the new order. If the projected capital usage exceeds the configured account balance, the order is rejected by the pre-trade risk engine with code RISK_CAPITAL_USE_EXCEEDED
Order Rejections
| Condition | Behavior |
|---|---|
| Risk check failure | Order is rejected |
| Exchange transmission | Order is not sent |
| Feedback | Rejection reason reported to session |
Real-Time Risk Adjustments
| Capability | Description |
|---|---|
| Parameter updates | Risk parameters may be updated in real time |
| Effect | Updates apply immediately to new orders |
| Authorization | Available to role: clearer |
Operation
Real-time monitoring and control of the Pre-Trade Risk System is performed through the GUI or C++ Remote API
See GUI Clearing Controls for details.