The Risk Block is used to impose multiple pre-trade risk checks that are specific to the algorithm which contains the Risk Block. If any of the following risk checks are violated, the Risk Block will reject the order submission and pause the algorithm.
- Maximum Order Quantity: Right before an order submission, the Risk Block will ensure that the order quantity of the order about to be submitted is less than the .
- Maximum Position: Right before an order submission, the Risk Block will ensure that the will not be violated as a result of the order submission (the Risk Block assumes the case where the order will be instantly filled upon submission).
- Maximum Loss: Risk Block is aware of the algorithm's P/L at all times. As soon as the algorithm's loss exceeds , the Risk Block will pause the algorithm.
- The outputs the real-time P/L of the respective strategy instance.
- User-Defined Condition: Right before an order submission, the Risk Block will ensure that the user-defined condition, , is false.
Note: Pre-trade risk checks performed by the Risk Block do not add any measurable latency - such simple numeric checks happen in nanoseconds.