Products Insurance and reinsurance

ICS

Insurance Capital Standard

Group capital built up from its charges, with every step and every part shown.

The ICS is the IAIS capital standard for internationally active insurance groups. GraphAtlas takes the charges that the models of the group produce and works the rest as the texts prescribe, which is the aggregation through the correlation tables, operational risk, the tax effect and the limits on the capital resources that count. It shows each step, the part of the requirement that rests on each charge, and a receipt that a second program reproduces.

Try the calculation Request a walkthrough

Regime
IAIS Insurance Capital Standard, Level 1 and 2 texts of December 2024
Set by
  • International Association of Insurance Supervisors
Built for
  • Group risk and capital
  • Group supervisors liaison
  • Finance
Version
2.0
The insurance capital standard of an example group, from its charges to the cover of its requirementThe five categories of insurance risk of the example group, life 988.6, non-life 780.0, catastrophe 571.1, market 1,729.2 and credit 590.0, add up to 4,659.0. The correlation between them takes 1,662.5 off, which leaves 2,996.5. Operational risk adds 434.3, which makes a charge of 3,430.8. The tax effect takes 603.8 off and the charge for what is not insurance adds 140.0, which makes a requirement of 2,966.9. The capital resources that count are 5,528.5, 186 per cent of it. A tag says that the parameters are prescribed.FROM CHARGES TO COVERLIFE988.6NON-LIFE780.0CATASTROPHE571.1MARKET1,729.2CREDIT590.0CORRELATION-1,662.5AGGREGATE2,996.5OPERATIONAL434.3CHARGE3,430.8TAX EFFECT-603.8NON-INSURANCE140.0REQUIREMENT2,966.9RESOURCES5,528.5COVER186 %PRESCRIBEDENGINEICS V2.0SET BYIAISDATASAMPLERECEIPTcc360c1d The insurance capital standard of an example group, from its charges to the cover of its requirementThe five categories of insurance risk of the example group, life 988.6, non-life 780.0, catastrophe 571.1, market 1,729.2 and credit 590.0, add up to 4,659.0. The correlation between them takes 1,662.5 off, which leaves 2,996.5. Operational risk adds 434.3, which makes a charge of 3,430.8. The tax effect takes 603.8 off and the charge for what is not insurance adds 140.0, which makes a requirement of 2,966.9. The capital resources that count are 5,528.5, 186 per cent of it. A tag says that the parameters are prescribed.CHARGES TO COVERLIFE988.6NON-LIFE780.0CATASTROPHE571.1MARKET1,729.2CREDIT590.0CORRELATION-1,662.5AGGREGATE2,996.5OPERATIONAL434.3CHARGE3,430.8TAX EFFECT-603.8NON-INS.140.0REQUIREMENT2,966.9RESOURCES5,528.5COVER186 %PRESCRIBEDENGINEV2.0DATASAMPLERECEIPTcc360c1d

Try it

Run it on sample data

Choose the group, the IAIS example or the mutual, or change any figure, and read the requirement as you type. The build-up shows each step from the charges to the requirement, and the ledger shows which charges carry it. Open the tax effect to switch to the limited rule, and the capital resources to count what the group holds against the requirement.

Fig. 1 The ICS capital requirement of a group, from its charges to the capital that covers it

Verifying receipt

The group

A composite group, with the limits on its capital resources biting. Its figures are illustrative. All amounts are in million euros.

The ICS capital requirement is 2,967 million euros. The insurance risk charge is 3,431, and the tax effect takes 604 off it. The capital resources that count cover it 1.86 times.

The charges

A charge is the fall in capital resources under a stress, after management actions. The group’s own models work it out, and the plate takes it as given. A stress that raises capital has a charge of zero.

LifeTable 6
CatastropheIndependent
MarketTable 16

Only the larger of the two stresses of the spread counts.

Non-life and creditOne charge each
Outside the five categoriesAfter the tax effect
The risk charge of the non-insurance entities, which is added after the tax effect
Operational risk435

Each line of business takes the larger of a share of its premium and a share of its liabilities, and adds a share of the premium growth above 20%. The charge is added after the aggregate, and it is not diversified.

Non-life business
Life business with risk
Life business where the policyholder bears the risk
The tax effect22%, default rule
per cent
Work the rate out from the entities

