Module Algostream_risk_management.Risk_snapshot

Immutable per-update snapshot published by Monitor. Allocated fresh on each update; cross-Domain reads via Atomic.get on Monitor.snapshot_atomic.

type t = {
  1. ts_ns : int64;
  2. portfolio_value : float;
  3. var_pct : float;
  4. var_dollars : float;
  5. expected_shortfall_pct : float;
  6. expected_shortfall_dollars : float;
  7. current_drawdown : float;
  8. max_drawdown : float;
  9. peak_equity : float;
  10. time_under_water_ns : int64;
  11. gross_exposure : float;
  12. net_exposure : float;
  13. leverage_ratio : float;
  14. largest_position_pct : float;
  15. n_positions : int;
  16. correlation_status : Correlation_breakdown.status;
  17. circuit_breaker_state : Circuit_breaker.state;
  18. breaches : Risk_limits.breach list;
  19. ready : bool;
}
val empty : t
val to_string : t -> string