Skip to content
Property-cat reinsurance analytics for software engineers

Caldera Re

The fictional reinsurer that is the running example throughout this site: its profile, business relationships, the contract portfolio, and the two-tier loss dataset behind every calculation.

Caldera Re is a fictional specialty reinsurer that serves as the running example throughout this site. Every contract structure, every metric calculation, every code example, and every interactive visualisation uses Caldera Re’s portfolio. Every number on this site traces back to this portfolio and to the data below.

AttributeValue
NameCaldera Re Ltd.
HeadquartersZurich, Switzerland
Founded2008
SpecialtyProperty catastrophe reinsurance
GeographiesNorth America, Caribbean, Europe, Japan
Perils coveredHurricane, earthquake, European windstorm
Business modelTraditional reinsurer with some involvement in insurance-linked securities (ILS)
Annual premium income~$250M company-wide (the six modelled contracts: $68M at 100% terms)
Capital base~$800M
Employees~120

Caldera Re is large enough to maintain a diversified multi-peril, multi-geography portfolio, but small enough that every contract moves the portfolio’s aggregate metrics.

EntityRoleRelationship
SunCoast InsuranceCedentMulti-peril US insurer (hurricane and earthquake); largest cedent
Pacific MutualCedentCalifornia-based insurer; primary earthquake exposure
Baltica InsuranceCedentNorthern European insurer; windstorm exposure
Atlas Cat FundILS fund / CedentAlternative capital partner; also cedent for C6
Trident ReCedentCaribbean insurer; hurricane exposure; the proposed C7
NorthStar ReRetrocession providerProvides retrocession protection to Caldera Re; the site does not model Caldera Re’s outward program
Meridian BrokersBrokerPrimary broker relationship

Caldera Re’s portfolio consists of six contracts chosen to illustrate different contract structures, perils, geographies, and inter-contract relationships. The portfolio is intentionally small (six contracts rather than thousands) so that every calculation can be verified by hand.

Every figure on the site is computed from the unrounded losses in the demo CSVs and displayed rounded: one decimal for losses (the terms catalog’s Trial 9 split tables use two), two for capital and premium figures. Where a table shows components and a total, each is rounded separately from its own unrounded value, so the displayed components can miss the displayed total by a unit in the last place. The committed Python reproduces every figure at full precision.

ContractTypeCedentPerilGeographyTermsParticipationPremium
C1CatXoLSunCoastHurricaneFL, USA$30M xs $10M, 1 reinstatement14.5%$14M
C2AggXoLSunCoastEarthquakeCA/AZ$10M xs $15M annual aggregate20%$5M
C3AggXoLSunCoastMulti-perilUSA$50M xs $300M annual aggregate (net of C1, C2)10%$13M
C4CatXoLPacific MutualEarthquakeCA, USA$10M xs $3M, 1 reinstatement25%$6M
C5Quota ShareBalticaWindstormEU25% cession30%$17M
C6CatXoLAtlas Cat FundEarthquakeJapan$30M xs $20M, 2 reinstatements at 100% and 50%15%$13M
Total $68M

Each cedent’s losses feed the contracts it places; the percentage on each contract is Caldera Re’s participation. SunCoast places three, and C3 covers SunCoast’s whole US book net of what C1 and C2 already recovered: the inuring relationship the Programs page works through.

The participation column is Caldera Re’s booked share of each contract. The terms and premium above are stated at 100%, as contracts are throughout this site: standalone metrics are computed on the full contract, and participation enters only at portfolio roll-up.

The six contracts are designed to demonstrate:

  1. Geographic diversification: US, Europe, Japan, peril regions the dataset treats as independent
  2. Peril diversification: hurricane, earthquake, windstorm
  3. Structure diversity: catastrophe excess of loss (CatXoL, per occurrence), quota share (proportional), aggregate excess of loss (AggXoL, annual aggregate)
  4. Multi-contract cedent with inuring: SunCoast places three contracts (C1, C2, C3); C3’s subject is SunCoast’s total net of C1 and C2 recoveries, which makes it the main example for teaching contract dependencies
  5. Shared underlying events: SunCoast and Pacific Mutual both see California earthquake events at different loss scales
  6. Hand-computable numbers: all parameters are round numbers for easy mental arithmetic