One entity to a line, the name, the rate in per cent and the earnings of the last three years, apart by commas. A loss counts as zero, and the earnings weight the rates.

3 entities read. Each loss counts as zero, the earnings of the three years weight the rates, and the group rate is 23.03%. The IAIS prints 23.03% for these entities.

The rule

Capital resources5,529 counts
Tier 1
Tier 2
Tier 2 basket

From the charges to the requirement

The build-up from the charges on their own to the ICS capital requirement, in million euros
StepEUR mDrawn to scale
The charges on their own6,350
Diversification inside the categories−1,691
Diversification between the categories−1,663
Aggregate of the five categories2,996
Operational risk+435
Insurance risk charge3,431
Tax effect−604
Non-insurance entities+140
ICS capital requirement2,967

Each bar starts where the one before it ends. A hatched bar takes away.

Where the insurance risk charge comes from

A part is what a charge adds to the insurance risk charge once everything is counted. The text has no rule for it, and this is the Euler allocation, so the parts add up to the charge. The parts add up to the charge.

The part of the insurance risk charge that each category adds, with the charge of each category on its own and what diversification takes away
ChargeOn its ownPartDiversified awaySize of the part
989 after its own table1,6805651,115
Non-life780391389
571 after its own table880304576
1,729 after its own table2,4201,4201,000
Credit590316274
Aggregate of the five categories6,3502,9963,354
Operational riskNot diversified435435–
Insurance risk charge6,7853,4313,354

The tax effect

The default rule takes 80% of the notional tax effect, which is 604, off the insurance risk charge.

How the tax effect is worked out, in million euros
FigureEUR m
Notional tax effectThe insurance risk charge, 3,431, times the group rate of 22.00%.755
Taken offThe default rule takes 80% of the notional effect.604

Capital resources that count

The capital resources that are held, the limit of each, what counts and what is left out, in million euros
ElementHeldLimitCountsLeft out
Tier 1 Unlimited3,600–3,600–
Tier 1 Limited520297445–
Tier 1 that counts4,120–4,045–
Tier 2 Paid-Up and other elements1,200–1,200–
Tier 2 basket550445445105
Tier 2 Non-Paid-Up–0––
Moved from Tier 1 Limited––75–
Tier 2 together1,7201,4831,483237
Capital resources that count5,870–5,529341
  • Tier 1 Limited counts up to 10% of the requirement, and up to 15% where what is above 10% has a loss absorbency mechanism. Tier 2 counts up to 50%.
  • The basket takes the pension fund asset at 50%, the deferred tax asset at 100% and software intangibles at 10%, up to 15% of the requirement.
  • 75 of Tier 1 Limited is over its limit and moves to Tier 2, where it counts if there is room.

5,529 of capital resources count against a requirement of 2,967, a cover of 1.86 times. The text defines no ICS ratio, so this is the capital that counts divided by the requirement, and the figure is ours.

The correlation tablesFour tables

The charges are put together with these tables. The check factors each one as L D L transpose in exact fractions and rebuilds it entry by entry, which shows that it is positive definite, so that every square root in the formula is real.

The check runs in this page, on the tables as they are typed in the source.

Life risks, Table 6
Life risks, Table 6
MortalityLongevityMorbidity and disabilityLapseExpense
Mortality1−0.250.2500.25
Longevity−0.25100.250.25
Morbidity and disability0.250100.5
Lapse00.25010.5
Expense0.250.250.50.51
Market risks with the up stress of the spread, Table 16
Market risks with the up stress of the spread, Table 16
Interest rateSpread, up stressEquityReal estateCurrencyAsset concentration
Interest rate10.250.250.250.250
Spread, up stress0.2510.750.50.250
Equity0.250.7510.50.250
Real estate0.250.50.510.250
Currency0.250.250.250.2510
Asset concentration000001
Market risks with the down stress of the spread, Table 16
Market risks with the down stress of the spread, Table 16
Interest rateSpread, down stressEquityReal estateCurrencyAsset concentration
Interest rate10.250.250.250.250
Spread, down stress0.251000.250
Equity0.25010.50.250
Real estate0.2500.510.250
Currency0.250.250.250.2510
Asset concentration000001
The five categories, Table 34
The five categories, Table 34
LifeNon-lifeCatastropheMarketCredit
Life100.250.250.25
Non-life010.250.250.25
Catastrophe0.250.2510.250.25
Market0.250.250.2510.25
Credit0.250.250.250.251

