← Back to Blog
Strategy InsightsMarch 10, 2026

How Our AI Engine Manages Risk in Real Time

Risk management is not a feature we bolted on after building the trading engine — it is the foundation everything else is built upon. At AccrueLabs, every tick of the market making algorithm passes through multiple layers of safety checks before an order reaches the exchange. This article walks through the key components of our real-time risk management system.

The first layer is kill switch monitoring. Our engine tracks several critical metrics every second: total daily loss, maximum inventory deviation, exchange connectivity latency, and abnormal fill rates. If any of these metrics breach their configured threshold, trading is immediately halted and all open orders are cancelled. This hard stop prevents cascading losses during flash crashes, exchange outages, or any scenario where continuing to trade would be imprudent. The system can be re-enabled manually after an operator review.

The second layer is adaptive inventory management. The engine continuously calculates the optimal reservation price — the theoretical fair value adjusted for current inventory exposure — using the Avellaneda-Stoikov model. When inventory drifts from the neutral target, quotes are automatically skewed to incentivize the market to bring it back into balance. This happens seamlessly on every tick, without human intervention, and prevents the dangerous accumulation of one-sided exposure.

The third layer is volatility-responsive spread control. Our NATR monitoring system classifies the current market regime in real time. When volatility is low, spreads tighten to remain competitive and capture more fills. When volatility spikes, spreads widen automatically to compensate for the increased probability of adverse price movement between order placement and fill. Combined with dynamic interval adjustment — trading faster in active markets and slower in quiet ones — this creates a system that continuously adapts its risk posture to current conditions rather than relying on static parameters.