IBNR Runoff

IBNR Runoff#

import chainladder as cl

All IBNR models spin off several results triangles including inbr_, ultimate_, full_expectation, and full_triangle_. These can be manipulated into a variety of formats. This example demonstrates how to create a calendar year runoff of IBNR.

# Create a triangle
triangle = cl.load_sample('genins')

# Fit a model
model = cl.Chainladder().fit(triangle)

# Develop IBNR runoff triangle
runoff = (model.full_triangle_.cum_to_incr() - triangle.cum_to_incr())

# Convert to calendar period and aggregate across all accident years
cal_yr_runoff = runoff[runoff.valuation > triangle.valuation_date]
cal_yr_runoff = cal_yr_runoff.dev_to_val().sum(axis='origin')
Hide code cell source
import matplotlib.pyplot as plt
plt.style.use('ggplot')
%config InlineBackend.figure_format = 'retina'

# Plot results
ax = cal_yr_runoff.dropna().T.plot(
    kind='bar', legend=False,
    title='GenIns: IBNR Run-off', alpha=0.7,
    xlabel='Calendar Year', ylabel='IBNR');
../_images/a5e1863f7afad35e2d9c24dc2eb761957f5f10dfeb8d38e6660238101d1562cf.png