Against a second program

Agrees to fourteen digits

The program takes the tables as they are printed and the one square root of each table at sixty digits. Its figures for this group are set beside the ones here.

The figures here and in the second program, with the difference
FigureHereSecond programDifference
Life charge988.6354988.63540
Catastrophe charge571.1392571.13920
Market charge1,729.21951,729.21950
Aggregate of Table 342,996.45022,996.45020
Operational risk434.3000434.30000
Insurance risk charge3,430.75023,430.75020
Tax effect603.8120603.81201.9×10−16
ICS capital requirement2,966.93822,966.93821.5×10−16
Capital resources that count5,528.50985,528.50980

Receiptcc360c1d 211539e5 … f5466a73

Choose a group or edit any figure. The formulas run in this page and nothing leaves it.

Inputs and outputs

What goes in. What comes out

The plate runs a slice of the engine. This is the whole shape of it.

What goes in

Charges
Eighteen charges, each the fall in capital resources under one stress after management actions, from the models of the group. A charge is zero or more, and at most 1,000,000,000,000. A stress that raises capital has a charge of zero.
Operational exposures
For non-life business and for life business with risk, the premium of the year, the premium of the year before and the gross current estimate. For life business where the policyholder bears the risk, the gross current estimate.
Non-insurance charge
The risk charge of the entities that are not insurers, which the text adds after the tax effect.
Tax
The group effective tax rate, which the plate can work out from the entities of the group, and the rule. Under the limited rule, up to eight tax sub-groups with their liabilities and carry-back capacity, five years of earnings, a projected loss and the net deferred tax.
Capital resources
Tier 1 Unlimited and Limited with the part of Limited that has a loss absorbency mechanism, Tier 2, Non-Paid-Up, the three items of the Tier 2 basket, and whether the group is a mutual. They are optional.

What comes out

Charge of each category
Life, non-life, catastrophe, market and credit, each after its own table.
Insurance risk charge
The five categories put together with Table 34, plus operational risk, with the diversification that was taken away within the categories and between them.
Tax effect
What comes off the insurance risk charge, with the four components under the limited rule and what each tax sub-group counts.
ICS capital requirement
The insurance risk charge less the tax effect, plus the charge for the non-insurance entities.
Capital resources that count
What counts, what the limits leave out and the limit on each element, with the cover of the requirement.
Parts of the charge
The part of the insurance risk charge that rests on each charge. The parts add up to it, and a charge that offsets another takes a negative part.
Receipt
A hash of the rule, every number that went in and every number that came out. Anyone can recompute it.

What the plate covers

In the plate above

  • The five categories of insurance risk with Table 6 for life, independent catastrophe scenarios, the two tables of six rows from Table 16 for the two directions of the spread stress, and Table 34 for the top.
  • The operational charge of Table 33, added after the aggregate and not diversified.
  • The group effective tax rate of a set of entities, and the tax effect under the default rule and under the limited rule with its four components.
  • The limits on Tier 1 Limited, Tier 2 and the Tier 2 basket, for a group and for a mutual, and the cover of the requirement.
  • The part of the requirement that rests on each charge, the correlation tables with an exact check that each is positive definite, and a second program in exact fractions that agrees on the three groups.

In the licensed engine, not the plate

  • The charges. The plate takes them as given. The stress scenarios, the valuation and the management actions behind each charge belong to the product of the group and not to a page.
  • The non-insurance entities. The charge for them has its own rules, and the plate takes it as one figure.
  • The cap on management actions of L1-84, which limits what they may take off a charge. The charges here are taken after them.
  • Whether capital resources are eligible and what is deducted from them. The plate takes the amount of each tier as it is held.
  • National texts. A jurisdiction that applies the ICS can differ from the IAIS text, and the plate follows the IAIS text.

Clause map

Every rule has an address

Each row names the clause, the function that carries it and the statements that check it. A test opens each file and confirms the function exists.

