Model drift, champion/challenger testing, and performance degradation in live pricing models. Coverage goes from PSI and A/E ratios to sequential testing, covariate shift detection, and building audit trails that satisfy the SMF holder.
Applying fairness constraints, calibration corrections, and drift monitoring as sequential post-hoc steps is how most UK pricing teams work. It is also architecturally broken. E...
SS1/23 is in active enforcement for banks. Its monitoring principles — operating boundaries, outcome analysis, documented escalation — are the benchmark the whole market is bein...
UK motor NCR is at 111% (EY Q4 2024). The market is at or near technical floor. Here is how to identify underpriced segments using loss cost trending, A/E monitoring, and Bühlma...
SS1/23 applies to banks, not insurers — but its monitoring principles are the benchmark auditors use regardless. This post maps the five SS1/23 validation principles to what a p...
The FCA is consulting in Q2 2026 on exactly this question. Every layer in a DA chain — insurer, MGA, broker, PCW — is expected to evidence outcomes, not just process. Here is wh...
A complete Python tutorial for Whittaker-Henderson smoothing of insurance rating tables. Replace your Excel moving average or SAS graduation with automatic REML lambda selection...
How to set up insurance model monitoring in Python from scratch: PSI, Gini drift, and A/E with the insurance-monitoring library. Know when to redeploy, recalibrate, or refit.
glum fits the Tweedie GLM in seconds. Here is how our libraries handle everything around it: distribution-free prediction intervals, PSI/CSI drift monitoring, Consumer Duty prox...
A single freMTPL2 motor pipeline running through insurance-gam, insurance-conformal, insurance-monitoring, insurance-fairness, and insurance-governance. No other open-source eco...
Nayak's Calibrated Credit Intelligence (arXiv:2603.06733) is a credit paper, but UK insurers should read it. It addresses uncertainty quantification, fairness constraints, and t...
You deploy a conformal pricing model and check its coverage every month. After twelve months, you see a coverage failure. Is the model broken, or did you just run twelve tests? ...
How to run actuarial model validation in Python for UK insurance pricing models. Covers Solvency II Article 120 and Consumer Duty requirements, the five-test validation suite, a...
Frequency model monitoring has a growing toolkit. Reserve models — which target specific quantiles of the loss distribution, not the mean — have almost nothing. ScoreDecompositi...
A stable Gini coefficient is not evidence that a model is performing well. It is evidence that the model is still ranking risks in the same order. Score decomposition separates ...
The Pool Adjacent Violators Algorithm solves an O(N) monotonicity problem with no parametric assumptions. It appears in three distinct insurance pricing contexts: as the link fu...
PSI > 0.2 and A/E > 1.15 are industry folklore, not statistics. Conformal SPC replaces them with calibrated p-values that have a finite-sample false alarm rate guarantee, no nor...
Most pricing teams eyeball calibration plots or track PSI. Neither tells you whether observed miscalibration is statistically significant. ScoreDecompositionTest in insurance-mo...
insurance-monitoring v1.2.0 adds ScoreDecompositionTest: HAC-robust p-values on the miscalibration and discrimination components of any scoring rule. When your pricing team argu...
When a challenger GBM outperforms the production GLM on deviance, the improvement is often entirely in miscalibration — meaning the GLM could be recalibrated to match without a ...
insurance-monitoring v1.0.0 adds ModelMonitor with check_gmcb and check_lmcb — separate tests for global and local calibration drift, wired into a three-way REDEPLOY/RECALIBRATE...
When you acquire a portfolio or enter a scheme, your pricing model was fitted on a different risk population. Weill and Wang (2026) give a kernel GLM framework for correcting th...
insurance-monitoring v1.1.0 adds BAWSMonitor — bootstrap adaptive window selection for rolling VaR and ES estimates, replacing arbitrary lookback choices with a principled, audi...
Every time you re-run conformal risk control calibration on a growing book, you are implicitly doing multiple testing. Hultberg et al. (2026) formalise the fix.
An MGA launching on a UK PCW needs prices on day one with zero claims history. Here is the full architecture: market ABC as the prior, Bühlmann-Straub blending as claims arrive,...
The FCA published its first annual insurance regulatory priorities document in February 2026. Here is everything a pricing actuary needs to do in response — ten action items wit...
Burger (arXiv:2512.23602, Dec 2025) applies conformal prediction to insurance model monitoring, replacing PSI > 0.2 and A/E > 1.15 with thresholds that are calibrated from data ...
PSI thresholds of 0.1 and 0.2 are industry convention, not statistical calibration. Burger (arXiv:2512.23602, Dec 2025) replaces them with conformal p-values, giving a distribut...
Shin, Lee and Kang (arXiv:2512.03738, Dec 2025) provide the first finite-sample coverage guarantee for time-to-event prediction under covariate shift. Here is what it means for ...
When you launch a new product with no claims history, you borrow from a related portfolio. Transfer learning formalises this. But the most-cited deep learning method for domain ...
ACI satisfies its marginal coverage guarantee while producing months of invalid intervals after a claims inflation shock. A new paper proves the minimax-optimal algorithm flushe...
Laghuvarapu, Deb and Sun (arXiv:2603.26415, March 2026) replace per-test-point density ratio estimation with bounded QP weights on the calibration set. Here is what that buys yo...
Brauer, Menzel & Wüthrich (arXiv:2510.04556) give us two things we have been missing: a formal hypothesis test for Gini drift and a Murphy score decomposition that tells you whe...
Hinder et al. (arXiv:2602.19790, ESANN 2026) introduce bootstrap conformal p-values for identifying which individual observations are affected by drift. We explain why this is a...
Your A/E ratio is drifting. Is it the portfolio mix, or has the underlying loss mechanism changed? The answer determines whether you update the intercept or commission a refit. ...
In January 2026 the PRA named AI as an insurance supervisory theme for the first time. The FCA published a bias research note in December 2024. The FRC updated TAS 100 to make b...
The standard rate adequacy workflow — earned premium at current rate level, ultimate losses, trend to future period, expense load, indicated rate change — built in Python with p...
PSI detects covariate shift but not rank collapse. On a synthetic UK motor book where a new risk factor emerges post-deployment, PSI stays GREEN while Gini drops 8 points. The B...
We fitted a Poisson GLM on the first third of freMTPL2 (677k French motor policies) and monitored it across two later temporal segments without refitting. PSI, A/E ratios with W...
We planted three simultaneous model failures in a 50,000-policy UK motor book. The aggregate A/E never triggered. The library detected the first problem after 1,500 policies. He...
Two deregulatory signals in the FCA's February 2026 insurance priorities document. The SMCR one is almost entirely administrative. The Consumer Duty one is real but has no CP nu...
FCA PS26/2 (March 2026) creates mandatory incident reporting and material third party registers for all authorised insurers. Every pricing actuary who owns a rating API, renewal...
The FCA's Mills Review is not another compliance checklist — it is the regulator thinking aloud about how UK financial services might look in 2030. Pricing teams should read it ...
OEM APIs, smartphone SDKs, and charging data — what connected-car data sources UK pricing teams can actually access, and how to turn them into rating factors.
EY forecasts a 111% net combined ratio for UK motor in 2026. WTW documents a 13% annual premium fall. Here is what the data shows and what pricing teams should do about it.
Zero internal claims data is not a reason to guess blindly. Here is a structured sequence of five approaches — from Bühlmann-Straub credibility priors through transfer learning ...
FCA MS24/2 (February 2026) means pricing teams now own the APR question. Here is how to treat it as a pricing problem — with the same tools used for the insurance itself.
How UK home insurers should model physical climate risk: UKCP18 projections, Flood Re's 2039 exit, ABI claims data, and practical code using insurance-whittaker, insurance-confo...
The FCA has explicitly flagged pet insurance for monitoring in its 2026 regulatory priorities. FOS complaint upheld rates hit 52% in Q1 2025 — the highest of any UKGI business l...
How to detect when a motor book has hit the floor of its underwriting cycle — using PSI on new business mix, segment-level A/E, Gini stability, and mSPRT to know when the next m...
Modern Insurance Pricing with Python and Databricks - all 12 modules, free, on GitHub. GLMs through causal elasticity, fairness auditing, spatial BYM2 territory models, and mode...
A 5pp Gini improvement means nothing to a CFO. The Loss Ratio Error framework from arXiv:2512.03242 converts model correlation into expected loss ratio — and from there into pou...
Build a double-lift chart to compare GLM vs GBM predictions. Bin by prediction ratio, compute A/E per decile, plot with matplotlib. Standard tool for pricing committee model val...
The first Python implementation of the asymptotic Gini drift test from Brauer et al. (2025). A proper z-test for ranking degradation — not a heuristic, not a threshold, a p-value.
The FCA's interim report on MS24/1 landed in January 2026 with a Q3 2026 final report expected. Here is what pure protection pricing teams need to build before that lands.
FCA EP25/2 published July 2025. Expected claim costs per home policy up 49% from £92 to £138. Average inception premium up only 5%. The data says insurers absorbed the shock — n...
The FCA has committed to evaluating how UK insurers use AI in pricing, underwriting, and claims. No new AI-specific rulebook is coming — but the regulator now expects evidence, ...
The FCA replaced 40+ portfolio letters with a single annual priorities document on 24 February 2026. Here is what it says, what it means for pricing teams, and which library too...
Life and health insurance pricing models are high-risk AI under Annex III of the EU AI Act. General insurance (motor, home) may also be in scope but the classification is not ex...
EP25/2 (the FCA's evaluation of GIPP price-walking remedies) flags ongoing fair value supervision in motor and home. No single technical checklist exists for the pricing actuary...
arXiv:2504.16592 formalises what pricing teams have been quietly observing for years: autonomous pricing algorithms can converge to supra-competitive prices without any firm eve...
Every insurance team checks their champion/challenger results monthly. Every month you look, you inflate the false positive rate. Here is how to do it correctly using sequential...
Monthly peeking at champion/challenger results with a t-test inflates your false positive rate to ~25%. The mixture SPRT (Johari et al. 2022) is an e-process: valid at every int...
Migrating from Emblem to Python for insurance GLM pricing: what changes in workflow, what gets easier, what gets harder, and what the transition actually looks like in practice.
The Python equivalent of the IFoA MLR Working Party's R tutorial: Poisson GLM baseline, EBM GAM, and CatBoost GBM on UK motor data, with the full pipeline from data to governance.
insurance-deploy provides the champion/challenger infrastructure, audit trail, and ICOBS 6B compliance tooling that MLflow does not. Here is how to use it.
A practical comparison of Python and R for UK personal lines insurance pricing — data wrangling, GLMs, GBMs, deployment, and Databricks. Honest about where R still wins.
A UK motor frequency model drifts after an upstream vehicle group reclassification. We show how insurance-monitoring's PSI, A/E ratios, and Gini drift test caught the problem be...
A practical walkthrough for pricing analysts: use insurance-causal for causal inference, insurance-conformal for prediction intervals, and insurance-monitoring for drift detecti...
Aggregate A/E at 0.94 looks fine. The model has been mispricing under-25s for eight months. Benchmark results on a synthetic UK motor book with three planted failure modes.
Tutorial on monitoring insurance pricing models using actuarial KPIs. Gini tracking, segmented A/E, double-lift for champion/challenger. Why generic drift tools miss what matters.
Evidently is excellent for generic ML monitoring. It doesn't do exposure-weighted PSI, Poisson A/E ratios, Gini drift testing, or anytime-valid sequential tests. For UK insuranc...
NannyML is the best general-purpose ML monitoring library for teams without ground truth labels. For insurance pricing, it doesn't do exposure-weighted PSI, segmented A/E ratios...
Insurance model monitoring in Python that understands exposure weighting, development lags, and Gini drift. Why Evidently and NannyML miss what matters for pricing, and what ins...
Alibi Detect is a solid general-purpose drift detection library. It doesn't do exposure-weighted PSI, segmented A/E ratios, Gini discrimination drift, or Lloyd's MRM framework r...
Champion/challenger testing is the right way to evaluate pricing model changes. Most teams do it badly or not at all - ad-hoc scripts, no audit trail, no...
How to run covariate shift detection as a recurring monthly check: monitoring cadence, ESS ratio trends, and the thresholds that trigger a retraining...
Model risk governance for UK insurers: model inventory, risk tier scoring, exec committee reports. Built on SS1/23 principles (formally a banking standard, widely adopted by ins...
Champion/challenger with ICOBS 6B.2.51R compliance for UK insurers. SHA-256 routing, SQLite logging, bootstrap LR tests, SMF-signable report - insurance-deploy.
GLMTransfer borrows statistical strength from a related source book to price thin target segments. Motor-to-fleet, home-to-landlord, and fleet roll-outs.
The foundational walkthrough for insurance-covariate-shift: density ratio estimation, ESS/KL diagnostics, importance weighting, shift-robust conformal...
Assumes familiarity with the Murphy decomposition framework. Focuses on the operational question: given a monitoring alert, how do you read GMCB vs LMCB...
PRA SS1/23 requires quantitative pass/fail tests, not narrative. insurance-governance automates the full validation suite and generates auditable HTML reports.