Insurance Loss Reserving

Actuarial loss reserving with chainladder-python: estimate IBNR reserves from claim triangles, fit tail parameters. Supports 3 major lines: re-insurance, catastrophe, and general liability.

✓ 0 reported success·v0.1.0·

Overview

Insurance Loss Reserving is an actuarial toolkit built on casact/chainladder-python, implementing the industry-standard Chain Ladder Method. Starting from historical claim triangle data, it estimates IBNR (Incurred But Not Reported) reserves, fits tail parameters, and generates full reserving analysis reports. Supports 3 major insurance lines: re-insurance treaty business, catastrophe excess-of-loss (XOL), and general liability. Handles flow triangles, LDF (Loss Development Factor) calculation, and Bornhuetter-Ferguson hybrid estimation — all core actuarial methods. This skill targets actuaries and insurance risk engineers. Embedded constraints cover common chain-ladder pitfalls: tail factor selection bias, confidence interval convergence with small samples, and cross-line comparison caliber issues.

Blueprint Source

finance-bp-063

casact/chainladder-python6cb4aab2 source files

Constraints

91total
76fatal
76 must-not-violate

Evidence Quality

Confidence89%

Medium confidence — review before critical use

76 non-negotiable constraints

FATALdomain_rulefinance-C-001

WHENWhen specifying columns for Triangle construction

ACTIONVerify each column values are numeric type, as non-numeric columns raise TypeError during construction

CONSEQUENCENon-numeric column data causes TypeError with message 'column attribute must be numeric', preventing Triangle instantiation and blocking downstream analysis

FATALdomain_rulefinance-C-002

WHENWhen constructing a Triangle from DataFrame

ACTIONPass columns with unique names, as duplicate column names raise AttributeError

CONSEQUENCEDuplicate column names cause AttributeError 'Columns are required to have unique names', breaking Triangle construction before any downstream processing

FATALdomain_rulefinance-C-003

WHENWhen accessing Triangle.shape property

ACTIONReturn a 4-tuple representing (index_size, columns_size, origin_size, development_size) in that order

CONSEQUENCEDownstream stages expect 4D array shape for vectorized operations; violating this causes incorrect dimension alignment in link_ratio_analysis and development_estimation stages

FAQ

Discussion (0)

No comments yet. Be the first to share!

Changelog

v0.1.02026-04-23·Contributors: tangweigang-jpg

v0.1.0: Initial release. chainladder-python-based loss reserving toolkit with bilingual metadata and 3 FAQs.