Rules of the regulation, the code that carries each one and the statements that check it
Reference Rule Carried by Checked by
L2-143, Table 6 The life charge is the root of the form of Table 6 over the charges of the five life risks. Mortality and longevity offset each other at minus 25 per cent, which is the only negative entry. The charge is never below 96.8 per cent of the largest charge and never above their sum. A longevity charge of a quarter of the mortality charge takes it 3.2 per cent below the mortality charge. LIFE_CORRELATION_TEXT src/kernel/ics.ts Proved IC-01 Proved IC-02 Certified IC-07 Tested IC-08 Tested IC-09
L2-199 The four catastrophe scenarios are independent. The catastrophe charge is the root of the sum of their squares. CATASTROPHE_CORRELATION_TEXT src/kernel/ics.ts Tested IC-08 Tested IC-09
L2-203, Table 16 The market charge has seven rows, of which two are the up stress and the down stress of one spread. As printed the table is not a correlation matrix, because the two spread rows are fully correlated with each other and differ in their correlation with equity and real estate. A spread charge is one charge, so it counts in one row, and the table of six rows that is left for each direction is positive definite. MARKET_CORRELATION_TEXT src/kernel/ics.ts Proved IC-03 Certified IC-07 Tested IC-08 Tested IC-09
Rule of this product, the spread stress The text gives a spread charge for an up stress and for a down stress, and does not say which row of Table 16 the larger uses. The engine reads the row of the direction that gave the larger. A down stress that grows past the up stress turns the row, and the market charge can then fall, because equity is correlated at 75 per cent with the spread under the up stress and at nothing under the down stress. Only when the two are equal does the engine take the larger of the two results, and it says so. SPREAD_ROWS src/kernel/ics.ts Tested IC-09 Tested IC-17
L2-335, Table 34 The five categories are life, non-life, catastrophe, market and credit. Life and non-life are independent, and every other pair has a correlation of 25 per cent. The aggregate is at least the root of the sum of the squares of the five charges and at most their sum. TOP_CORRELATION_TEXT src/kernel/ics.ts Proved IC-03 Certified IC-07 Tested IC-08
L1-141 and L2-329 to L2-334, Table 33 The operational charge of a line of business is the larger of a share of its premium and a share of its liabilities, plus a share of the premium that is above 120 per cent of the year before. Life business where the policyholder bears the risk has a share of its liabilities. The charge is added after the aggregate and is never diversified. operationalCharge src/kernel/ics.ts Tested IC-08 Tested IC-10
L1-141 and L2-335, the requirement The insurance risk charge is the aggregate of the five categories plus the operational charge. The tax effect comes off it, and the charge for the non-insurance entities is added after, with no tax effect of its own. A group with nothing has a requirement of zero. icsRequirement src/kernel/ics.ts Tested IC-11
L2-339 The group effective tax rate is the average of the rates of the insurance entities, weighted by the earnings that each made in the previous three years. A loss counts as zero in its own year. The three entities that the IAIS prints give 23.03 per cent. groupEffectiveTaxRate src/kernel/ics.ts Tested IC-12
L2-348 Under the default rule the tax effect is 80 per cent of the notional tax effect, which is the requirement before tax times the group effective tax rate. UTILISATION_TEXT src/kernel/ics.ts Proved IC-05 Tested IC-13
L2-349 to L2-353 The group-wide supervisor can limit the tax effect to four components. Component a is the sum over the tax sub-groups of the smaller of its share of the notional effect, by insurance liabilities, and its carry-back capacity, less 15 per cent. Component b is half of five years of earnings times the group rate, and zero for a projected loss. Component c is a net deferred tax liability and d a net asset held to 15 per cent of the requirement. The sum a plus b plus c less d is held between zero and 80 per cent of the notional effect. The IAIS example gives 2,005. taxEffect src/kernel/ics.ts Proved IC-05 Tested IC-13
L1-72, L2-122 and L2-127 Tier 1 Limited counts up to 10 per cent of the requirement, or 15 per cent when the part above 10 per cent has a loss absorbency mechanism. What is above the limit moves to Tier 2, which counts up to 50 per cent. The Tier 2 basket is half of the pension fund asset, all of the deferred tax asset and a tenth of the software intangibles, held to 15 per cent. qualifyingResources src/kernel/ics.ts Proved IC-06 Tested IC-14
L2-129 A mutual counts Tier 1 Limited up to 30 per cent of the requirement and Non-Paid-Up up to 10 per cent, and Tier 1 Limited and Tier 2 together up to 60 per cent. LIMIT_TEXT src/kernel/ics.ts Proved IC-06 Tested IC-14
Rule of this product, the cover The text defines no ICS ratio. The cover is the capital resources that count divided by the requirement, and the figure is ours. The limits are shares of the requirement, so they rise and fall with it. coverRatio src/kernel/ics.ts Tested IC-14
Rule of this product, what a group may say A charge is zero or more, finite and at most 1,000,000,000,000, and a charge below zero is refused with the reason that a stress which raises capital has a charge of zero. A wrong exposure, non-insurance charge or tax rule is refused with a message that says what is wrong. The checks run in a fixed order. A group that gives no resources gets no result for them, which is not resources of zero. icsRequirement src/kernel/ics.ts Tested IC-15
Rule of this product, where the requirement comes from The text has no rule for where the capital comes from. A risk takes its share inside its category, the category takes its share of Table 34, and the part of the risk is the product of the two. This is the Euler allocation, and each part is what the insurance risk charge changes by when its charge is scaled. The parts add up to the charge, the operational charge is a part of its own, and a charge that offsets another takes a negative part. icsRequirement src/kernel/ics.ts Proved IC-04 Tested IC-16
Rule of this product, a second program A program that shares no code with the engine works every case in exact fractions and takes each square root once, at sixty digits. For 50 cases that use both directions of the spread and a tie, every outcome of the tax rule, both lines of operational risk and every limit on capital resources, the two agree to 3e-15. ics src/kernel/ics.ts Tested IC-18
Rule of this product, what the requirement does The requirement doubles when every amount doubles, to the last digit, through the tax rule and the limits. The tax effect never takes it below a fifth of the insurance risk charge. A larger charge never gives a smaller requirement, except in a pair that offsets and in the spread. The tax effect never falls when earnings, the deferred tax liability or carry-back capacity rise. ics src/kernel/ics.ts Tested IC-19
Receipt of a calculation The receipt covers the rule, every number that went in and every number that came out, in a fixed order, with the tax rule and its sub-groups. It is the same for the same input and changes when any input moves by one unit or any choice is turned over. icsReceiptPayload src/kernel/ics.ts Tested IC-20 Tested KE-03

