← All projects

Quant Risk · MLOps

EVT Pre-Trade Limits Recalibration

Static pre-trade limits fired on perfectly normal trades — hundreds of false alerts a day — while still missing genuinely extreme orders.

My role
Designed the model and the backtesting framework; built the pipeline and dashboards; handed over to the Market Access team.
When
Feb – Aug 2025
pre-trade limits enginein production
STATIC LIMIT · noisyEVT LIMITu — tail fitted with GPD →trade size

94%

precision @ 1.3% FPR

−87%

false alerts vs static limits

€1.8M

risk-weighted assets released

80%

faster processing

Approach

Peaks-over-Threshold model (Generalized Pareto on the tail) fitted on 12M+ trades to set dynamic size/price limits per instrument, backtested against the static rules and shipped with tests, monitoring, and CI/CD.

Results

94% precision at a 1.3% false-positive rate on extreme-event detection across the pre-trade limit perimeter. False alerts fell by 87% versus the static limits, better-calibrated thresholds enabled a EUR 1.8M RWA release, and processing time dropped 80%. Deployed to production with a full MLOps stack.

Architecture

EVT Pre-Trade Limits Recalibration — architecture diagram

Technical highlights

  • 01Peaks-over-Threshold (POT/GPD) modeling of tail behaviour per instrument
  • 02Backtesting against the static rules, with Kupiec-style exception tests
  • 03MLOps packaging: unit tests, Docker, GitHub Actions, monitoring hooks
  • 04Validation framed around what the desk cares about: false positives, risk sensitivity, usability

Stack

PythonEVT/POTGPDSQLStreamlitDockerGitHub Actions

Building something similar?

hichamalaoui975@gmail.com