Method
How I compute a trigger, written down so you can check it.
A calculation nobody can rerun is a matter of trust, not independence. This is the open method behind every number on this site: each report shows its sources, dataset versions and hashes.
- 01
Data in
Sources named in the contract (NOAA, ERA5, IMERG, Sentinel). Pulled on schedule, with the fallback source agreed in advance.
- 02
Checks
Every input checked for coverage, units, gaps and known dataset defects. Every file hashed.
- 03
Index
The index exactly as the policy wording defines it. The same code runs the backtest and the live calculation.
- 04
Trigger
Tested against the payout ladder, cell by cell or district by district.
- 05
Payout
A payout report for each cell: value, tier, amount and the data used.
- 06
Audit trail
Every figure traced to input hashes and code version. A rerun gives the same answer.
Rules I hold to
Seven rules, the same for every client.
- 1
The wording is the specification.
The code computes what the policy says. Where the wording is ambiguous, I write the ambiguity down and get it resolved before the season, not after an event.
- 2
One code path for backtest and live.
The index that was backtested is the index that pays. No separate script for production.
- 3
Every input is checked and hashed.
Coverage, units, gaps and known defects are tested before a value enters the index. The hash ties each figure to the exact file it came from.
- 4
Fallbacks are agreed in advance.
If the primary source is late or broken, the replacement is already named in the contract. Dataset versions are named too: CHIRPS v2 production ends after December 2026, so rainfall indices built now use CHIRPS v3.
- 5
Thresholds live in the index’s own units.
A tier is “the 1-in-10 event for this cell, as this instrument measures it”, never a claim about the atmosphere.
- 6
Limits are reported, not hidden.
Where no loss series exists, payout against loss is reported as not scored. Nothing is estimated to fill the gap.
- 7
A rerun gives the same answer.
Same inputs, same code version, same result. That is the test the audit trail exists to pass.
See it applied