Verification

What we claim, and how it is checked

Every statement is registered, and each says which level of assurance it has earned. The ladder is explained on the verification page.

Proved

True for every input.

  • IC-01

    For any five charges of the life risks that are not below zero, the quantity under the root of the life charge, which is the form of Table 6 of the Level 2 text, is at least 15/16 of the square of each charge and at most the square of their sum. So the life charge is never below the root of 15/16, which is 96.8 per cent, of its largest charge, and never above the sum of the charges. The floor is reached with a mortality charge of 4 and a longevity charge of 1, so that no higher floor can be proved.

    24 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 4 broken variants are refuted. proofs/smt2/IC-01.smt2

  • IC-02

    With a mortality charge M above zero and a longevity charge L, and nothing else in the life risks, the quantity under the root of the life charge is M² + L² − M × L / 2. It is below M² for any L above zero and below M / 2, it equals M² at M / 2, and it is above M² beyond. It is lowest at L = M / 4, where it is 15/16 of M². A longevity charge of a quarter of the mortality charge therefore lowers the life charge by 3.2 per cent, and a larger one lowers the requirement too, as long as it is below half.

    5 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 4 broken variants are refuted. proofs/smt2/IC-02.smt2

  • IC-03

    For charges that are not below zero, the quantity under the root of the market charge, in the row of Table 16 for an upward spread stress and in the row for a downward one, and the quantity under the root of the top level of Table 34, are each at least the sum of the squares of the charges and at most the square of their sum. So each aggregate is at least the root of the sum of the squares, which is what no correlation at all gives, and at most the sum of the charges. The charge of a category is real, and diversification never lifts it above the plain sum.

    31 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 3 broken variants are refuted. proofs/smt2/IC-03.smt2

