← all work

Cyber Risk Quantification Platform

An actuarial simulator that turns raw threat data into a number a finance team can act on: expected loss, tail risk, and a price.

PythonMonte CarloPoisson-GammaFastAPI
FREQUENCY × SEVERITY → SIMULATE → PRICE threat data loss events frequency Poisson λ severity Gamma Monte Carlo × N trials loss distribution risk score & pricing
Frequency and severity are modelled separately, then thousands of simulated years produce the full loss distribution, not a single point estimate.

The problem

Cyber risk usually gets described, not quantified. A red, amber, green rating tells a board nothing about how much a bad year actually costs, and a single average loss hides the tail, which is the part that matters. Insurers and risk teams need a distribution, not a traffic light.

What I built

An actuarial Monte Carlo simulator that models the two things separately: how often loss events happen and how bad each one is. It uses a Poisson-Gamma compound distribution, Poisson for event frequency and Gamma for severity, and runs thousands of simulated years to build the full loss distribution.

  • Expected loss and tail risk fall out of the distribution, so you can talk about the average year and the bad year in the same language.
  • Those figures translate directly into financially interpretable risk scores and insurance pricing recommendations.
  • A full-stack dashboard makes the inputs and the resulting distribution explorable rather than buried in a notebook.

Why it matters

Modelling frequency and severity separately is what lets the model price the tail honestly. It moves cyber risk from a qualitative colour to a number a finance team can underwrite against.

← all work next: Email Impersonation Detection →