Taking too long? Close loading screen.

Calculation Looping

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:
    1. calculating in one loop assuming premiums continue to maturity and
    2. 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")