Show the other 3 Show fewer
  • IC-04

    Before the operational charge, a life, catastrophe or market risk has the part of the insurance risk charge that is its share inside its category, c × (R × c) / A, times the weighted charge of the category over the aggregate. Non-life and credit take their own charge times that factor. The parts add up to the aggregate. The terms c × (R × c) of each table add up to the square of the charge of their category, and the terms of Table 34 add up to the square of the aggregate. Terms that add up to the square of a number add up to it when divided by it. A factor times shares that add up to a charge adds up to the factor times it.

    7 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 5 broken variants are refuted. proofs/smt2/IC-04.smt2

  • IC-05

    The tax effect taken off the insurance risk charge lies between zero and 80 per cent of the notional effect, which is the requirement times the group effective tax rate, so at least a fifth of the requirement is left. The carry-back component is at most 85 per cent of the notional effect. The net deferred tax asset is at most 15 per cent of the requirement and is never held against a net liability. An asset can only lower what is used, and a sum of components between nothing and the cap is what is used. It holds for any notional effect up to the requirement and any three sub-groups, capacity, earnings and deferred taxes.

    10 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 6 broken variants are refuted. proofs/smt2/IC-05.smt2

  • IC-06

    For any capital resources and any requirement, what counts and what is left out add up to what is held, for a group that is not mutual and for a mutual. For a group that is not mutual, Tier 1 Limited counts up to 15 per cent of the requirement, Tier 2 up to 50 per cent and the basket up to 15 per cent, and none of the Non-Paid-Up capital counts. For a mutual, Tier 1 Limited counts up to 30 per cent, Non-Paid-Up up to 10 per cent, and Tier 1 Limited and Tier 2 together up to 60 per cent. What Tier 1 Limited has over its limit moves to Tier 2. What is left out is not below zero and what counts is not above what is held.

    20 checks, decided by Z3 5.3.3.0 (WebAssembly) and rerun from the emitted file by Z3 5.3.3 (native) and cvc5 1.4.2 (native, nl-cov). 7 broken variants are refuted. proofs/smt2/IC-06.smt2

Certified

True for the case in hand, with evidence anyone can recheck.

  • IC-07

    Four correlation tables are positive definite. They are Table 6 for life, Table 34 for the categories, and the six by six tables of Table 16 for the up stress and for the down stress of the spread. An exact LDL factorisation shows it, a separate checker accepts it, and a certificate with one pivot or one entry changed is refused. The engine finds no certificate for the whole seven row Table 16, where a vector makes the form negative, so the two spread rows are never in one aggregation. It finds none for a life table with mortality and longevity at minus 100 per cent, or for a top table in which a pair is correlated beyond what the others allow.

    tests/kernel/ics.test.tssrc/kernel/certify.tssrc/kernel/rational.ts

Tested

True on every input we tried.

  • IC-08

    The tables and rules are as the IAIS Level 2 text of 5 December 2024 prints them. Table 6 has the five life risks, symmetric, and only mortality and longevity offset each other, at minus 25 per cent. The four catastrophe scenarios are independent. Table 16 has seven rows, and each direction of the spread stress has the six by six table left when the other is taken out. Table 34 has life and non-life independent and every other pair at 25 per cent. Table 33 has the factors of operational risk, with growth above 20 per cent. The tax rules are those of L2-339 and L2-348 to L2-353, and the limits on resources those of L2-122, L2-127 and L2-129.

    tests/kernel/ics.test.ts

  • IC-09

    The life charge is the root of the form of Table 6, and a longevity charge under half the mortality charge lowers it below what mortality alone sets, which is what the negative entry means. The catastrophe charge is the root of the sum of the squares of the four scenarios. The market charge is read from Table 16 in the row of the larger of the two spread stresses, and the smaller has no effect. When the stresses are equal and not zero the text gives no direction, so the engine takes the larger of the two results and says that there was a tie. With no spread charge there is none.

    tests/kernel/ics.test.ts

  • IC-10

    The operational charge of a line is the larger of its premium charge and its liability charge, plus the growth charge, with the charge on life business without risk added for the group, at the factors of Table 33. Premium counts as growth only above 120 per cent of the year before, at the factor of its line and on top of the larger charge, and at exactly 120 per cent or after a fall there is none. The engine says which of premium and liabilities decides, and takes the premium when they are equal. A group with no business has none. The charge is added after the aggregation and is never diversified.

    tests/kernel/ics.test.ts

