What is calculation looping?
Calculation looping is a process whereby parts of the calculation are repeated several times.
In many ways it is similar to the rebasing facility. However, calculation looping differs from rebasing in the following ways:
- With calculation looping the parts that are repeated are repeated for the whole of the period of calculation. With rebasing only the projected part of the period of calculation is recalculated in each loop.
- With calculation looping there is a mechanism to retain some of the values which are calculated in each loop. With rebasing the values which are recalculated in each loop just overwrite the existing values.
Where can calculation looping be used?
Calculation looping can be used in:
- calculating the contractual service margin at the point of sales for in-force policies
- calculating resilience reserves on different interest rates.
- calculating sterling reserves for regular premium pensions business by:
- calculating in one loop assuming premiums continue to maturity and
- calculating in a second loop assuming that premiums cease immediately.
Limitations
- Calculation looping cannot be used inside the rebasing loop.
- Goal-seeking cannot be used inside of a calculation loop.
Variables and Functions
The NUM_CLCLOOPS
Variable
Definition:
specifies the number of calculation loops which are required.
Form:
- can not be t-dependent
- can be a constant, formula, global, parameter, generic table or model point definition
Core/Input:
- It must be included in every product that uses calculation looping.
The CALC_LOOP
and NO_CALC
Functions
CALC_LOOP
Statement:
IF CALC_LOOP = MINRES1_LOOP THEN
4
ELSE IF CALC_LOOP = MINRES2_LOOP THEN
4.5
ELSE
0
NO_CALC
Statement:
IF CALC_LOOP = MINRES1_LOOP THEN
0
ELSE
NO_CALC("C")