Financial Modelling · Section 3
Contracts as compositions
The algebra of financial terms — how quota share, CatXoL, and AggXoL are each a composition of the same small set of building blocks.
The dissection translated Contract 1 into five terms applied in sequence. Those same terms — with different parameters and wiring — assemble every other Helios Re contract too:
- Contract 5 (Baltica EU Windstorm Quota Share, 25%) — filter to EU windstorm, check the coverage period, scale every loss by 25%.
- Contract 3 (SunCoast All-US AggXoL, $50M xs $300M, inuring C1+C2) — filter to SunCoast’s US perils, subtract C1 and C2 gross losses (inuring), check the coverage period, sum all occurrences per trial and apply an attachment and limit to the total, scale by participation.
Notice the reuse: a quota share scales losses, and so does a CatXoL’s participation step; a CatXoL applies an attachment and limit per occurrence, and an AggXoL applies the same operation to the aggregate. The same five blocks recur:
| Building block | Contract type | ||
|---|---|---|---|
| Quota Share | CatXoL | AggXoL | |
| Loss filter | ✓ (peril / geography) | ✓ (peril / geography) | ✓ (peril / geography) |
| Contract period | ✓ | ✓ | ✓ |
| Scaling | ✓ (cession %) | ✓ (participation) | ✓ (participation) |
| Occurrence excess | optional (event limit) | ✓ (, ) | — |
| Aggregate excess | optional (annual limit) | ✓ (, ) | ✓ (, ) |
The five building blocks
Section titled “The five building blocks”Each block is formalized in the term reference, where you will find its formula, its effect on Trial 9 in isolation, a runnable implementation over the TELT, and the EP curves it produces across all 20 trials:
| Term | What it does | Notation |
|---|---|---|
| Loss filter | Keeps only the TELT rows matching a predicate (peril, geography, line of business) | |
| Contract period | Drops events outside the coverage window | |
| Scaling | Multiplies every loss by a constant — cession % or participation | |
| Occurrence excess | Applies an attachment and limit to each occurrence | |
| Aggregate excess | Applies an attachment and limit to the trial total |
Two of these change the granularity of the data: occurrence excess preserves per-occurrence rows, while aggregate excess collapses all occurrences within a trial into a single trial-level result. That resolution change matters when composing — downstream terms after an aggregate excess receive trial-level data, not occurrence-level. The catalog also covers optional terms that build on these — triggers and aggregate/disaggregate — used in the more elaborate structures.
Composing contracts from the blocks
Section titled “Composing contracts from the blocks”A contract is what you get when you chain the blocks together: each contract type is a specific composition of the same terms, differing only in which ones it uses and how they are parameterised.
We write a composition as : apply first, then to the result, and so on. Data flows left to right through the pipeline, but the formula reads right to left, following the mathematical convention for function composition — so every contract below begins, on the right, with a filter and a coverage period selecting the losses it sees, and ends, on the left, with scaling for participation.
The simplest structure: a fixed cession percentage behind a filter and a coverage period.
Optional event and annual limits add an occurrence excess and an aggregate excess into the pipeline.
All five blocks. The occurrence excess clips each event, the aggregate excess caps the annual total (the limit encodes reinstatements), and scaling applies participation.
Drops the per-occurrence layer: the aggregate excess applies directly to the trial total.
The term reference and contract catalog formalize each block and each contract in turn. Beyond the canonical types, contracts can also feed one another — the programs page covers the sourcing and inuring relationships that turn a stack of contracts into a graph. And every contract produces not just a gross loss but a full set of financial perspectives: subject, gross, retained, and net.