Show the other 10 Show fewer
  • IC-11

    The five categories are aggregated with Table 34, so life and non-life, which are independent, add in quadrature, and five equal charges give the root of 9.5 times the square. The tax effect comes off the insurance risk charge, and the charge for the non-insurance entities is added after it with no tax effect of its own. A group with nothing has a requirement of zero. The undiversified sum is every charge and the operational charge, and two diversification figures, between the categories and within them, explain the rest. The sample group has the charges that the second program confirms.

    tests/kernel/ics.test.ts

  • IC-12

    The group effective tax rate weights the rate of each entity by the earnings that it made in the previous three years. The example that the IAIS prints, three entities at 30, 25 and 20 per cent, gives 23.03 per cent. Each loss is set to zero in its own year and not against the sum of the three years. The rate of one entity is its own, and the unit of the earnings does not change the result. When no entity made a profit there is nothing to weight the rates by, and the engine refuses, as it does for an entity that is not one.

    tests/kernel/ics.test.ts

  • IC-13

    Under the default rule the tax effect is 80 per cent of the notional effect, which is the requirement times the group effective tax rate. A supervisor can limit it by four components. Component a is the smaller of the share by liabilities of the notional effect and the carry-back capacity of each tax sub-group, summed, less 15 per cent. Component b is half of five years of earnings times the rate, and zero for a projected loss. Component c is a net deferred tax liability and d a net asset held to 15 per cent of the requirement, and a group has one of them. The sum a plus b plus c less d is held between zero and 80 per cent of the notional effect. The IAIS example gives 2,005.

    tests/kernel/ics.test.ts

  • IC-14

    Tier 1 Limited counts up to 10 per cent of the requirement, or 15 per cent when the part above 10 has a loss absorbency mechanism. What is above the limit moves to Tier 2, which counts up to 50 per cent. The Tier 2 basket is half of the pension fund asset, all of the deferred tax asset and a tenth of the software intangibles, held to 15 per cent. A mutual counts Tier 1 Limited up to 30 per cent, Non-Paid-Up up to 10 per cent, and Tier 1 Limited with Tier 2 up to 60 per cent. The limits are shares of the requirement after tax and with the non-insurance charge, so they rise and fall with it, and what does not count is exactly what is above them. The text defines no ICS ratio.

    tests/kernel/ics.test.ts

  • IC-15

    A charge below zero is refused with a message that names it and says that a charge is the fall in capital resources under its stress, so a stress that raises them has a charge of zero. A charge that is not finite, or is above 1,000,000,000,000 in size, is refused by name. A wrong exposure, non-insurance charge or tax rule is refused with a message that says what is wrong. The checks run in a fixed order, charges first, then exposures, the non-insurance charge, the tax rule and last the resources. A group that gives no resources gets no result for them, which is not resources of zero.

    tests/kernel/ics.test.ts

  • IC-16

    The text has no rule for where the capital comes from. The product gives one, the Euler allocation through three levels. A risk takes its share inside its category, the category takes its share of Table 34, and the part of the risk is the product of the two. The parts add up to the insurance risk charge for every case of the second program. The operational charge is a part of its own, and non-life and credit have a line each. Each part is what the insurance risk charge changes by when its charge is scaled, which a numerical derivative confirms for eleven charges. A longevity charge under a quarter of the mortality charge takes a negative part.

    tests/kernel/ics.test.ts

  • IC-17

    The text gives a spread charge for an up stress and for a down stress, and does not say which row of Table 16 the larger of the two uses. The engine reads the row of the direction that gave the larger. So a down stress that grows past the up stress turns the row, and the market charge can then fall, because equity is correlated at 75 per cent with the spread under the up stress and at nothing under the down stress. Only when the two are equal and not zero does the engine take the larger of the two results, and the result says so.

    tests/kernel/ics.test.ts

  • IC-18

    A second program that shares no code with the engine works every case in exact fractions and takes each square root once, to 60 digits. For 50 cases that use both directions of the spread and a tie, every outcome of the tax rule, both lines of operational risk on both of their binds and every limit on capital resources, every figure agrees with the engine to a relative error under 3e-15, and the amounts left out, which are differences of sums, to 1e-14. The saved answers are what the program says now, so that nobody edited them by hand.

    tests/kernel/ics.test.tsscripts/verify/ics_oracle.pytests/support/ics-oracle.json

  • IC-19

    Over generated groups, the requirement doubles when every amount doubles, to the last digit, through the tax rule and the limits. The tax effect never takes the requirement below a fifth of the insurance risk charge, and the parts add up to that charge. A larger charge never gives a smaller requirement, except in a pair that offsets and in the spread. Each category charge lies between its largest part and the sum of its parts. The group tax rate lies between the lowest and the highest rate of the entities that made a profit. The tax effect never falls when earnings, the deferred tax liability or carry-back capacity rise, and never rises with the asset.

    tests/kernel/ics.test.ts

  • IC-20

    The receipt of a calculation holds the rule, every number that went in and every number that came out, in a fixed order. It carries the tax rule with its sub-groups, and no resources as nothing. It is the same for the same input, and different when any input moves by one unit or any choice is turned over. It never carries a minus zero, which would give another hash.

    tests/kernel/ics.test.ts