A seventh contract, C7 (Trident Re Caribbean Hurricane CatXoL), is a candidate for portfolio addition; the marginal-pricing application that would weigh it is (planned).

Every worked example runs on Caldera Re’s catastrophe-model output: one year event loss table (YELT) per cedent, generated by a stochastic simulation and published as CSV files. The data files page lists all ten with row counts, sizes, and download links. There are two tiers of the same simulation. The 20-trial demo tier is the one every number in prose comes from: small enough to check by hand, with dense tail coverage that visibly exercises every contract mechanism (attachment, reinstatement, inuring). The 1,000-trial tier is the higher-resolution contrast, published on the demo scale section and loadable in any runnable example. Neither tier’s loss amounts are market-calibrated estimates of anything; the mechanics are exact, the amounts are not.

TierFile per cedentRows (all five files)What it is for
20 trials<cedent>_20.csv3,977Every worked example and every number in prose
1,000 trials<cedent>_1000.csv188,186The resolution contrast; load_cedent(name, 1000)

Each cedent’s YELT holds a subset of the model’s event catalog, scaled to the size of the cedent’s book. SunCoast is the largest cedent. Its YELT holds US hurricane at full scale and US earthquake at 0.35: a third of Pacific Mutual’s earthquake exposure on the same events, which is what makes the shared-event examples work.

CedentPerilsGeographiesScale20-trial rows
SunCoastHurricane, earthquakeFL, GA, MS, LA, TX / CA, AZ1.0 / 0.351,657
Pacific MutualEarthquakeCA, AZ1.01,257
BalticaWindstormFR, DE, UK1.0578
Atlas Cat FundEarthquakeJP1.0391
Trident ReHurricaneCaribbean0.894

The 20-trial tier draws 571 distinct catalog events (from about 850 in the full catalog), 29 to 68 events per trial, at a trial loss across all five cedents between $91.9M and $841.1M. Losses and total insured value are in millions of US dollars, one currency, strictly positive under the site’s sign convention. The dataset is frozen: the generator that produced it is maintained privately, and the data page lists what a reader can check against the published files, SHA-256 checksums included.

The loader reads one cedent at one tier; this summary reads all ten files and prints what each holds (the 1,000-trial CSVs are a few megabytes each; the first run fetches them):

caldera_re/dataset_summary.py Python
"""The Caldera Re dataset at a glance: both demo tiers, every cedent.

Each cedent's year event loss table (YELT) is a committed CSV under
public/data/, one file per tier. load_cedent(name, n_trials) reads one; this
script reads all ten and prints what each holds. Losses and TIV are in $M.
"""

import pandas as pd

from caldera_re.data import load_cedent

CEDENTS = ['suncoast', 'pacific', 'baltica', 'atlas', 'trident']
TIERS = [20, 1000]

rows = []
for n in TIERS:
    for name in CEDENTS:
        y = load_cedent(name, n)
        occ = y.drop_duplicates(['trial_id', 'timestamp', 'event_id'])
        rows.append({
            'tier': n,
            'cedent': name,
            'rows': len(y),
            'occurrences': len(occ),
            'events': y['event_id'].nunique(),
            'trials with rows': f"{y['trial_id'].nunique()} of {n}",
            'perils': ' '.join(sorted(y['peril'].unique())),
            'mean trial loss': y['loss'].sum() / n,   # over all n trials, event-free ones included
        })

table = pd.DataFrame(rows)
for n in TIERS:
    t = table[table['tier'] == n].drop(columns='tier')
    print(f"\n{n}-trial tier")
    print(t.to_string(index=False, formatters={'mean trial loss': '{:,.1f}M'.format}))
ChapterWhat’s introduced
FoundationsCompany profile, market position, business relationships
Analytics ToolkitTrial data, loss distributions, risk metrics
Financial ModellingTerm-by-term contract compositions, worked loss transformations
ApplicationsRisk profiling, standalone program pricing, portfolio analytics