Skip to content

Pricing Expressions

Risks in ClariNet LS

Risks and stresses in ClariNet LS have historically been expressed using a “Multiplier” and an “Addition”. For example, setting the LE 50 Multiplier in a Risk Scenario to 1.2 would apply a 20% increase to all Insureds' LE 50 when running a Valuation with this Risk Scenario. This simple model will continue to be supported in addition to a new model: expression.

Expressions allow a much more powerful approach to specifying risks. They can be used for LE 50, Mortality Factor, Crediting Rate and COI Rate risks on a Risk Scenario as well as specifying Q(x) Adjustments.

Expression syntax

An expression is a definition of operations on the unstressed input, called x.

Any Multiplier (m) and Addition (a) based risk can be expressed as an expression of the form m * x + a. For example, a Multiplier of 1.2 and an Addition of 2 could be expressed as an expression: 1.2 * x + 2.

Note that L E 50 risks are applied as (x + a) * m .

And for Risk Scenario - MF with a Multiplier of 1.2 and an Addition of 2 could be expressed as an expression: 1.2 * x + 0.02.The Insured Mortality Factor Addition should be in decimal form.

However, the power of expressions is that other operations are supported. For example, applying a maximum value in a Q(x) Adjustment using the built-in min function:

min(200, x)

Built-in min function returns the smaller of the two values which means that the value cannot be larger than 200. So 200 is in fact a maximum value.

The expressions are not case sensitive so min is equivalent to MIN.

Expressions can be nested, for example varying a Q(x) Adjustment by mortality factor:

IIF(mortalityFactor > 1, IIF(mortalityFactor > 2, x * 0.7, x * 0.8), x * 0.9)

In words, this means that when Mortality Factor is:

  • between 0% and 100%, Qx is reduced to 90% of its original value
  • between 100% to 200%, Qx is reduced to 80% of its original value
  • greater than 200%, Qx is reduced to 70% of its original value

Supported operations

SymbolSummaryExample
+Additionx + 1 Adds 1 to x
-Subtractionx - 1 Subtracts 1 from x
*Multiplicationx * 3 Multiplies x by 3
/Divisionx / 3 Divides x by 3
==Equalityx == 1 Evaluates to true when x is equal to 1. Otherwise, evaluates to false
!=Not equalx != 1 Evaluates to true when x is not equal to 1. Otherwise, evaluates to false
<Less thanx < 1 Evaluates to true when x is less than 1. Otherwise, evaluates to false
<=Less than or equalx <= 1 Evaluates to true when x is less than or equal to 1. Otherwise, evaluates to false
>Greater thanx > 1 Evaluates to true when x is greater than 1. Otherwise, evaluates to false
>=Greater than or equalx >= 1 Evaluates to true when x is greater than or equal to 1. Otherwise, evaluates to false

Built-in functions

Function nameDescriptionExample
IIFReturns one of two expressions, depending on the result of the test.IIF(x < 2, 10, 0) Returns 10 when x is less than 2. Otherwise, returns 0.
MAXReturns the larger of two valuesMAX(x, 10) Returns 10 when x is less than 10. Otherwise, returns x
MINReturns the lower of two valuesMIN(x, 10) Returns x when x is less than 10. Otherwise, returns10

Additional context available

LocationDefinition of xAdditional variables
Risk Scenario - LE 50The Insured LE 50, expressed in monthsNone
Risk Scenario - MFThe Insured Mortality Factor in decimal form . E.g. 1 for 100%, 1.5 for 150%None
Risk Scenario - Crediting RateThe crediting rate in decimal form . E.g. 0.05 for 5%None
Risk Scenario - COI RateThe COI RateNone
Q(x) AdjustmentThe improved mqx. I.e. Qx * mortality_factor * improvement_factor
This will always be capped at 1,000
mf - The mortality factor in decimal form.
mortality - The mortality factor in decimal form.
mortalityfactor - The mortality factor in decimal form.