Read the verification statement

Use it

The same call, anywhere

This sample is written from the input the plate starts with, so the code and the numbers cannot drift apart.

Call
import {
  groupEffectiveTaxRate,
  ics,
  icsReceiptPayload,
} from '@graphatlas/kernel/ics';
import type { IcsInput } from '@graphatlas/kernel/ics';
import { receipt } from '@graphatlas/kernel/receipt';

// The example of section 6.3 of the IAIS technical note on the ICS. The note gives a
// requirement before tax of 10,000 and not what it is made of, so all of it is mortality here.
const input: IcsInput = {
  charges: {
    life: {
      mortality: 10000,
      longevity: 0,
      morbidity: 0,
      lapse: 0,
      expense: 0,
    },
    nonLife: 0,
    catastrophe: {
      natural: 0,
      terrorism: 0,
      pandemic: 0,
      creditAndSurety: 0,
    },
    market: {
      interestRate: 0,
      spreadUp: 0,
      spreadDown: 0,
      equity: 0,
      realEstate: 0,
      currency: 0,
      concentration: 0,
    },
    credit: 0,
  },
  exposures: {
    nonLife: { gwp: 0, gwpPrevious: 0, liabilities: 0 },
    lifeRisk: { gwp: 0, gwpPrevious: 0, liabilities: 0 },
    lifeNonRiskLiabilities: 0,
  },
  tax: {
    rate: 0.3,
    limit: {
      subGroups: [
        { name: 'US', liabilities: 8000, carryBack: 100 },
        { name: 'UK', liabilities: 2000, carryBack: 1000 },
        { name: 'Korea', liabilities: 6000, carryBack: 0 },
        { name: 'Japan', liabilities: 4000, carryBack: 0 },
      ],
      earnings: 8100,
      projectedLoss: false,
      dtl: 700,
      dta: 250,
    },
  },
  nonInsurance: 0,
  resources: null,
};

const run = ics(input);
const hash = await receipt(icsReceiptPayload(input, run));

// Section 6.1 of the same note. Three entities, each with a rate and the earnings of three years.
const rate = groupEffectiveTaxRate([
  { name: 'Entity A', rate: 0.3, earnings: [500, 700, -200] },
  { name: 'Entity B', rate: 0.25, earnings: [1000, -100, 900] },
  { name: 'Entity C', rate: 0.2, earnings: [2000, 500, 1500] },
]);
Returns
const out = {
  insuranceRiskCharge: 10000,
  tax: {
    notional: 3000,
    cap: 2400,
    a: 340,
    b: 1215,
    c: 450,
    d: 0,
    utilisable: 2005,
  },
  requirement: 7995,
  rate: 0.2303,
  receipt: '295fe1c1374532438415e2ed3f416164e15bbf5d1dc0187c84422a33d8ddf82d',
};

The call and the numbers come from the engine that built this page, run on the same input as the plate above. The sample is the example of the tax effect that the IAIS works through, and the plate has it as one of its three groups. The tax figures are the ones that the note prints, and the rate is the example of its section 6.1. The plate compares its own receipt with the one printed here. Values are rounded to four places for display. The receipt hashes the unrounded numbers.

Runs on

  • Browser
  • Edge
  • Node.js
  • Python
  • JVM
  • .NET
  • Excel
  • Command line
  • Container

Green surfaces are measured on every build of this site. Each must return the same receipt, bit for bit. The others are packaged targets that the build does not measure. How the platform works

Changes

When the rule moves, so does the engine

Publications that touch this regime, and the release that answered each.

  1. IAIS Clarification

    Clarification on the valuation of insurance contract liabilities

    Shipped as ICS 1.9, 11 days later

Open the full feed

The next step

Bring us
one book

A scoping call, a sample book and a parallel run on your data. Most teams have the first reconciled number inside two weeks, and a receipt for it on the day.

Book a demo Work out a price