Introduction to Prophet

174
INTRODUCTION TO PROPHET TUTORIAL Release 8.0.2 iWorks Prophet

Transcript of Introduction to Prophet

INTRODUCTION TO PROPHET TUTORIAL

Release 8.0.2

iWorks Prophet

© 2011 SunGard

This document and the software described within are copyrighted with all rights reserved. No part of this document maybe reproduced, transcribed, transmitted,

stored in an electronic retrieval system, or translated into any language in any form byanymeanswithout the prior written permission of SunGard. SunGardmakes

no warranties, expressor implied, in this document. In no event shall SunGard be liable for damagesof any kind arising out of the use of this document or the

information contained within it.

This document contains information that is confidential or proprietary to SunGard (or its direct and indirect subsidiaries). Byaccepting this document you agree that:

(1) if there is anypre-existing contract containing disclosure and use restrictionsbetween your companyand SunGard, you and your companywill use this

information in reliance on and subject to the termsof any such pre-existing contract; or (2) if there is no contractual relationship between you and your companyand

SunGard, you and your companyagree to protect this information and not to reproduce, disclose or use the information in anyway, except asmaybe required by

law.

TRADEMARK INFORMATION

SunGard, the SunGard logo, iWorksand Prophet are trademarksor registered trademarksof SunGard Data Systems Inc. in the U.S. and other countries. All other

trade namesare trademarksor registered trademarksof their respective holders.

Trademarks that are known andmentioned in thismanual have been appropriately capitalised. However, SunGard cannot vouch for the accuracyof the information.

Use of such terms in thismanual should not be regarded asaffecting the validity of any trademark.

SunGard iWorksProphet

Sherwood House, Eastworth Road,

Chertsey, SurreyKT16 8SH,

United Kingdom

Telephone: +44 (0)1932 757 575

Prophet Helpdesk: +44 (0)1932 757 555

Fax: +44 (0)1932 757 518

Email: [email protected]

Web Site: www.prophet-web.com

Document No: PR802-3001-0411 4473 27/04/2011 : 20:49:53

CONTENTS

Welcome to SunGard iWorks Prophet Professional 1

How this tutorial is organised 3

Setting up a simple product 5

What is a product? 6

Tutorial product details 7

Starting the tutorial 11

A Tour of Prophet Professional 8 14

The product design process 16

Tables used by products 17

Creating the product 18

Selecting the indicators 20

Specifying the input variables 26

Additional information 39

Extended Lesson 42

Setting up model point files and tables 61

Introduction 62

Setting up a structure 63

Setting up the model point file 65

Setting up a parameter file 69

Setting up a global file 72

Setting up, running and reporting on a product 77

Setting up a run setting 78

Running the product 86

Identifying why a run has failed 89

Viewing results produced in a run 92

ii

Reporting on dependencies in Diagram View 97

Introduction 98

The Diagram View window 99

Using Diagram view to identify how to change the product 102

Updating libraries and products 105

Adding a new variable to the library 106

Updating the product 111

Scenarios that show the effects of product changes 123

Identifying an error in the run 125

Further topics 127

Regeneration of products 128

Re-scanning of products (Auto-Scan) 129

Conclusion 130

Conventional product input files & results 131

Product listing 132

Model point files 143

Parameter file 144

Global file 145

Results 146

International product input files & results 151

Product listing 152

Model point files 162

Parameter file 163

Global file 164

Results 165

1

Welcome to SunGard iWorks Prophet Professional

SunGard iWorks Prophet is an enterprise-wide actuarial modelling system. It is a leading risk management platform

used by the financial services industry around the world to model companies’ financial business.

Prophet Professional is the desktop platform. It is an integrated suite of actuarial systems used primarily by

insurance companies to perform actuarial calculations including

l Profit testing

l Projections

l Statutory valuations

l Asset liability modelling

l Stochastic modelling and

l Risk management

Currently used by over 7,500 people in over 500 companies in more than 55 countries around the world.

About this tutorialIf you are new to Prophet or want an overall perspective of the main features then this is the tutorial for you. On

completing the tutorial you will be able to:

l Set up and run the calculations for a single traditional insurance product using a library containing variables

used for the calculations.

l View the generated results of the product calculations

2 Welcome to SunGard iWorksProphet Professional

l Use Diagram View to analyse and update the product

The tutorial also shows you how to monitor the effects of changes made to a product and how new calculation

variables can be added to a library.

Pre-requisitesBefore you start this tutorial you should ideally spend some time reading Chapters 3 and 4 of the Prophet User's

Guide. This will provide you a background to some of the screens, menus and options that are available.

In particular, to get the most out of this tutorial it is assumed that:

l You have an understanding of actuarial concepts.

l You are comfortable with using Microsoft Windows and understand how to choose menu commands, select

text, drag and drop items and other standard windows procedures

It is expected that by the time you complete and run your single insurance product you will have mastered the basic

principles involved in creating and managing a product. Your subsequent products will then become easier to

develop.

Library requirements

This tutorial assumes that you will be creating and managing traditional insurance products using either the

Conventional or International library supplied with Prophet. In particular:

l The Conventional library is focused on the product features common in the UK and is also applicable in other

markets such as Australia and South Africa.

l The International library is focused on the features common in continental European markets except for the

German, French and North American markets for which specific libraries are available.

NOTE: This tutorial does not support the German, French or North American libraries. Separate versions of this

tutorial are available that can be used with these libraries.

How this tutorial is organised 3

How this tutorial is organisedThe tutorial is set out in a number of lessons each of which can be regarded as separate. You can take a break at

the end of any lesson. However, the lessons need to be tackled in the specified order as each lesson uses and

depends on the results from the previous lessons.

The tutorial is divided into the following lessons:

l Setting up a simple product

In this lesson you set up a simple Prophet "product". Products are the central components of Prophet and

contain the formulas and inputs used to model each insurance policy.

l Setting up test model point files and tables

This lesson introduces you to the Prophet Table Editor. You set up some policy data to be used by the product

specified in Lesson 1. You also set up the tables it uses.

l Setting up, running and reporting on a product

In this lesson you first set up a run setting to project the product specified in Lesson 1. You then execute the

product using the data and tables set up in Lesson 2. Finally you look at the results from within Prophet.

l Reporting on dependencies in Diagram view

In this lesson you use Diagram view to inspect the formulas used in your product and the dependencies

between them. This facility is useful both for understanding how the formulas interrelate and for debugging

purposes.

l Maintaining an actuarial library and updating the product

In this lesson you are introduced to the processes involved in updating the underlying library. You add a new

variable to the library and update your product to use it. You also make a number of further changes to your

product so that you are introduced to some more Prophet features.

l Further topics

In this lesson you learn about a number of further features of Prophet such as Regenerate and Auto-Scan.

4 Welcome to SunGard iWorksProphet Professional

l Conventional and International reference sections

These two sections contains the definitions of all the variables and tables used and produced as you go

through the tutorial using either the Conventional or the International library.

You can compare your products and tables with these to check your work and to help you diagnose any

problems that may arise during the tutorial.

5

L E S S O N 1

Setting up a simple product

In this lesson you will start Prophet and use it to set up a Prophet product to carry out the calculations for an

insurance product.

T O P I C S I N T H I S L E S S O N

What is a product? 6

Tutorial product details 7

Starting the tutorial 11

A Tour of Prophet Professional 8 14

The product design process 16

Tables used by products 17

Creating the product 18

Selecting the indicators 20

Specifying the input variables 26

Additional information 39

Extended Lesson 42

6 Lesson 1 Setting up a simple product

What is a product?You can think of products in Prophet as computer programs. The only difference is that Prophet takes care of much

of the programming and you need only specify the actuarial calculations required.

You set up products in Prophet to reflect both your insurance products and your business requirements. For

example, you can set up a number of conventional, unit linked and summary products in order to calculate

embedded values.

Products and actuarial librariesA product is associated with a library of actuarial formulas from which it is defined. For example, a conventional

product is a product defined using the Conventional library. Similarly, a summary product is a product set up using

the Summary library.

The first letter of a product name identifies the library from which it is defined. For example, a product named C_

TERM is based on the Conventional Library and a product named U_MIP_ is based on the Unit Linked Library.

Variables and indicatorsA product also consists of a number of input and core variables which together define the calculations to be

performed. When you specify a product you select a number of indicators for it. These indicators define the scope of

the calculations required and determine which variables are included.

l Input variables

These define the calculations which can vary from product to product or from company to company. When you

create a new product default definitions for each input variable are presented on the screen, based on the rules

specified in the associated library. You can then accept these definitions or modify them to enable you to

specify the exact calculations you require for each product.

l Core variables

The appropriate core variables are included automatically for each product, based on the rules specified in the

associated library. Core variables are used to define calculations which are generally generic in nature, for

example commutation functions and basic accounting relationships.

Tutorial product details 7

Tutorial product detailsThe product that is modelled in this tutorial is a simple one so that it can be set up using either the Conventional or

the International library. The details of the product that are covered include:

l Benefits

l Premiums

l Expenses

l Commission

l Taxation

l Reserving

l Mortality Experience

l Lapses

l Future Investment Earnings

l Discount Rates

l Projection Data

Note that the tutorial is primarily concerned with showing you how to use Prophet. It does not address actuarial

issues such as the appropriateness of the calculations for any specific company or country.

BenefitsThe product is a non-profit endowment, so there is a guaranteed sum assured payable on death or maturity.

A surrender value of half the premiums paid, accrued with 5% interest p.a., is payable in the first two years. After

that, the surrender value is equal to the net premium reserve using 100% of the mortality table AM92 Ultimate for

the Conventional product and GKM80 for the International product and an interest rate of 5%.

8 Lesson 1 Setting up a simple product

PremiumsPremiums may be paid annually, half yearly, quarterly or monthly.

ExpensesInitial expenses are currently 160 per policy. Renewal expenses are currently 24 per policy per annum and are

expected to grow in accordance with the Consumer Price Index (assumed to be 4% per annum).

CommissionThe office pays an initial commission as a percentage of the first year's premiums, according to the following table.

This is paid in full on inception with “clawback” if the policy lapses before 2 years premiums have been paid in the

case of the Conventional product and 1 year in the case of the International product. Commission rates for

intermediate numbers of years are obtained by interpolation. Renewal commission of 3% of premiums is paid after

the first year.

Policy Term in Years Initial Commission %

0 - 5

10

15

20 - 30

10

25

35

40

TaxationFor the Conventional product you will assume that the office is a mutual. Hence, taxation will be on an "investment

income minus expenses" basis with tax rates assumed to be 20% on franked investment income and 25% on other

income less expenses.

For the International product profits are taxed at 33%.

Tutorial product details 9

ReservingThe net premium method is used for reserving purposes, using 100% of the mortality table AM92 Ultimate for the

Conventional product and GKM80 for the International product, and an interest rate of 3%. A Zillmer adjustment is

not used

The product will include a solvency margin. You will use the European solvency margin requirements, namely 4%

of the reserves and 0.3% of the sum at risk.

Mortality ExperienceThe current mortality experience is 85% of the mortality table AM92 Select for the Conventional product and 85% of

the mortality table GKM80 for the International product. This is expected to continue.

LapsesAt present, lapse rates are as set out in the following table and this experience is expected to continue:

Years in Force Lapse Rate (%)

£ 1

£ 3

thereafter

10

7.5

3

Future Investment EarningsThe company expects to earn 7% gross on equities (made up of 3% income and 4% growth) and 5% gross on fixed

interest government stocks (all made up of income). The product is backed 75% by equity type investments and

25% by fixed interest type investments. 15% of the equity type investments are assumed to be realised each year,

with reinvestment into similar investments.

Discount RatesFuture profits will be discounted at three different rates of 6%, 8% and 10% to put a value on the business.

10 Lesson 1 Setting up a simple product

Projection DataThe product will be run using policy data as at 31 December 2010.

Starting the tutorial 11

Starting the tutorialThe tutorial requires that Prophet is installed on your PC. If you have not yet installed Prophet then please refer to

the Installing Prophet section of the Prophet Technical Guide.

Starting Prophet and creating a newworkspaceTo start Prophet do the following:

l Click the Start button on the Windows desktop and point to All Programs.

l Select the SunGard iWorks program group, then Prophet Professional 8.0 and then click the Prophet

Professional option.

l The Prophet start page is then displayed.

12 Lesson 1 Setting up a simple product

Creating a newProphet workspaceA workspace is the environment in which you work with Prophet and consists of objects such as products and

libraries. Some objects, such as products, are saved in the workspace file (prophet.prw). File objects such as table

files that are referenced in the workspace are usually stored in the same location as the workspace or in its

subfolders.

To create the new Prophet workspace:

l Create a new workspace with standard libraries by clicking on Create a NewWorkspace as shown below

l If you have permissions enabled you need to enter your username and password as specified by your

administrator

l The dialog below will open

l For the purposes of this tutorial enter C:\Prophet_Tutorial as the location of the New Workspace that you will

create.

l Enter a suitable description, for example "Introduction to Prophet Tutorial Workspace".

This tutorial uses the Standard Libraries (Conventional or International), but not the full example template, so:

Starting the tutorial 13

l Select the Install Template option and, if necessary, select Example Model Office from the drop-down list.

l Select the Install Libraries Only option.

l Click OK to create the new workspace. The screen should look as shown below

14 Lesson 1 Setting up a simple product

A Tour of Prophet Professional 8During the tutorial certain areas of Prophet may be referred to. Although you won't be able to see all of the panels

and areas now, the diagram and descriptions below will be useful for reference.

The RibbonThis is at the top of the screen it is from here that you can perform actions on the objects opened in the Main

Window or selected in the Tree or the List. There are 4 main Ribbons: Home, Object, Utilities and Support and 4

context sensitive ribbons Design, Diagram, Table and Print Preview. Each ribbon is subdivided in sections.

ATour of Prophet Professional 8 15

The Tree and AccordionThis is to the left of the MainWindow. The accordion is the section at the bottom, and it is from here you can choose

the starting point of the tree. The tree has been designed to show the interrelationship between the different

Prophet objects. You may find it useful at the end of this tutorial to explore the new product you have created.

The Prophet Button andQuick Access ToolbarThis is the button with the Prophet logo in the left hand corner; similar to Microsoft Office. It contains general actions

and a useful Options button. To the right of the Prophet Button is the Quick Access Toolbar which can be

customised.

TheMainWindowThis is generally editable and is where details of opened objects are displayed.

The Level TabsThere are three level tabs which give context to the open windows; the top level can be expanded to view the

objects as a list. The top level may not be showing when you first open Prophet Professional 8. To view it, click on

the Group Tabs button in the View section of the Home Ribbon.

Other features mentioned in the diagram above may be useful to explore after this tutorial.

16 Lesson 1 Setting up a simple product

The product design processThe process involves

l Creating and specifying the product, this involves selecting indicators and therefore variables to be used by the

product. Variable definitions can also be changed so that they use values from data files.

l Creating data files used by the product.

l Specifying the products used for the calculations. A structure is used to specify which products and

accumulations are used in a calculation run. An accumulation is used to sum the results from more than one

product calculation run.

l Specifying calculation run settings and running the product calculations. The run setting specifies amongst

other options which tables are used and the type of results to be produced. Once the run setting is specified

you click Run to start the calculation run.

l Displaying and analysing the results of the calculation run.

Tablesused byproducts 17

Tables used by productsl Model Point File. This file contains all the policy specific information, for example the age at entry of the

policyholder.

l Global File. This file contains information which is the same for every product in the run, for example the

consumer price index inflation rate.

l Parameter File(s). These files are used for the product specific information, which is the same for all the

policies of a particular product, for example the annual renewal expense per policy for each product.

18 Lesson 1 Setting up a simple product

Creating the productFrom the accordion select Products and Accumulations.

In the Edit section of the Home ribbon click on New. Then select New Product.

Fill in the details as in the dialog below:

l Name

The product Name has to be six letters long. The first letter in the product name refers to the library which is

being used and cannot be changed. If you are using the Conventional library, the first letter of the product must

be a C. For the International library the first letter must be I. For the rest of the Name, type _ENDT. That is, the

name is either C_ENDT or I_ENDT.

l Description

This describes the product. Enter Tutorial Product.

l Library

Allows you to choose the library used by the product. It is automatically set as soon as the first letter of the

product name is entered.

l Same As

Allows you to specify that a product is the same as another product. In this case Prophet would carry out exactly

the same calculations as for that other product, but it uses its own model point file, its own name when

accessing parameter file(s) and produces its own results. Hence you do not need to specify the calculation

rules separately. This option is not selected for the tutorial product.

l Level Number

Allows you to specify the order of processing of products and accumulations. Retain the default value of 10.

Creating the product 19

Additional product property optionThe following options can be applied to a product. They are not however, used in the tutorial product that you are

creating.

l Use in memory dynamic/stochastic calculations

This option allows you to perform dynamic runs in memory which speeds up the calculations. This option is not

used for the tutorial product.

l Apply strong t-limiting

This option allows you to optimise the calculated time periods in dynamic runs. This option is not used for the

tutorial product.

l Use a separate calculation array for each model point

This option allows you to specify that each variable for each model point has its own array in memory. This

option is not used for the tutorial product.

When you have entered the options click OK. The Select Indicators dialog is then displayed from which the

indicators for the tutorial product are selected.

20 Lesson 1 Setting up a simple product

Selecting the indicatorsWhen you have completed the Product Properties dialog and clicked OK you are presented with the Select

Indicators dialog which appears similar to the following:

The dialog shown above is for the Conventional product but the one for the International product is similar.

Indicators define the broad outline of the product and are used to determine which variables are brought into the

product. This can be best explained with a simple example:

Selecting the indicators 21

An indicator is associated with a particular feature you want your product to have, for example a regular premium

policy would require the indicator REG_PREM. By choosing this indicator you will be provided with those input and

core variables required to model a regular premium product. If you don't select it you will be provided with the

variables to model a single premium product.

The indicators therefore specify the broad scope of the product and limit the available variables to only those

required for the product.

Note the following:

l In the list on the right all the indicators selected for this product are shown with their description and code. For a

new product these are the indicators that are selected by default.

l The middle list contains the indicators that are available but have not been selected for the product. By

selecting an indicator and clicking on > you can move the selected indicator to the selected list on the right.

l The indicator outline on the left displays the indicator categories. When you select a category, for example "H -

Product Types", only those indicators associated with the category are displayed.

l Every indicator has a code that has a letter followed by a 2 digit number. The letter specifies the indicator

category, listed in the outline, to which the indicator belongs. The number specifies the location of the indicator

in its category.

l You can resize the Select Indicators dialog by "grabbing" the right hand corner of the dialog with the mouse

and sizing the dialog to the desired size. You can also drag the horizontal scroll bars across to display these

codes and the dividers that separate the panes.

l The Hide Unselectable option at the bottom of the dialog enables you to hide or display those indicators that

cannot be selected or used by the current product.

l The Hide Advanced option at the bottom of the dialog enables you to hide or display advanced indicators. An

advanced indicator is specified in the library used by the product and is mainly used for complex models.

22 Lesson 1 Setting up a simple product

l The Show Selection Criteria option enables you to hide or display the Indicator Selection Criteria pane which

can contain an indicator expression associated with a selected indicator. An indicator expression is specified

for an indicator in the library used by the selected product. The expression specifies whether the indicator is

dependent on the presence or absence of other indicators. Generally, selecting such an indicator also selects

other indicators as specified by the conditions specified in the indicator expression.

l The panel at the bottom of the dialog displays actuarial documentation for the selected indicator or indicator

category. The documentation explains the purpose of each indicator and the features that could be included in

the product if the indicator is selected.

l If you clickWizard in the bottom left corner an Indicator Selection Wizard is displayed which makes it easier for

you to see the documentation for each indicator and to select the indicators that you require.

Default IndicatorsLet's take a look at the indicators that are selected by default:

Indicator Description

ALWAYS Brings in variables that are required in every

product. For example, the age at entry and policy

term variables.

Selecting the indicators 23

Indicator Description

PROJ Used to project business that is already in force

and new business. It brings into the product

variables that define, for example, the expired

duration and currently declared bonus (if the

product is with-profit). If not selected then these

variables are not included and only new

business can be projected.

REG_PREM Used if premiums are to be paid regularly (that is

the product is not a single premium contract).

ENDOWMENT Used for an endowment type product. If you wish

to model a different type of product, then you

would deselect the ENDOWMENT indicator and

select a different indicator (for example WHOLE_

LIFE for a whole life contract).

SURR_VALUES Used if a surrender value is payable on early

termination of the policy. If not selected, then it is

assumed that no surrender value is paid if the

policy lapses (as would be the case for a term

assurance product).

OTAX_ON_I_E The tax indicator selected by default for a new

Conventional business product. It is used if the

tax payable by the office is based on a

percentage of investment income and realised

chargeable gains less relievable expenses and

annuity payments. This is the basis that applies

to life business in the UK.

OTAX_ON_PROF The tax indicator selected by default for new

International products. It is used if the tax

payable is calculated as a percentage of gross

profit.

24 Lesson 1 Setting up a simple product

Indicator Description

ONE_VALBASIS Used if the same valuation basis is applied to

the attaching bonus (if with-profits) and paid-up

policies (if specified) as is applied to the basic

benefit.

DISC_PROFITS Used if Prophet is needed to calculate the

discounted value of future profits. It allows the

discounting to be at three different interest rates.

Adding an additional indicatorFor the tutorial product you also need to add the SOLV_MARGIN indicator by double clicking on it in the middle list

of the Select Indicators dialog.

Alternatively, you can locate the indicator by clicking the "Q - Solvency Margin" category in the outline which then

displays only those indicators associated with the category. In this case it is the SOLV_MARGIN indicator only.

The Indicator Wizard

If you clickWizard the Indicator Selection Wizard is displayed. There is one step for each of the indicator categories.

You can select or deselect an indicator using the appropriate checkbox. This makes it much easier to select the

indicators you are interested in.

In the Solvency Margin section shown below, make sure the box next to the SOLV_MARGIN indicator is ticked.

Selecting the indicators 25

Click Finish to return to the Select Indicators dialog.

If you click "All Indicators" in the upper left pane in the Select Indicators dialog then all the indicators selected for the

tutorial product are displayed in the right hand list. For more information on any of the indicators refer to the relevant

chapter of the Conventional or International Library Manual or to the actuarial documentation in the bottom pane.

Click OK to accept the list of indicators. In the main window the new product is opened and the list of input variables

is displayed in the C_ENDT Preview (or I_ENDT Preview) tab.

26 Lesson 1 Setting up a simple product

Specifying the input variablesAfter you have selected the indicators to be used by the product you next specify the input variables for the product.

You can see that all the variables have status "Not Defined".

To produce the list of input variables Prophet has scanned the library and brought into the product all the input

variables with default definitions that match the indicators that have been selected. Input variables are those which

need to be defined for each product. At a later stage, “core” variables are added to the product to complete the

specification of the calculations. Core variables are not displayed since their definitions apply across all products.

More detailed information about input variables is given in the additional information section at the end of this

chapter.

Defining the variables in the productYou are now in a position to begin entering definitions for these variables so that they reflect the product details

listed earlier in this lesson.

To look at the default definition for a variable click on it in the C_ENDT Preview tab and the definition appears in the

bottom pane. You can drag the divider up if it is not fully visible. You can go up and down the list and define

variables in any order. However, for a new product it is sensible to define them in variable code order. You can re-

order them by clicking on any of the column headings. To change the definition of a variable, either select it and

click Open or double-click on it.

As with indicators, each variable is assigned to a category by its variable code. This code is made up of two letters

followed by a two digit number. There is an arrow to the right of the Code heading along the top of the main

window; this can be used to filter the input variables by category.

The filter initially just shows the description for the first letter of the category. If you click on one of the plus signs it

will open up to show the descriptions for the two letter categories and will filter the list of variables.

In the following sections you will specify the input variables within each of the categories.

As we will be accepting most of the default input definitions, this tutorial can be approached in two ways. In the main

body only the variables which require change are listed.

Specifying the input variables 27

If, however, you wish to define every input variable and also have some useful background information please skip

to the section Extended Lesson at the end of this chapter.

General variablesThese have a variable code beginning with A. If necessary, click the Code column so that the AGE_AT_ENTRY

variable is at the top of the list

To see the definition for the AGE_AT_ENTRY (age at entry) variable, select it in the list and double click or click

Open from the Home Ribbon. A new window underneath the C_ENDT product has opened called AGE_AT_

ENTRY. The Design ribbon menu has appeared and the definition for the variable is displayed.

The default definition for AGE_AT_ENTRY is Model Point. This means that when the product is run, Prophet will

read the value to be used for this variable from the model point file that you will set up for this product. This file will

contain lines to represent different policies. Each line may represent an individual policy or it may represent a

number of policies that have been grouped together.

28 Lesson 1 Setting up a simple product

Accept this definition by clicking on the OK or Next icon. As part of this process Prophet checks the definition for

any syntax or similar errors.

PREM_PAYBL_M variable

The variable PREM_PAYBL_M (number of months premiums payable) should be defined as a Model Point. To do

this, open the variable, click Change Definition Type and you will see the following dialog:

Select Model Point and click OK. Notice how the icon shown for the open window for PREM_PAYPL_M has

changed to reflect this.

From to

Save the definition by clicking on Ok.

PREM_FREQvariable

PREM_FREQ (premium frequency) should also be defined as a Model Point.

No other variables in this category need changing.

Specifying the input variables 29

BenefitsThe following variables relate to the benefits aspect of the tutorial product, these have a variable code beginning

with E.

SURR_VAL_PP variable

The default definition for SURR_VAL_PP (surrender value per policy) needs to be amended to allow a surrender

value of half the premiums paid accrued with interest to be paid in the first two years.

Replace the lines:

IF t <= NIL_SURR_P_M THEN

0

With

IF t <= 23 THEN

(SURR_VAL_PP(t-1) + PREM_INC_PP(t) * 0.5) * (1 + SURR_INT_PC/100)^(1/12)

l Type the changes directly into the formula.

Instead of typing the name of the variable SURR_VAL_PP in full, you can type SUR and press F3 to list all the

variables that start with SUR. You then locate and select SURR_VAL_PP and click OK to enter it into the formula

definition.

The surrender value at the end of month t equals the surrender value at the end of month (t-1) plus half the premium

paid in month t, accrued with interest.

The variable t (time) runs in months from 0 immediately prior to the issue of the policy up to the end of the policy

term.

This formula introduces some of the syntax available for formulas as well as some "best practice" guidelines for

entering formulas using Prophet:

l t (time) is entered in lower case type.

30 Lesson 1 Setting up a simple product

l Although excess spaces in the formula are ignored, for readability you should indent the code below IF and

ELSE lines by two spaces.

If there are any syntax errors in the formula or if it contains any invalid variable names then Prophet will not accept

the definition. However, this formula includes a deliberate mistake in the logic so that later in the tutorial you can

see how Prophet handles such errors. Can you spot it now?

When you have amended the formula, click OK to accept the changes.

The list of input variables is then displayed.

SURR_NETPREM variable

In the list of variables, click on SURR_NETPREM (surrender net premium). You can see in the bottom pane that it

has a formula definition that references SURR_ZILLMER (surrender Zillmer). If you look at the list of variables in the

C_ENDT Preview window, you will see that the list does not include SURR_ZILLMER at the moment. However, if

you now click Open to open the variable SURR_NETPREM and click OK to accept its default definition, you will see

that the variable SURR_ZILLMER has been brought into the list of variables.

Prophet expands the list of variables as you accept definitions - this approach is adopted so that variables are not

brought into the product unnecessarily. For example, if you had wanted to change the definition of SURR_

NETPREM so that it did not use SURR_ZILLMER, that variable would have been needed in the product. These

variables (such as SURR_ZILMER in this example) are called Secondary Input variables.

SURR_INT_PC variable

l The interest rate at which the surrender value is calculated is 5%, so for the variable SURR_INT_PC (surrender

interest rate) click Open, type 5, delete the 0 and click OK.

It would be better to define SURR_INT_PC as a parameter definition but this allows you to practice amending a

constant definition in this tutorial.

Reserving / Solvency / Accrual MethodsThese variables have a code beginning with F; we will accept the default definitions for all of the variables in this

category.

Specifying the input variables 31

Interest RatesThese variables have a code beginning with G. The following five variables represent the components of the

investment return.

Variable Description

FII_PC Annual rate of franked investment income

UFII_PC Annual rate of unfranked investment income

RCG_CHG_PC Annual rate of chargeable realised capital gain

RCG_UNCHG_PC Annual rate of unchargeable realised capital

gain

UNRCG_PC Annual rate of unrealised capital gain

The actual values that should be entered will be discussed in the next chapter, Lesson 2, when you set up the

model point files and tables. The values of these variables (which are essentially interest rates) may change

between groups of products. For instance, non-profit and with-profit products will usually be backed by different

mixes of assets. You will amend these variables to refer to other variables which will read the appropriate values

from the global file.

One way to do this would be to open each variable, click Change Definition Type and then select Formula, change

the formula to reference the required variable and click OK as with SURR_VAL_PP. However, this is not necessary

since the required formulas have already been set up as "alternative definitions". Alternative definitions are

alternatives to the default definitions and have been set up in the libraries for a number of variables where

commonly used alternatives exist.

Open the FII_PC variable, click Select Definition. The following dialog is displayed for the Conventional product (a

similar dialog is displayed for the International product):

32 Lesson 1 Setting up a simple product

Click on the line:

NON PROFIT BUSINESS 6 Formula Alternative

and then click OK to accept this.

Repeat the process you have carried out for FII_PC for the other four components of investment return (UFII_PC,

RCG_CHG_PC, RCG_UNCHG_PC and UNRCG_PC) always selecting the "NON PROFIT BUSINESS" alternative

definition.

SOLV_INT_PC variable

The variable SOLV_INT_PC is the interest rate on the solvency margin and should be changed to a global

definition.

TaxThese are variables with a code beginning with H. We will use the default definitions for all of the variables in this

category.

CommissionThese are variables with a code beginning with I. The following variables relate to commissions.

Specifying the input variables 33

IC_PAYBL_PP variable

The first commission variable is IC_PAYBL_PP (initial commission payable per policy).

For the C_ENDT tutorial product accept the default definition (by opening and clicking on Ok).

For the I_ENDT tutorial product you need to amend the default definition as it currently spreads initial commission

payments over the first year, depending on the frequency of premium payments. One way to do this is to open the

variable and change the formula to make the commission payable on inception. A better option is to make use of an

"alternative definition". Click on Select Definition as before and in the Select Definition from Library dialog select the

line starting with "INDEMNITY COMMISSION PAID MTH1" and click OK. You will see that this is a formula that pays

all the initial commission in the first month. Click OK to accept the alternative definition.

IC_RATE_PC variable

You are now going to use the variable IC_RATE_PC to define the initial commission rate. The following formula

defines the percentage of annual premium that is paid as initial commission:

IF POL_TERM_Y <= 10 THEN

3 * POL_TERM_Y - 5

ELSE IF POL_TERM_Y <= 15 THEN

2 * POL_TERM_Y + 5

ELSE IF POL_TERM_Y <= 20 THEN

POL_TERM_Y + 20

ELSE

40

To enter the formula:

l Open the variable IC_RATE_PC and click Change Definition Type.

l Select Formula and type in the formula shown above. Note that you can use Cut, Copy and Paste in the same

way as in other Windows applications.

l After entering the formula, click Ok to accept it.

If there are any syntax errors in the formula, an error message with the probable location of the error is displayed.

34 Lesson 1 Setting up a simple product

Note that this approach demonstrates how to use a formula to define initial commission rates. A formula is only

feasible if there is a pattern in the values. In Lesson 5 you will see how these values can be entered in a table that

can be read by the product.

IC_EARNL_PP variable

For the C_ENDT tutorial product accept the default definition.

For the I_ENDT tutorial product use the alternative definition for IC_EARNL_PP (initial commission earned on

lapses per policy).

To do this:

l Select the IC_EARNL_PP variable and choose Select Definition.

l Click on the line beginning with "EARNED UNIFORMLY OVER N MONTHS" and click Next.

RC_PAYBL_PP

Accept the default definition.

RC_RATE_PC (renewal commission rate).

Apply a parameter definition to the variable.

ExpensesThese variables have a code beginning with J and relate to the expenses aspect of the tutorial product.

INIT_EXP_PP variable

The next variable in the list is INIT_EXP_PP, the initial expense per policy. You will see that this is made up of three

components: a fixed per policy expense, a percentage of the sum assured and a percentage of the annual

premium.

To model this product you are just using a fixed per policy expense. You should accept the formula for INIT_EXP_

PP using Ok.

IE_FIXED variable

For the IE_FIXED (fixed initial expenses) variable change its definition to a parameter type.

Specifying the input variables 35

REN_EXP_PP variable

The Conventional library formula for REN_EXP_PP (renewal expenses per policy) is:

IF t >= RE_START_M AND t <= POL_TERM_M THEN

RE_FIXED_Y/12 * RE_INFL_ADJ(t-1)

ELSE

0

The International library formula for REN_EXP_PP is:

IF t >= RE_START_M AND t <= POL_TERM_M THEN

RE_FIXED_Y/12 * RE_INFL_ADJ(t-1)

+ RE_AP_PC/100 * ANN_PREM_PP(t)

ELSE

0

By looking at the formulas for REN_EXP_PP you can see that the variable RE_START_M is the month in which

renewal expenses are first assumed to be incurred. This normally depends on how expenses are analysed in the

office. The formula indicates that renewal expenses are incurred in each month during the policy term in and after

this "start month". Their amount increases with inflation from the start of the projection period.

For the Conventional library definition accept the default definition for REN_EXP_PP.

For the International library formula note the following additional line:

+ RE_AP_PC/100 * ANN_PREM_PP(t)

This allows renewal expenses to be expressed as a percentage of the annual premium. As you are only assuming

fixed renewal expenses, you could delete this line from the formula but this would make your product less flexible.

International library users should therefore also accept the default definition of REN_EXP_PP.

RE_FIXED_Y variable

Define RE_FIXED_Y (fixed annual renewal expenses before inflation) as a parameter type.

36 Lesson 1 Setting up a simple product

MortalityThese variables have a code beginning with K and relate to the mortality aspect of the tutorial product.

Q_EXP_PN variable

The next variable is Q_EXP_PN which specified the mortality table used for the experience basis.

For the Conventional product C_ENDT the mortality table AM92 is used, so accept the default definition.

For the International product I_ENDT the mortality table GKM80 is used.

The location of the mortality tables is set when Prophet is first installed. For example:C:\Documents and Settings\All

Users\Application Data\SunGard\Prophet80\MORT. You can check this location in Table Options on the Prophet

Button

To select a different table click on Browse, browse to the mortality table location as mentioned above and select the

relevant table. Note that GKM80 is an ultimate table, but the Select/Ultimate setting can be left unchanged as

Prophet will ignore this setting for an ultimate table.

PROP_EXPQ_PC variable

Amend PROP_EXPQ_PC, the percentage of the experience mortality rates, to be a parameter definition type.

Q_SURR_PN variable

The next variable is Q_SURR_PN which specifies the mortality table used for the experience basis.

For the Conventional product C_ENDT the mortality table AM92 is used, accept the default definition.

For the International product I_ENDT change the mortality table to GKM80 as above.

Q_VAL_PN variable

This specifies the mortality table used for the valuation mortality basis.

For the Conventional product C_ENDT the mortality table AM92 is used, accept the default definition.

For the International product I_ENDT change the mortality table to GKM80 as above.

Specifying the input variables 37

PROP_VALQ_PC

The percentage of the valuation mortality table used should be a parameter definition type, so you should amend

this accordingly.

DecrementsThese variables have a variable code beginning with L.

The next variable to change is ANN_LAPSE_PC, which is the percentage of policies that lapse or surrender each

year. You will notice from the formula as it stands that you are allowed to enter different lapse rates in the first year;

the second year; and then after the second year. You want to amend the formula so that there are different lapse

rates in the first year; the second and third years; and after the third year. To do this, go to the following line:

ELSE IF t <= 24 THEN

If you change the 24 to 36, then the line YR2_LAPSE_PC * YR2_LAPSE_SY will apply during the second and the

third years. All other variables in this category will use the default definition.

Initial ValuesThese variables have a variable code beginning with N.

INIT_POLS_IF

This variable (initial number of policies in force) should be given a Model Point definition.

38 Lesson 1 Setting up a simple product

Saving the productOn the home ribbon click Save. The warning below will be displayed.

If you are doing the longer version of this tutorial, click Cancel and return to the product. Then find the definitions

that have status Not Defined and check their definitions from the section at the end of this chapter.

For the quicker version of the tutorial click OK.

You should then see the following dialog:

Click OK to save the product.

The product has been saved and you can view it in the tree.

Additional information 39

Additional information

Input variables

To explain the concept of input variables it is useful to look at the definitions of the variable MAT_BEN_PP (maturity

benefit per policy).

Click Libraries in the accordion and double click Conventional to open the Conventional Library. A list of variables

in the library is displayed. To select the variable MAT_BEN_PP, just type the letters MAT in quick succession in the

list.

NOTE: If the variables are not displayed in alphabetical order in the Main Window you can click the Name column

to rearrange them. The columns in the List of Definitions pane can be expanded to show more or less of the

Indicator Expression for example.

In the case of the Conventional Library as shown below, you will see that there are two definitions.

40 Lesson 1 Setting up a simple product

In the case of the International library there are five definitions. The definition that is brought into a product depends

on the combination of indicators selected.

Your chosen combination of indicators brings in the formula definition SUM_ASSD_PP(t), that is the sum assured.

This is the default definition for a non-profit product. Once brought into the product it can be amended if required.

Additional information 41

Variable naming conventionEnd characters Description

_PC Indicates that the variable takes values entered

as a percentage, so 3% would be entered as 3.

For example, VAL_INT_PC.

_M Indicates that the variable takes values entered

as months, so 3 years would be entered as 36.

For example, INIT_PER_M.

_Y Indicates that the variable takes values entered

as years. For example, POL_TERM_Y.

_PN Indicates that the variable takes values entered

as a proportion, for example from a mortality

table. For example, Q_EXP_PN.

_IF Indicates that the variable takes values entered

for in force business. For example, NO_POLS_

IF.

_PP Indicates that the variable takes values entered

as per policy amounts. For example, MAT_BEN_

PP.

42 Lesson 1 Setting up a simple product

Extended Lesson

General variablesThese have a variable code beginning with A. Click the Code column so that the AGE_AT_ENTRY variable is at

the top of the list

To see the definition for the AGE_AT_ENTRY variable, select it in the list and double-click or click Open from the

Home Ribbon. A new window underneath the C_ENDT product has opened called AGE_AT_ENTRY. The Design

ribbon menu has appeared and the definition for the variable is displayed.

Accept this definition by clicking on the OK or Next icon. As part of this process Prophet checks the definition for any

syntax or similar errors.

SEX variable

This variable has a default definition of Model Point and can be accepted.

Extended Lesson 43

ENTRY_YEAR and ENTRY_MONTH variables

The next two variables, ENTRY_YEAR (year of entry) and ENTRY_MONTH (month of entry) have formula

definitions. There is no need to change these.

POL_TERM_Y variable

POL_TERM_Y (policy term in years) is defined as a Model Point.

ADD_TERM_M variable

Accept the default definition of zero for ADD_TERM_M (additional term in months).

ANN_PREM_PP variable

The default formula definition of ANN_PREM_PP (annual premium per policy) can be accepted. This formula would

need to be changed if the product had increasing premiums. You can accept the default Model Point definition for

ANNUAL_PREM (annual premium).

NOTE: You will often get pairs of variables structured like ANN_PREM_PP and ANNUAL_PREM. The variable

ANNUAL_PREM is normally given a model point definition that specifies the current or original premium whereas

ANN_PREM_PP is given a formula definition that can be used to specify how the premium varies over time.

PREM_PAYBL_M variable

The variable PREM_PAYBL_M (number of months premiums payable) should be defined as a Model Point. To do

this, open the variable, click Change Definition Type and you will see the following dialog:

44 Lesson 1 Setting up a simple product

Select Model Point and click OK. Notice how the icon shown for the open window for PREM_PAYPL_M has

changed to reflect this.

From to

Save the definition by clicking on Ok.

PREM_FREQvariable

PREM_FREQ (premium frequency) should also be defined as a Model Point.

SUM_ASSD_PP and SUM_ASSURED variables

Accept the default definitions for SUM_ASSD_PP (sum assured per policy) and SUM_ASSURED (sum assured).

SALES_FACTOR variable

This variable is a multiplier factor for future sales which is used for new business projections. Since the variable is

used by the tutorial product accept the default definition.

BenefitsThe following variables relate to the benefits aspect of the tutorial product, these have a variable code beginning

with E.

DEATH_BEN_PP andMAT_BEN_PP variables

Accept the default definitions for DEATH_BEN_PP (death benefit per policy) and MAT_BEN_PP (maturity benefit

per policy) variables.

SURR_VAL_PP variable

The default definition for SURR_VAL_PP (surrender value per policy) needs to be amended to allow a surrender

value of half the premiums paid accrued with interest to be paid in the first two years.

Replace the lines:

IF t <= NIL_SURR_P_M THEN

0

Extended Lesson 45

With

IF t <= 23 THEN

(SURR_VAL_PP(t-1) + PREM_INC_PP(t) * 0.5) * (1 + SURR_INT_PC/100)^(1/12)

l Type the changes directly into the formula.

Instead of typing the name of the variable SURR_VAL_PP in full, you can type SUR and press F3 to list all the

variables that start with SUR. You then locate and select SURR_VAL_PP and click OK to enter it into the formula

definition.

The surrender value at the end of month t equals the surrender value at the end of month (t-1) plus half the premium

paid in month t, accrued with interest.

The variable t (time) runs in months from 0 immediately prior to the issue of the policy up to the end of the policy

term.

This formula introduces some of the syntax available for formulas as well as some "best practice" guidelines when

entering formulas using Prophet:

l t (time) is entered in lower case type.

l Although excess spaces in the formula are ignored, for readability you should indent the code below IF and

ELSE lines by two spaces.

If there are any syntax errors in the formula or if it contains any invalid variable names then Prophet will not accept

the definition. However, this formula includes a deliberate mistake in the logic so that later in the tutorial you can

see how Prophet handles such errors. Can you spot it now?

When you have amended the formula, click OK to accept the changes.

The list of input variables is then displayed.

SURR_NETPREM variable

In the list of variables, click on SURR_NETPREM (surrender net premium). You can see in the bottom pane that it

has a formula definition that references SURR_ZILLMER (surrender Zillmer). If you look at the list of variables, you

will see that the list does not include SURR_ZILLMER at the moment. However, if you now click Open to open the

46 Lesson 1 Setting up a simple product

variable SURR_NETPREM and click OK to accept its default definition, you will see that the variable SURR_

ZILLMER has been brought into the list of variables.

Prophet expands the list of variables as you accept definitions - this approach is adopted so that variables are not

brought into the product unnecessarily. For example, if you had wanted to change the definition of SURR_

NETPREM so that it did not use SURR_ZILLMER, that variable would have been needed in the product. These

variables (such as SURR_ZILMER in this example) are called Secondary Input variables.

SURR_INT_PC variable

l The interest rate at which the surrender value is calculated is 5%, so for the variable SURR_INT_PC (surrender

interest rate) click Open, type 5, delete the 0 and click OK.

It would be better to define SURR_INT_PC as a parameter definition but this allows you to practice amending a

constant definition in this tutorial.

Other variables

Select the default definitions for the following variables by opening the first one and then clicking on Next three

times:

Variable Description

SURR_ZILMER The surrender Zillmer.

SURR_ZILL_PC The surrender Zillmer percentage.

SURR_NP_R_PC A restriction on the surrender net premium as

percentage of the annual premium.

Reserving / Solvency / Accrual MethodsThe following variables relate to the reserving and solvency aspects of the tutorial product, they have a variable

code beginning with F.

NET_PREMIUM

Accept the definition for NET_PREMIUM (valuation annual net premium) by clicking Next to accept it.

Extended Lesson 47

VAL_INT_PC variable

The VAL_INT_PC variable represents the interest rate at which the valuation reserves are calculated. Accept the

default definition of parameter by clicking Next, since this will allow a number of products to be run using different

interest rates.

Other variables

Accept each of the following variables by clicking Next:

Variable Description

VAL_ZILLMER The amount of valuation Zillmer

VAL_ZILL_PC The valuation Zillmer rate

NP_RESTRN_PC The restriction on valuation net premium as a

percentage of annual premium

VAL_SUM_ASSD The value of sum assured

VAL_NET_PREM The value of net premium

UNEARNRES_PP The unearned premium reserve per policy

(International Library only)

MIN_RES_PP The minimum reserve per policy

PE_DTHBEN_PP The period end death benefit exclusive of

terminal bonus and after declaration

SM_RES_PC The solvency margin as a percentage of reserve

SM_SAR_PC The solvency margin as a percentage of sum at

risk

Interest ratesThese variables have a code beginning with G.

The following five variables represent the components of the investment return.

Variable Description

FII_PC Annual rate of franked investment income

48 Lesson 1 Setting up a simple product

Variable Description

UFII_PC Annual rate of unfranked investment income

RCG_CHG_PC Annual rate of chargeable realised capital gain

RCG_UNCHG_PC Annual rate of unchargeable realised capital

gain

UNRCG_PC Annual rate of unrealised capital gain

The actual values that should be entered will be discussed in Lesson 2 when you set up the model point files and

tables. The values of these variables (which are essentially interest rates) may change between groups of products.

For instance, non-profit and with-profit products will usually be backed by different mixes of assets. You will amend

these variables to refer to other variables which will read the appropriate values from the global file.

One way to do this would be to open each variable, click Change Definition Type and then select Formula, enter the

required variable name and click OK as with SURR_VAL_PP. However, this is not necessary since the required

formulas have already been set up as "alternative definitions". Alternative definitions are alternatives to the default

definitions and have been set up in the libraries for a number of variables where commonly used alternatives exist.

For the variable FII_PC, click Select Definition. The following dialog is displayed for the Conventional product (a

similar dialog is displayed for the International product):

Click on the line:

NON PROFIT BUSINESS6FormulaAlternative

Extended Lesson 49

and then click OK to accept this.

You will then see a formula which refers to the variable NP_FII_PC (non-profit franked income rate). Click OK to

accept this.

NP_FII_PC is now the next variable in the list. It has a global definition by default, which is what you require.

Repeat the process you have carried out for FII_PC for the other four components of investment return, always

selecting the "NON PROFIT BUSINESS" alternative definition.

DISC_A_PC variable

The variable, DISC_A_PC, is the discount rate which is applied to the stream of emerging profits. Accept the default

definition of Global by clicking Next. This allows it to be given the same value for all of the products in your model

office. There are two more discount rates, DISC_B_PC and DISC_C_PC. You should accept the default definition of

Global for each of these variables.

SOLV_INT_PC variable

The variable SOLV_INT_PC is the interest rate on the solvency margin and should be changed to a global

definition.

PER_TO_VAL_M variable

Accept the default definition of PER_TO_VAL_M (initial period to next valuation in months).

TaxThese variables have a variable code beginning with H.

For the tutorial product C_ENDT that uses the Conventional Library, accept the global definitions of each of the

following variables:

Variable Description

OTAX_FII_PC The office tax rate on franked investment income

OTAX_UFII_PC The office tax rate on unfranked investment

income

OTAX_RCHG_PC The office tax rate on realised chargeable gain

50 Lesson 1 Setting up a simple product

In addition, accept the following default definitions for the C_ENDT product.

Variable Description

OTAX_EXP_PC Office rate of tax relief on expenses

ACQ_EXP_TAX Acquisition expenses for tax purposes

IMM_EXP_REL Proportion of acquisition expenses for

immediate relief

ANN_EXP_REL Annualise expense relief 1 = Y, 0 = N

For the tutorial product I_ENDT that uses the International Library, accept the global definition for the OTAX_PROF_

PC variable.

CommissionThe following variables relate to commissions they have a variable code beginning with I.

IC_PAYBL_PP variable

The first commission variable is IC_PAYBL_PP (initial commission payable per policy).

For the C_ENDT tutorial product accept the default definition (by opening and clicking on Ok).

For the I_ENDT tutorial product you need to amend the default definition as it currently spreads initial commission

payments over the first year, depending on the frequency of premium payments. One way to do this is to open the

variable and change the formula to make the commission payable on inception. A better option is to make use of an

"alternative definition". Click on Select Definition as before and in the Select Definition from Library dialog select the

line starting with "INDEMNITY COMMISSION PAID MTH1" and click OK. You will see that this is a formula that pays

all the initial commission in the first month. Click OK to accept the alternative definition.

IC_RATE_PC variable

You are now going to use the variable IC_RATE_PC to define the initial commission rate. The following formula

defines the percentage of annual premium that is paid as initial commission:

Extended Lesson 51

IF POL_TERM_Y <= 10 THEN

3 * POL_TERM_Y - 5

ELSE IF POL_TERM_Y <= 15 THEN

2 * POL_TERM_Y + 5

ELSE IF POL_TERM_Y <= 20 THEN

POL_TERM_Y + 20

ELSE

40

To enter the formula:

l Open the variable IC_RATE_PC and click Change Definition Type.

l Select Formula and type in the formula shown above. Note that you can use Cut, Copy and Paste in the same

way as in other Windows applications.

l After entering the formula, click Ok to accept it.

If there are any syntax errors in the formula then an error message with the probable location of the error is

displayed.

Note that this approach demonstrates how to use a formula to define initial commission rates. A formula is only

feasible if there is a pattern in the values. In Lesson 5 you will see how these values can be entered in a table that

can be read by the product.

IC_EARNL_PP variable

For the C_ENDT tutorial product accept the default definition.

For the I_ENDT tutorial product use the alternative definition for IC_EARNL_PP (initial commission earned on

lapses per policy).

To do this:

l Select the IC_EARNL_PP variable and choose Select Definition.

l Click on the line beginning with "EARNED UNIFORMLY OVER N MONTHS" and click Next.

52 Lesson 1 Setting up a simple product

Other variables

Accept the default definitions for the following variables:

Variable Description

IC_EARNL_PC The initial commission earnings rate for lapses.

Only applies to the International product.

IC_EARN_M The initial commission earnings period in

months. Only applies to the International product

IC_EARND_PP The initial commission earned on death per

policy

IC_RECOV_PC The percentage of initial commission recovered

on clawback

RC_PAYBL_PP The renewal commission payable per policy

RC_RATE_PC variable

Apply a parameter definition to the variable RC_RATE_PC (renewal commission rate).

RC_START_M variable

The default for the month in which renewal commission commences, RC_START_M, is 13. Since the renewal

commission starts in the first month of the second policy year, the value 13 is correct. You can therefore accept the

default definition.

ExpensesThese variables have a code beginning with J and relate to the expenses aspect of the tutorial product.

INIT_EXP_PP variable

The next variable in the list is INIT_EXP_PP, the initial expense per policy. You will see that this is made up of three

components: a fixed per policy expense, a percentage of the sum assured and a percentage of the annual

premium.

Extended Lesson 53

To model this product you are just using a fixed per policy expense. You should accept the formula for INIT_EXP_

PP using Next.

IE_FIXED variable

For the IE_FIXED (fixed initial expenses) variable change its definition to a parameter type.

IE_SA_PC and IE_PREM_PC variables

The defaults for the percentage of sum assured expenses and the percentage of annual premium expenses are

both 0, so accept these for IE_SA_PC and IE_PREM_PC.

Note that you could have deleted the two lines that refer to these last two variables from the formula for INIT_EXP_

PP in which case you would not have had to define them as zero. This is a valid approach but it would make the

product less flexible if, in future, you want to allow for expenses as a percentage of sum assured or annual

premium.

REN_EXP_PP variable

The Conventional library formula for REN_EXP_PP (renewal expenses per policy) is:

IF t >= RE_START_M AND t <= POL_TERM_M THEN

RE_FIXED_Y/12 * RE_INFL_ADJ(t-1)

ELSE

0

The International library formula for REN_EXP_PP is:

IF t >= RE_START_M AND t <= POL_TERM_M THEN

RE_FIXED_Y/12 * RE_INFL_ADJ(t-1)

+ RE_AP_PC/100 * ANN_PREM_PP(t)

ELSE

0

By looking at the formulas for REN_EXP_PP you can see that the variable RE_START_M is the month in which

renewal expenses are first assumed to be incurred. This normally depends on how expenses are analysed in the

54 Lesson 1 Setting up a simple product

office. The formula indicates that renewal expenses are incurred in each month during the policy term in and after

this "start month". Their amount increases with inflation from the start of the projection period.

For the Conventional library definition accept the default definition for REN_EXP_PP.

For the International library formula note the following additional line:

+ RE_AP_PC/100 * ANN_PREM_PP(t)

This allows renewal expenses to be expressed as a percentage of the annual premium. As you are only assuming

fixed renewal expenses, you could delete this line from the formula. However, as described earlier for INIT_EXP_

PP, this would make your product less flexible. International library users should therefore also accept the default

definition of REN_EXP_PP.

RE_AP_PC variable

For the International library formula accept the default of zero for RE_AP_PC.

RE_START variable

Accept the default value of 2 for the variable RE_START_M.

RE_FIXED_Y variable

Define RE_FIXED_Y (fixed annual renewal expenses before inflation) as a parameter type.

RE_INFLAT_PC variable

Accept the default definition of RE_INFLAT_PC (annual renewal expenses inflation rate).

CPI_GTH_PC andRE_RESERV_PC variables

Accept the default definitions for CPI_GTH_PC (Consumer Price Index inflation rate) and RE_RESERV_PC

(renewal expense as percentage of reserve).

MortalityThe following variables have a variable code beginning with K and relate to the mortality aspect of the tutorial

product.

Extended Lesson 55

Q_EXP_PN variable

The next variable is Q_EXP_PN which specifies the mortality table used for the experience basis.

For the Conventional product C_ENDT the mortality table AM92 is used, accept the default definition.

For the International product I_ENDT the mortality table GKM80 is used.

The location of the mortality tables is set when Prophet is first installed. For example:

C:\Documents and Settings\All Users\Application Data\SunGard\Prophet80\MORT. You can check this location in

Table Options from the Prophet Button.

To select a different table click on Browse, browse to the mortality table location as mentioned above and select the

relevant table. Note that although GKM80 is an ultimate table, the Select/Ultimate setting can be left unchanged as

Prophet will ignore this setting for an ultimate table.

PROP_EXPQ_PC variable

Amend PROP_EXPQ_PC, the percentage of the experience mortality rates, to be a parameter definition type.

Q_SURR_PN variable

The next variable is Q_SURR_PN which specifies the mortality table used for the experience basis.

For the Conventional product C_ENDT the mortality table AM92 is used, accept the default definition.

For the International product I_ENDT change the mortality table to GKM80 as above.

PROP_SURQ_PC variable

Accept the default definition for PROP_SURQ_PC, the percentage of surrender mortality rates.

Q_VAL_PN variable

The next variable is Q_VAL_PN which specifies the mortality table used for the valuation mortality basis.

For the Conventional product C_ENDT the mortality table AM92 is used, accept the default definition.

For the International product I_ENDT change the mortality table to GKM80 as above.

56 Lesson 1 Setting up a simple product

PROP_VALQ_PC

The percentage of the valuation mortality table used should be a parameter definition type, so you should amend

this accordingly.

Extended Lesson 57

DecrementsThese variables have a variable code beginning with L.

The next variable is ANN_LAPSE_PC, which is the percentage of policies that lapse or surrender each year. You

will notice from the formula as it stands that you are allowed to enter different lapse rates in the first year; the second

year; and then after the second year. You want to amend the formula so that there are different lapse rates in the

first year; the second and third years; and after the third year. To do this, go to the following line:

ELSE IF t <= 24 THEN

If you change the 24 to 36, then the line YR2_LAPSE_PC * YR2_LAPSE_SY will apply during the second and the

third years. Click Next when you have made this change.

The following nine variables should have their default definitions accepted:

Variable Description

YR1_LAPSE_PC Lapse rate in first year

YR2_LAPSE_PC Lapse rate in second year

YR3_LAPSE_PC Lapse rate in third and subsequent years

SKEW_FACTOR Lapse and paid-up policy skewness factor

LAPSE_TIMING Lapse timing

YR1_LAPSE_SY Year 1 lapse rate sensitivity

YR2_LAPSE_SY Year 2 lapse rate sensitivity

YR3_LAPSE_SY Year 3 and subsequent lapse rate sensitivity

ANN_MAT_PC Annual maturity rate

Initial valuesThese variables have a variable code beginning with N

DURATIONIF_M

Duration in force in months should have its default definition accepted.

58 Lesson 1 Setting up a simple product

INIT_POLS_IF

Initial number of policies in force should be given a Model Point definition.

Extended Lesson 59

Saving the productClick OK and the list of input variables you have defined will be displayed. Click Save to save all the variables and

definitions for the product. You might get a warning like this:

This means you did not accept all the variables. Do not click OK because the default definitions will then be used for

all these variables. Instead click Cancel to return to the list of input variables. You can then locate the variables

which still have a status of "Not Defined" by clicking on the Status column header so that they all appear at the end

of the list of input variables.

When you have accepted all the variables, click Save.

You should then see the following dialog:

Click OK to save the product.

60 Lesson 1 Setting up a simple product

61

L E S S O N 2

Setting up model point files and tables

In this lesson you are going to set up model point, parameter and global files for the product you specified in the

previous lesson.

T O P I C S I N T H I S L E S S O N

Introduction 62

Setting up a structure 63

Setting up the model point file 65

Setting up a parameter file 69

Setting up a global file 72

62 Lesson 2 Setting upmodel point files and tables

IntroductionModel point files contain the policy data that is used as a starting point for Prophet's calculations. Each model point

can represent an individual policy or a group of policies. In the latter case each model point contains values that

overall represent a tranche of business. Model point files are normally set up using either the Table Editor in

Prophet or the Data Conversion System.

Parameter files contain values for all variables where the same value applies across all the model points of each

product, but for which different values can apply to different products. A good example would be lapse rates, where

different types of product may have different lapse profiles.

Global files contain values for variables where the same value applies across all products and model points in your

model office. A typical example would be the risk discount rate, which you would want to keep the same over the

whole company.

For more information about tables refer to Chapter 5 of the User's Guide.

In this and subsequent lessons, when a product name is to be entered, or a library selected, International library

users should replace "C_ENDT" with "I_ENDT" and "C Conventional" with "I International".

Setting up a structure 63

Setting up a structureBefore you set up any tables you should create a structure. You do this by clicking on New in the Edit section of the

Home ribbon, then selecting New Structure.

The Structure dialog is then displayed with the Products/Accumulations tab displayed as follows:

Enter the Name as Tutorial Structure at the top of the dialog.

64 Lesson 2 Setting upmodel point files and tables

The Products list contains the products which are to be included in the structure. To add products to a structure you

click Select Products above the Products list. The Select Products dialog is displayed:

On the left a list of all the products which can be selected is displayed. The list on the right will show which products

you have selected for this structure. Select C_ENDT (or I_ENDT ) and double click or use to select it.

To add the product to the Products List of the Structure click OK.

The Accumulations list contains any accumulations that are specified. Accumulations allow results from one or

more products to be aggregated together. This aspect is covered in the Prophet Model Office Tutorial and therefore

you can ignore this aspect at this stage.

In addition, options on the Configuration tab can be left at their default settings and so can be ignored at this stage.

Saving the structure

In the Structure dialog click OK to save it.

 Setting up themodel point file 65

Setting up the model point fileYou need to create a model point file for the product in this tutorial so from the New button click New Model Point to

display the New Table dialog.

Note that the model point file is automatically given a file extension of .rpt. The location of the file can be amended if

required, but the file name must correspond to the name of the product that will be using it.

In the Table Name text box, using the default table location, you enter the name of the model point file.

If you are using the Conventional library, replace model1.rpt with C_ENDT.RPT taking care not to press the Enter

key after entering the name.

Alternatively, if you are using the International library, replace model1.rpt with I_ENDT.RPT taking care not to

press the Enter key after entering the name.

For the Conventional product the New Table then appears as:

To fill the columns with the names of the variables from a product click Initialise.

For the Conventional product the dialog appears as:

66 Lesson 2 Setting upmodel point files and tables

For the Conventional product, select C_ENDT or for International product select I_ENDT.

Click OK to open the Table Editor containing the empty model point file. All the variables you defined as model

points in your product are listed across the top as you can see in the screen below.

Note that a new Table ribbon has appeared; this contains many of the commands needed to deal with tables.

Model Point File properties

Now click on Table Properties to display the following dialog:

 Setting up themodel point file 67

Enter a suitable description in the Description field (for example Tutorial Model Point File) and click OK.

Sub-product codesThe first column in the table is headed SPCODE. This is the sub-product code and is used by Prophet when it

accumulates the results. Prophet will automatically sum the results for all of the model points with the same

SPCODE. This could be used for example to make a distinction between the different ways your business is

obtained, for example through direct writing and brokers. For model office work you will normally set SPCODE to a

number between 1 and 50 for in-force business, and to a number between 51 and 9999 for new business. The

model points must be entered in ascending order of SPCODE in the model point file.

You are just going to run one model point through the product in this part of the tutorial, and as it will be an in-force

policy, enter 1 as the SPCODE for your model point.

ValuesThe values of some variables have fixed ranges. For example, the variable SEX can only take the value of 0 (for

male) or 1 (for female). In such cases you can choose whether to display the values or their descriptions.

Note that the descriptions are specified for a variable using the Variable Constraint feature. This feature allows you

to specify a description for each value that the variable can have. For more information see Variable Constraints in

the Prophet User's Guide or in Help.

Since values will be entered instead of descriptions click the button so that they can be entered.

Enter the values for the following variables:

Variable Description

AGE_AT_ENTRY This is the policyholder's age at the start of the

policy. Set it equal to 30.

SEX Select Male.

POL_TERM_Y This is the policy term in years. It should be set

equal to 10.

ANNUAL_PREM This is the annualised premium payable. It

should be set equal to 840.

68 Lesson 2 Setting upmodel point files and tables

Variable Description

PREM_PAYBL_M This should be set equal to the policy term

multiplied by 12 so enter 120.

This is not really the recommended way, it is

better to define it as a formula in the product

instead of a model point.

PREM_FREQ This is how frequently the premium is payable.

Select Monthly.

SUM_ASSURED This is the basic sum assured. It should be set

equal to 10000.

DURATIONIF_M This is the duration of time in months that the

policy has been in force. If premiums are paid

monthly, then it will be the same as the number

of premiums which have been collected. You will

assume that the contract was taken out on 1

June 2010, and so 7 months have elapsed since

the contract was taken out. Therefore this

variable should be entered as 7.

INIT_POLS_IF This is the initial number of policies in force. This

should be set equal to 1.

If you click on the Names/Descriptions button and select both for variables you can see the descriptions for the

variables

Saving the file

Click Save and then click OK to accept the file name and location.

Click Close Table.

Setting up a parameter file 69

Setting up a parameter fileParameter files are two dimensional tables which contain constant values indexed by product name and variable

name.

The example used in this tutorial does not really emphasise the advantages of using parameter files because you

currently have only one product. In practice you would normally have more than one product and so parameter files

would be used for variables whose values change across products.

Creating the parameter fileWhile your cursor is in the Tree click New and select New Table. The following dialog then appears:

Choose Parameter and then click Initialise.

The Select Product dialog is displayed which allows you to select one or more products so that the file can be set

up with the names of the variables with a parameter definition in those products.

For a Conventional Library product the dialog appears as:

70 Lesson 2 Setting upmodel point files and tables

Select your product and click OK.

ValuesYou will be presented with an empty parameter file with all the variables you defined as parameters in your product

across the top. You can now enter the values for these variables.

Variable Description

IE_FIXED This is the fixed initial expenses and should be

set equal to 160.

PROP_EXPQ_PC This is the percentage of the mortality table used

for the experience that you wish to use. It should

be set equal to 85.

PROP_VALQ_PC This is the percentage of the valuation mortality

table that you wish to use. It should be set equal

to 100.

RC_RATE_PC This is the renewal commission rate and should

be set equal to 3.

RE_FIXED_Y This is the current rate of fixed renewal expenses

and should be set equal to 24.

Setting up a parameter file 71

VAL_INT_PC This is the valuation interest rate used for

calculating the mathematical reserves. This

should be set equal to 3.

YR1_LAPSE_PC This is the lapse rate assumed to apply for the

first policy year. It should be set equal to 10.

YR2_LAPSE_PC This is the lapse rate for the second and third

policy years and should be set equal to 7.5.

YR3_LAPSE_PC This is the lapse rate for the remaining duration of

the policy and should be set equal to 3.

Saving the file

Click Table Properties and enter the description Tutorial Parameter File. Then click OK followed by Save and the

following dialog will be displayed:

Change the File Name to PARAMET.FAC and click OK.

Click Close Table.

72 Lesson 2 Setting upmodel point files and tables

Setting up a global fileGlobal files are two dimensional tables that contain constant values indexed by variable name and by run number.

Setting up propertiesTo create the Global File, click New and select New Table then selectGlobal in the pop up box and click OK. The

Properties dialog is then displayed:

Enter a description such as Tutorial Global File and type 1 in the Run Numbers box and click OK.

To include the variables with global definitions for your product, click Add Variables in the Update section. Then

select your product and click OK.

Table worksheetConventional library users will be presented with the following screen (for the International business product there

will only be one tax variable in the first column):

Setting up a global file 73

You will notice that the table contains one column headed RUN_01.

It is possible to perform multiple sensitivity runs by entering the global values to be used in these runs into further

columns headed RUN_02, RUN_03 and so on.

Values

You can now enter the following values for the variables:

Variable Description

CPI_GTH_PC This is the annual Consumer Price Index

inflation rate and should be set equal to 4.

DISC_A_PC This is the discount rate that is applied to the

stream of emerging profits. It should be set equal

to 8.

DISC_B_PC This is the discount rate that is applied to the

stream of emerging profits. It should be set equal

to 6.

DISC_C_PC This is the discount rate that is applied to the

stream of emerging profits. It should be set equal

to 10.

74 Lesson 2 Setting upmodel point files and tables

Variable Description

NP_FII_PC This is the annual percentage rate of franked

investment income earned on the investments.

As explained in Lesson 1 this contract is 75%

backed with equities which provide franked

investment income. These yield an average of

3% so 2.25 (that is 0.75*3) should be entered

here.

NP_RCGCHG_PC This is the annual percentage rate of realised

chargeable gains and 0 should be entered here.

This is because the average growth rate of

equities (4%) is the same as the inflation rate

(4%) so it is reasonable to assume that all

realised gains will be relieved against

indexation allowances.

NP_RCGUNC_PC This is the annual percentage rate of realised

unchargeable gains. As you are assuming that

15% of equities are realised each year, 0.45

(that is 0.75*4*0.15) should be entered here.

NP_UFII_PC This is the annual percentage rate of unfranked

investment income earned on the investments.

This contract is 25% backed with fixed interest

government stocks which provide unfranked

investment income. On average these earn 5%

so 1.25 (that is 0.25 * 5) should be entered here.

NP_UNRCG_PC This is the annual percentage rate of unrealised

gains. 2.55 (that is 0.75 * 4 * 0.85) should be

entered here.

You should note that the sum of the above five components of investment return equal to 6.5%. This is equal to

(0.75 * 7 + 0.25 * 5), the overall return specified in Lesson 1.

For the Conventional library product, the following tax values need to be entered:

Setting up a global file 75

Variable Description

OTAX_FII_PC This is the annual percentage tax rate on franked

investment income and should be set equal to

20.

OTAX_RCHG_PC This is the annual percentage tax rate on realised

chargeable gains and should be set equal to 25.

OTAX_UFII_PC This is the annual percentage tax rate on

unfranked investment income and should be set

equal to 25.

For the International library product only one tax value needs to be entered:

Variable Description

OTAX_PROF_PC This is the annual percentage tax rate on profits

and should be set equal to 33.

For both products the following value needs to be entered:

Variable Description

SOLV_INT_PC This is the interest rate on the solvency margin. It

should be set equal to 5.

Saving the file

Click Save to save the table. Accept the default location and change the name to GLOBAL.FAC. Click OK and

close the table.

Making changes

Further columns and rows can be added to your tables, as required. It is also possible to make use of the Table

Editor formulas to add or copy data, rather than entering individual values. For more details, refer to the "Setting up

tables" chapter in the User's Guide.

76 Lesson 2 Setting upmodel point files and tables

77

L E S S O N 3

Setting up, running and reporting on a product

Now that you have created a product, its related model point, parameter and global files and a structure in the

previous two lessons, you are ready to set up a run, run the product and view the results of the run.

T O P I C S I N T H I S L E S S O N

Setting up a run setting 78

Running the product 86

Identifying why a run has failed 89

Viewing results produced in a run 92

78 Lesson 3 Setting up, running and reporting on a product

Setting up a run settingSetting up a run involves specifying a structure and a run setting. Structures contain information about what you

want to run and run settings contain information about how you want to run it. You can set up and maintain a

number of different structures and run settings so that you switch between them rather than amending them. You

have already set up a structure, so you now need to create a run setting.

With your cursor in the tree, Click New then Run Setting. Select the "Calculation Run" option and then click OK to

display the following dialog:

Enter a name of Tutorial Run Setting in the Name field at the top of the dialog. Then complete each of the items in

the tabs as described in the following sections.

Run Parameters tabThis tab allows you to specify the Start Date and the Future and Past Accumulation Periods.

Setting up a run setting 79

The Start Date is used to specify the start date of the model office projection. The projection for the current run is to

be based at 31 December 2010 so the date should be changed to 31 December 2010.

The Future Accumulation Period is the number of years of projected results that will be included in the results files

produced by Prophet. The actual calculations are always made from the start of the policy until at least the end of

the policy term, to ensure that items such as the discounted value of future profits are properly calculated.

You are projecting in-force policies with a ten year policy term and wish to be able to view the results of all the

calculations, so enter 10. If you were also projecting new business policies, you would enter 11, rather than 10,

because for a 10 year policy, the maturity proceeds are paid out in the 1st month of the 11th year. Thus, if the policy

was issued in June 2010 the proceeds are paid out in June 2020

The Past Accumulation Period is the number of years of results prior to the start date of the projection that will be

included in the results files produced by Prophet. It primarily enables you to produce output for checking historic

asset share calculations. Leave the default value for the Past Accumulation Period unchanged (i.e. 0).

Month in which Company Year Ends is used to ensure that reporting by company year is handled correctly within

Prophet. The default of 12 should be accepted.

The other sections in this tab are not needed in the run, so you can leave them as they are. They are covered in the

Model Office Tutorial.

Advanced options

Additional options are available when you click Advanced in the Advanced area of the Run Parameters tab. The

Advanced Settings dialog is displayed similar to the following:

80 Lesson 3 Setting up, running and reporting on a product

The dialog has 2 tabs:

l Run Process tab

Contains options that specify:

l The order in which products are run

l The seed values to be used for stochastic runs

l File creation and deletion

l Results retention

l Batch Programs tab

This has options that allow additional programs to be specified that can be run at specific points in a run.

For the tutorial accept the default settings. Click Cancel to return to the Run Parameters tab.

Tables tabClick on the Tables tab of the Run Setting. The Tables tab appears similar to the following:

Setting up a run setting 81

Settings from this tab allow you to specify:

l The location in which the model point files for the structure are held and their file extension.

l The locations and names of the global, parameter and prices files.

l The location of any other tables.

l The location and name of the sales file which contains assumptions about future new business volumes.

Unless you specify the complete location including the drive letter or UNC path, any location you enter is taken

relative to the workspace location.

The default location for the model point files is MPFILES, which means that, if you have installed the tutorial on the

C: drive and in the location Prophet_Tutorial, then the model point files will be read from C:\Prophet_

Tutorial\MPFILES. The default location for all the other files is the TABLES location and is handled similarly.

The tutorial will use the default locations and names. As you will not be using a unit prices file or a sales file you

should ensure that these entries are blank.

82 Lesson 3 Setting up, running and reporting on a product

Results tabThis tab enables you to specify what kind of output is to be generated in the run and the format(s) in which it is to be

produced. It appears as follows:

Results Files

These options allow you to choose the type of results files that will be produced in Prophet's own results file format:

Item Description

Projection / NB Profile These results contain projected results for each

month of the future and past accumulation

periods.

Valuation These results contain the values calculated at the

start of the projection period split by maturity year

or current age.

Accumulation Results This option produces and retains the results

generated by accumulations.

Intermediate Dynamic This option produces and retains the

intermediate results generated in dynamic runs.

Select Projection/NB Profile.

Product Total Results Files (00)

Options in this area allow you to specify which Product Total Results files can be suppressed. This can improve run

times and reduce unnecessary disk space as unwanted results files are not created.

Accept the default setting to create results files for both sub-product codes and product totals.

Setting up a run setting 83

Variables in Results Files

This option allows you to choose the variables to be retained in the results. Variables which are defined as or

evaluate to constant values are always included in the results files. This includes all variables defined using either

global or parameter definitions. In addition, the values for the first model point of each sub-product code are

included for all variables defined as model point. You can choose one of the following options:

Item Description

Selected Results are generated containing values for the

variables in a selected variable group. You

select the variable group by clicking Variable

Group and then selecting the group from a

category.

Cumulative Results will be generated which contain values

for all the variables which have had their

cumulative property checked. This will normally

be all variables for which it makes sense to sum

values across model points. If a variable’s

cumulative property is checked, its values will

also be aggregated across products if

accumulations are being used.

All Results will be generated that contain values for

all the variables in the product. This is most

useful when you are developing products and

testing that they do the calculations you require.

Select All so that you can inspect the values of all the variables in your product.

Text Results Files

These are basically the same as Results Files, except that the results are in a text format instead of in Prophet's own

results format. These results can be used in other applications.

Do not select any Text Results files.

Individual Model Point Results Files

84 Lesson 3 Setting up, running and reporting on a product

This option allows you to specify whether output files are to be generated which contain a line of results for each

model point. If selected, individual model point results will be produced in Prophet’s model point file format.

These files will contain the values at the projection start date (that is at t = DUR_M) for each of the variables in the

Variable Group specified. For more information on Variable Groups see the Specifying Variable Groups and

Categories section in part 4 of the User Guide

For the tutorial do not choose this option.

Error Control

This option allows you to specify the maximum number of errors allowed before Prophet terminates the calculations

for a particular product and the maximum number of warnings before termination of an accumulation. The default is

zero which means that the calculations for a product will be terminated if or when the first error occurs. If you enter

10, a product will only be terminated when the 11th error occurs. If you select the No Limit options, Prophet will

continue the calculations irrespective of the number of errors that occur.

The model point file you are using for this product contains only one model point so you will only want results if no

errors occur. Accept the default entries of zero for both fields.

Stochastic

Options in this area relate to stochastic runs and are only available if Stochastic is selected in the Run Setting. In

this tutorial the product is not being run either dynamically or stochastically so the Dynamic and Stochastic options

are not selected.

Runtime Configuration tab

The settings in the Runtime Configuration tab enable you to specify the type of run and how it is to be split among

other PCs when Parallel PC mode is used. The Runtime Configuration tab setting appears as follows:

Setting up a run setting 85

For the tutorial accept the default settings.

Saving the run setting

Click on OK to save the run setting. From the Accordion select Structures and Run Settings and select the run

setting you have just created.

86 Lesson 3 Setting up, running and reporting on a product

Running the productWhilst the newly created structure or run setting is highlighted in the tree, click on the Run icon in the Run section of

the Home Ribbon. The dialog below should open.

Click OK.

Prophet first carries out various checks such as ensuring that all the model point files exist for the products included

in the run and that the global and parameter files specified in the structure exist. If not, a warning will be produced.

Next, a dialog with Runtime Performance Hints may pop up. If so, click OK.

This starts the Run Monitor which appears as follows:

Running the product 87

As the run proceeds Prophet does the following:

l It recognises that you are running a new product and carries out the variable sequencing, code generation and

compiling processes needed to generate an executable program.

l It carries out the calculations for the model points and creates a file of the sub-product results for the required

variables over the specified period of accumulation.

l The run messages which appear on the screen to show how the run is progressing are also written to a run log

file.

However, in this case, Prophet will fail to complete step 2 because of the error you introduced (deliberately) when

setting up the product. The following dialog is displayed:

88 Lesson 3 Setting up, running and reporting on a product

Identifying whya run has failed 89

Identifying why a run has failedWhen the previous dialog is displayed, the run log can be viewed by clicking Run Log. To view the run log at any

other time, open it from the Results & Runlogs tree or list. This will open the Results Viewer as shown below:

Click View to open the runlog

If you select the top line in the left hand panel (C:\Prophet_Tutorial\results\RUN_01) you can see there are 2 errors

in Execution.

90 Lesson 3 Setting up, running and reporting on a product

If you select Execution in the left tree you will see the error below

This error is an indication that an invalid time period has been referred to.

To look at and correct the variable in question, close the Run Monitor and Results Viewer open C_ENDT (or I_

ENDT) from the Products tree, the product variables will then be displayed in the C_ENDT Preview window. Go to

SURR_VAL_PP (code ED10).

Taking a look at SURR_VAL_PP, you can see that the first part of the formula refers to itself at time (t-1). It is a

"recursive" formula which is necessarily evaluated by starting at t = 0 and moving forward one month at a time.

However, at time period 0 (when the error occurred) this formula will reference the value at t = -1. As t can only take

positive values, this term has caused the error. This can be rectified by opening the variable and replacing the first

line with:

Identifying whya run has failed 91

IF t = 0 THEN

0

ELSE IF t <= 23 THEN

Click Ok and then save your product. The product can now be re-run by clicking on Run.

Look at the run log again after the run is complete (by clicking on Run Log from the Run Monitor or by double

clicking on RunlogSummary.xml under the results section). You should see that there are now no errors.

You can now close the run log window.

92 Lesson 3 Setting up, running and reporting on a product

Viewing results produced in a runThe run has been completed and the results stored on the hard disk.

Run Number should be 1, because this is the only run number you have run so far.

Sub-Product gives a choice between Total Business(00) and Existing Business(01). Select Existing Business.

Results Type can be used to choose which type of results you want to view:

l Projection

l New Business Profile

l Valuation - Maturity Year

l Valuation - Current Age

l Unit Numbers

Select the Projection option.

Double click on C_ENDT01.projection (or I_ENDT01.projection) in the tree and the following screen will be

displayed:

At the top left you see the Run Number, the Sub-Product and Type that you selected together with the name of your

product. If you want to change one of these selections, just use the appropriate drop down list and make a

selection. The results on the screen will change straight away.

Viewing results produced in a run 93

Variable Groups

In the Variable Group section there are Category and Name options. Using the drop down list next to Category you

will see a number of variable group categories and two additional options. The two additional options allow you to

select All Variables or Cumulative Variables.

Each variable group category contains a number of variable groups which allow you to report on a particular aspect

of the results. The standard workspace includes a number of variable groups which are listed in the Name drop

down list. If you select a variable group category the drop down list next to Name is opened so you can select the

required one.

If you want to create a new variable group or to change an existing one, you can do this by selecting the Variable

Groups option in the Workspace menu.

Conventional library users should select the A10 - Revenue Account / Profit Test variable group and International

library users should select A11 - International Rev Acct / Profit Test.

94 Lesson 3 Setting up, running and reporting on a product

Time Periods

To specify the Time Periods for which the results are displayed, click on the Time Periods button. The following

dialog will then be displayed:

Start Position allows you to display the results from the start of the results or from a specified start year.

Format allows you to display the results in Company Year or Policy Year format:

Company Year displays the time periods in the form Dec 2010, 4Q2010, 2H2010, 2010 and 2010-2014. It is more

appropriate when you are using Prophet for model office work.

Policy Year displays the time periods in the form M12, Q4, H2, Y1, Y1-Y5. It is more appropriate for product

development work.

You can choose to display your results Monthly, Quarterly, Half-Yearly, Annually and/or 5-Yearly for a specified

number of years. If, for example, you choose 2 for monthly, then monthly values will be displayed for 2 years. You

can also choose to display a summary of the results for each year by checking the Show Annual Summary box.

Complete the Time Periods dialog as follows:

Viewing results produced in a run 95

Item Do this

Start Position Select Start of Results

Format Select Company Year

Number of Years Enter 1 in Monthly

Show Annual Summary Select

To End of Results Select Annually

Then click OK.

Results

The remaining body of the results window displays the results. It is divided into three tabbed sections:

l Values (for time-dependent variables)

l Constants (and other non time-dependent variables)

l Audit information

You can change the format for the display of the results using the options on the right-click menu.

You can also choose to display either the variables or the time periods as the columns. To switch between them

click on the Swap button in the corner of the grid of values. For the tutorial, set the display so that the variables are

in columns and the time periods are in rows.

Copying Results

If you want to copy results, for example to Microsoft Excel or Word, you can use Copy in the clipboard section of the

Home ribbon to copy a selected range of cells or use the right-click option Copy Grid to copy the entire grid of

values including the top and left borders to the Windows clipboard. The right-click option Copy to Excel copies the

entire grid to Excel.

Printing Results

If you want to print the results, there is a Print option available via the Prophet Button. Clicking this should display

the following dialog:

96 Lesson 3 Setting up, running and reporting on a product

Select the "Grid Values", "Constant Values" and "Audit Information" options and then click OK to print the results.

You can compare the printed results with those at the end of the tutorial.

97

L E S S O N 4

Reporting on dependencies in Diagram View

This lesson describes the main approach that you should adopt to check the calculations and, if required, to modify

them.

T O P I C S I N T H I S L E S S O N

Introduction 98

The Diagram View window 99

Using Diagram view to identify how to change the product 102

98 Lesson 4 Reporting on dependencies in DiagramView

IntroductionDiagram view allows you to view all the variables and formulas in a product, the dependencies between the

variables and their values.

You will use it to:

l Check some of the variable dependencies in the product.

l See how some of the changes you need to make to the product should be implemented.

The DiagramView window 99

The Diagram View windowTo load Diagram view, whilst highlighting C_ENDT01.projection in the Results and Runlogs part of the tree either

right click to open in Results Diagram View or from the open button choose Results Diagram. Once opened the

Diagram Ribbon is displayed.

The Diagram view window will then be displayed as follows:

The screen is divided horizontally into three sections:

l Variable dependencies

l Variable definition

100 Lesson 4 Reporting on dependencies in DiagramView

l Results values

You can adjust the size of any pane by dragging its borders.

Variable dependenciesThe centre pane of the top section shows the direct relationships between the current variable (MATH_RES_IF) and

other variables in the product. Clicking on any variable in this pane will make that variable the current one. The

current variable is also displayed in the second drop-down menu in the Diagram Ribbon at the top of the screen.

You can make any variable in the product the current one by selecting it in the Variable drop-down menu. If you

type in the first few letters of its name in quick succession, the first variable starting with those letters will be

highlighted.

The left hand pane of the top section enables a tree view to be displayed of the variables on which the current

variable depends. Any variable with a plus sign next to it may be clicked to expand the tree.

The right hand pane of the top section enables a tree view to be displayed of the variables that depend on the

current variable. Any variable with a plus sign next to it may be clicked to expand the tree.

Variable definitionThe middle section displays the name, description, type, variable code and definition of the current variable. For

non time-dependent variables the value is also displayed in this section. In the case of model point variables and

other non time-dependent variables that have values that vary from model point to model point the value for the first

model point of the current sub-product is displayed.

If you move the mouse pointer over any variable in the middle section, Diagram view will display information about

that variable instead of the current one.

Results valuesThe three panes in the bottom section show the values of time-dependent variables in your product. The centre

pane shows the values of the current variable. The left pane shows the values of the variables on which the current

variable depends. The right pane shows the values of the variables that depend on the current variable.

Options

The DiagramView window 101

There are a number of options in Diagram view which enable you to change the way in which the information is

displayed:

If you select Font, Number or Time Periods in the Format menu you are able to change the font, number format and

time periods used to display the results.

If you select Suppress Zeros in the Format menu you are able to suppress variables which have zero values.

If you select Diagram Options in the Options on the Prophet Button you can specify which types of variables are

highlighted and in which colours. You can remove the side panels in the top section by un-ticking Show

Dependency Tree Views. You can also specify whether the three results panes should be synchronised or whether

you can scroll each one independently.

You can move backwards and forwards through a history of the variables that you have selected as the current

variable using the Back and Forward buttons on the Diagram section of the Diagram Ribbon.

You can change the product and the results which are displayed using the drop down list boxes in the Diagram

Ribbon.

You should now spend some time moving through the variables in the product you have created, exploring the

dependencies between them, and using some of the options available to you.

102 Lesson 4 Reporting on dependencies in DiagramView

Using Diagram view to identify how to change the productIn the next lesson you will make the following enhancements to the tutorial product:

Valuation Interest Rate - you will amend the product to use different valuation interest rates depending on the

valuation series to which each model point belongs.

Mortality Experience - you will use the variable SEX to assign different mortality rates to males and females.

Diagram view can help you clarify exactly which variables should be changed to make these two enhancements.

Valuation interest rateThe valuation interest rate is represented by the variable VAL_INT_PC. In Diagram view use the Variable drop

down menu to make VAL_INT_PC the current variable. Looking at its dependencies, you can see that it is used

only in the variable M_VAL_INT, which in turn is only used in the valuation commutation functions. You will change

VAL_INT_PC to use a different valuation interest rate depending on the valuation series. This will be done in the

next lesson by creating a new variable VALN_SERIES to determine which valuation interest rate is used.

Mortality experienceYou wish to change the experience mortality to depend on sex. We will use the tree to identify the correct variable.

On the tree expand the details under the product by clicking on the cross to the left of C_ENDT

This will expand the product to show that it is a product created from the Conventional library. The Model Point Files

associated with the product, the Indicators, the Variable definitions and the Results can then be expanded.

Expand Input Variable Definitions, this gives you the full list of input variables in the product.

Using Diagram view to identify how to change the product 103

Right-click on Input Variable Definitions and choose Group by Variable Main Category.

You will see that the definitions are grouped by category similarly to when we were defining the variables, expand

the section headed K-Mortality.

Referring to the product listing you produced earlier, you will see the input variables for mortality in the section

headed K-Mortality. The tree then looks as shown below.

104 Lesson 4 Reporting on dependencies in DiagramView

If you hover over the variables in this category, the tool tip for Q_EXP_PN is Experience Mortality Rates; this is the

variable we want to change.

In results diagram view select Q_EXP_PN. You can see that the mortality rates on the experience basis are only

used in the variable Q_EXP. This means that amending Q_EXP_PN will have no wider, unintended effects.

There are already variables set up in the library to distinguish between male and female mortality experience.

These are:

Q_EXP_MALE  KA11

Q_EXP_FEMALE  KA12

The best way to make the change is to define Q_EXP_PN as a formula which picks out the correct mortality table

dependent on the policyholder's sex using these two variables. This will be done in the next lesson.

Click Close to close Diagram view.

105

L E S S O N 5

Updating libraries and products

This lesson explains how you can extend the calculations in Prophet to meet your particular requirements by

implementing the changes outlined in the previous lesson.

T O P I C S I N T H I S L E S S O N

Adding a new variable to the library 106

Updating the product 111

Scenarios that show the effects of product changes 123

Identifying an error in the run 125

106 Lesson 5 Updating libraries and products

Adding a new variable to the libraryYou are now going to add a new variable VALN_SERIES to the library. From the tree, double-click on the library

that is shown expanded under the product. This will open the Conventional or International library as appropriate.

The screen will look like this:

Since you want to create a new variable, choose New Variable from New on the Edit section of the Home ribbon.

The Variable Properties dialog will then be displayed:

Adding a new variable to the library 107

Enter the name as VALN_SERIES. Then enter the description as Valuation Series. Leave the Type as Number.

The other items in the Variables Properties dialog are described in the following sections.

Workspace level properties

Accounting type

l Revenue Account means that annual values for this variable will be the sum of the twelve monthly values (for

example Premium Income).

l Balance Sheet means the annual values for this variable will be the values in the last month of the year (for

example Mathematical Reserve In Force).

Select Balance Sheet.

108 Lesson 5 Updating libraries and products

Default printed decimal places

The normal Prophet convention is to use two decimal places for monetary values and six decimal places for

actuarial functions, interest rates etc. Enter 0 here, as decimal places are not needed for this variable.

Constraints

You can specify the values that a variable can have by setting up a constraint condition in the Constraints section of

the Variable Properties dialog. The constraint that you specify is then used to validate the values that you enter for

the variable in the Table Editor.

The constraints that can be specified for the variable can be one of the following:

l Specified values constraint

This type of constraint allows you to specify the values that the variable can have, together with descriptions for

each such value.

l Min / max / integer constraint

This type of constraint allows you to specify the minimum and maximum values that the variable can have, and

also whether it can only have integer values.

A description of the type of constraint applied to a variable is listed in the Constraints section of the Variable

Properties dialog.

Leave this entry blank as we will not be applying any constraints to the variable. Also, as the remaining workspace

level properties are beyond the scope of this tutorial you should not select any of them.

Library level propertiesType allows you to choose between Input and Core variables.

l Input variables are used to define the specific calculations you want to make for each of your products. When

you specify a new product, Prophet presents you with a list of input variables to be defined, based on the

indicators you select.

l Core variables contain the calculations which do not vary by product. Prophet automatically includes the

appropriate core variables with their appropriate definition, based on the indicators you select for that product.

Select Input for this variable.

Adding a new variable to the library 109

Variable Code is a four character code which controls the order in which the input variables are presented to you

when setting up a product. It consists of two letters followed by two digits. Any number of variables can be given the

same variable code but it is better to give them different codes so that they appear in the order you want. The

natural place for VALN_SERIES to appear would be just after VAL_INT_PC (the valuation interest rate). If you click

Browse and search through the variables you will see that the variable code for VAL_INT_PC is FA10. Thus you

should give VALN_SERIES a variable code of FA11. This can be done by double clicking on VAL_INT_PC. You will

then be returned to the Variable Properties dialog where you see that FA11 has been entered for the variable code.

Below the variable code you will also see the descriptions for the F and FA variable categories.

Variable definitionsYou should now click OK to close the variable properties and move to the variable definitions window where you

can create and amend the definitions that already exist for the variable and change it or create a new one. In this

case the list is empty since you have just created a new variable. From the object ribbon or the right-click menu you

should create a new definition for this new variable.

First you have to select the type of definition you want to create. This is done in the following dialog:

Choose Model Point and click OK.

You should now see a screen which looks similar to the variable screen you saw when specifying the product. The

difference is the bottom part of the screen headed Indicator Expression. Here you can specify the indicator or the

specific combination of indicators that would bring this variable into a product. More about this topic can be found in

the "Libraries" chapter of the Prophet User’s Guide. In this case you do not want to use this option so just click Ok

110 Lesson 5 Updating libraries and products

on the Variable section of the Design ribbon. This means that the variable will only be brought into the product

when it is referred to by another input variable.

You are returned to the definitions window but instead of it being empty you can see the definition you have

created, which means that you have finished creating the variable. The next step is to change your product to use

this variable. Close the library window.

Updating the product 111

Updating the productYou are now ready to amend the product to allow for the two changes which were described in Lesson 4. You will

also create a table of initial commission rates and amend the product to read values from this table rather than

using the existing formula.

Mortality experienceTo open the product, double click on it. The following dialog is displayed:

You should normally select Yes when this dialog is displayed. Prophet will then scan all the input variables in the

library to check if any need to be added or removed from the product. This ensures that your product reflects the

changes you have made to variables in the library. In this case clicking Yes or No has the same effect since your

new variable has a blank indicator expression and hence will not be brought into the product until it is referred to by

another variable. However, click Yes anyway. When the list of variables appears, make sure they are listed in code

order. If not, click the Code column heading.

Select Q_EXP_PN, the definition could be opened by double clicking or clicking on Open.

However, you can also edit the product using Diagram view. Therefore click on the Diagram icon in the List View

section of the Home Ribbon.

112 Lesson 5 Updating libraries and products

Open the variable Q_EXP_PN either by clicking Open Variable or double clicking in the main diagram pane. Click

on Change Definition Type and select Formula.

The formula which you should enter here is:

IF SEX = 0 THEN

Q_EXP_MALE

ELSE IF SEX = 1 THEN

Q_EXP_FEMALE

ELSE

ERROR("Invalid value entered for variable SEX")

The ERROR function in the last line of this formula will cause the run to terminate if an invalid value has been

entered for the variable SEX (and if the run has been set up to fail at the first error). The text inside the quotation

marks will appear in the run log. Note that there is a similar function called WARNING. This function allows the run

to continue but produces a warning message in the run log.

Type in the above formula and click Next to accept it. You are now presented with the default definition for Q_EXP_

MALE. Accept this definition by clicking Next and move to Q_EXP_FEMALE. Accept this definition and return to

diagram view by clicking on Next and then Ok the next variable.

Updating the product 113

International library users should accept Q_EXP_MALE and Q_EXP_FEMALE.

The dependencies view for Q_EXP_PN will have been updated to show the new dependencies as follows:

Using the new formula, both male and female mortality tables are loaded into memory at the start of a run and the

appropriate values (based on age at entry) are then read into the Q_EXP_MALE and Q_EXP_FEMALE variables.

However, only one of these variables will be used as the experience mortality for any one model point, depending

on the value of the variable SEX.

You will now enhance the formula for Q_EXP_PN to demonstrate the use of the function READ_MORT_TABLE. It

uses only one variable (SEX) rather than three (SEX, Q_EXP_MALE and Q_EXP_FEMALE). The function READ_

MORT_TABLE has the same parameters as those that must be specified if a variable is defined as a mortality table.

114 Lesson 5 Updating libraries and products

These are the name of the mortality table, the age at entry variable, select or ultimate setting and age rating. The

formula which should be entered for Q_EXP_PN is:

IF SEX = 0 THEN

READ_MORT_TABLE("AM92", AGE_AT_ENTRY, "S", 0)

ELSE IF SEX = 1 THEN

READ_MORT_TABLE("AF92", AGE_AT_ENTRY, "S", 0)

ELSE

ERROR("Invalid value entered for variable SEX")

International library users should use GKM80 and GKF80 respectively instead of AM92 and AF92.

After entering THEN in this formula, if you select the Function Wizard using Shift F3 or by clicking the Insert Function

button on the Formula Editing section of the Design ribbon, the following dialog is displayed:

Select the Read function category and then READ_MORT_TABLE. Click Next and then enter the arguments

required for the function.

Updating the product 115

When you have done this, click Finish and the function will be entered into the formula. Then continue entering the

formula. Remember that F3 can be used to enter variable names into the formulas.

Click Ok to save the formula and return to Diagram view.

This formula does not reference the Q_EXP_MALE and Q_EXP_FEMALE variables so they are not required in the

product. Because you keyed the first suggested approach before switching to the second method, the variables will

still be included in the product.

NOTE: You can switch back and forth between Diagram view and the original list of variables using the Details /

Diagram / List icons on the ribbon. This can be useful because you can then use the outline to help you select the

variable you want to look at. Prophet remembers which variable is selected when you move between the views in

this way.

When you do this you will see that the list of variables now includes the core variables as well as the input

variables. However, you cannot edit the core variables from either of the views. This can only be done from within

the library.

116 Lesson 5 Updating libraries and products

Switch to Details view. You will notice that Q_EXP_MALE and Q_EXP_FEMALE are still in the list. From the Object

ribbon click Re-Scan to remove them from the product.

This completes the changes to the mortality experience.

Valuation seriesYou have set up the variable VALN_SERIES in the library with a default definition of model point. You will now

amend the product so that if this variable takes the value 0, the policy forms part of the old series, and if it takes the

value 1 it will form part of the new series.

To do this, you need to change the variable VAL_INT_PC. Open it by double-clicking or by clicking Open. Select

Change Definition Type followed by Formula. The following formula needs to be entered:

IF VALN_SERIES = 0 THEN

2.75

ELSE IF VALN_SERIES = 1 THEN

3.0

ELSE

ERROR("Invalid value entered for variable VALN_SERIES")

Then click Ok to accept this.

VALN_SERIES is now shown as being used by VAL_INT_PC in Diagram view. It has been brought into the product

as a result of your referencing it in VAL_INT_PC. You chose to give it a model point default definition in the library

so accept this definition by opening the variable and clicking Ok. You will then be returned to Diagram view.

Generic table definition for the initial commission rateThe scale used for initial commission rates at the moment is fairly simple, and can easily be entered as a formula. In

practice, however, the scale will usually be more complicated and so you are now going to replace the formula by a

generic table. Generic tables are in a format which can be used for many different purposes.

Changes need to be made to the variable IC_RATE_PC so go to the variable in the list and Open. The definition

type of the variable needs to be amended, so select Change Definition Type, followed by Generic Table and OK.

Updating the product 117

You are presented with the Generic Table Definition screen which appears as follows:

Enter the options as follows:

Table/Variable Name

This is the name of the table which Prophet uses when finding the required values for the variable. You can select

whether to specify the table name directly or read it from another variable. Since we only need to use one table,

leave Table Name selected. The table has not been created yet, but you will call it INIT_COM, so enter INIT_COM.

Time Allocation

You can choose either Monthly or Annually. Select Annually so that the table is only accessed once a year. In fact it

will only be accessed once for each model point because the value for this variable does not vary with time.

Prophet allows for this automatically.

118 Lesson 5 Updating libraries and products

Treat Missing Value as Error

Accept the default so that if a value is missing from the table Prophet treats that as an error rather than using a value

of zero.

Index Variables

Index Variable 1

This variable defines what the initial commission rate depends on. It should be set to POL_TERM_Y.

You can either type in the name or use either the drop down list box or the Insert Variable button to select the name

from a list. The main differences between the two lists are:

1. The drop down list box includes special names such as VAR_NAME and PROD_NAME which can only be

used as index variables. These aren't included in the Insert Variable list because they are not true variables.

2. The Insert Variable list shows the descriptions for each variable whereas the drop down list box only shows the

names.

Index Variable 2

Set this to VAR_NAME. Prophet will then use the values in the column headed IC_RATE_PC in the generic table

because this is the name of the current variable.

The Generic Table Definition should now appear as follows:

Updating the product 119

Click Ok to accept the definition for this variable.

As an alternative to defining the variable IC_RATE_PC as a generic table, you could have used the READ_

GENERIC_TABLE function. If you had done this, you would have used the following formula:

READ_GENERIC_TABLE("INIT_COM","Y",POL_TERM_Y,"VAR_NAME")

where the terms inside the brackets correspond to the entries "Table Name", "Treat Missing Value as Error", "1st

Index Variable" and "2nd Index Variable". The first two arguments are text strings and require double quotes. VAR_

NAME also needs to be in double quotes because it is not the name of an actual variable.

If for the Index Variable arguments you wish to use the values calculated for particular variables rather than the

names themselves they should not be entered in double quotes.

For more information about the use of Prophet’s READ functions, refer to the Help within Prophet.

Creating the generic table

You are now going to set up the generic table INIT_COM.FAC.

120 Lesson 5 Updating libraries and products

Right click on the IC_RATE_PC variable listed in the variables for the tutorial product and choose Open Table.

Then choose INIT_COM.FAC. The following dialog appears:

Create the table by clicking OK. The New Table dialog then appears.

In the New Table dialog choose Generic as the table to be created and enter its name in the Table Name text box

as INIT_COM.FAC.

Click OK to create the table. The Properties dialog for the new table appears.

In the Properties dialog for the generic table enter the description Tutorial Initial Commission Rates.

Enter the following values:

Index Variables - Enter a value of 2

Data Rows – Enter a value of 26

Data Columns – Enter a value of 1

Accept Table Format for the Layout. The dialog should now appear as:

Updating the product 121

Click on OK to create the empty generic table; you will be presented with an empty table of the required size.

Entering data into the empty generic table

You now enter data into the empty generic table that has been created. Note that if required, you can adjust the

width of a column by dragging its right hand edge in the header area and update the contents of the table by

pressing F9.

Do the following:

Enter POL_TERM_Y as the header of the first column.

Enter IC_RATE_PC as the header of the second column.

The following table of commission rates as set out at the start of Lesson 1 covers policy terms of between 5 and 30

years:

Policy Term in Years Initial Commission %

5

10

15

20 - 30

10

25

35

40

In the first column, enter all the possible values. You have to enter the required terms in years (5 through to 30).

122 Lesson 5 Updating libraries and products

In the second column, enter the commission rates that correspond to each premium paying term, interpolating

where necessary.

The table should now appear as follows:

Save the table by clicking Save. The save dialog for the table is displayed:

Enter the details shown to save the table as C:\Prophet_Tutorial\TABLES\INIT_COM.FAC and click OK.

Finally, in the Table Editor, click Close Table to close this new table. Save the product, selecting the option to delete

the existing results files as you are not going to use them again.

Scenarios that show the effects of product changes 123

Scenarios that show the effects of product changesIn this section you will see how the effects of the changes you have just made can be checked.

The effect of making themortality rates sex dependentTo demonstrate this, you should create a new model point file based on the existing one.

From the product and accumulation tree: expand the product, then expand the Model Point Files, then double click

on C_ENDT.rpt. Then use the Add Variables button in the Update section of the Table ribbon. Click OK to accept

the default settings for the dialog which appears. You can see the variable VALN_SERIES has been added to the

model point file. Create a second model point by right clicking and selecting Add Row. Then copy the values for the

first model point to the second model point and change the values that are different so that the model points have

the following values:

Variable Model Point 1 Model Point 2

SPCODE 1 2

AGE_AT_ENTRY 30 30

SEX 0 1

POL_TERM_Y 10 10

ANNUAL_PREM 170 160

PREM_PAYBL_M 120 120

PREM_FREQ 1 1

SUM_ASSURED 2000 2000

DURATIONIF_M 79 79

INIT_POLS_IF 1 1

VALN_SERIES 0 0

The first model point represents a policy for a male, and the second represents a policy for a female. Note that the

lower annual premium for females reflects the lower expected mortality rates.

124 Lesson 5 Updating libraries and products

From the Save Table button select Save Table As to change the name to C_ENDT.002 (or I_ENDT.002) and click

OK.

The effect of the valuation seriesTo demonstrate this, you should add another model point to C_ENDT.002. To add an additional row, right click and

then choose the Add Row option. Then enter the following details:

Variable Model Point 3

SPCODE 3

AGE_AT_ENTRY 30

SEX 0

POL_TERM_Y 10

ANNUAL_PREM 170

PREM_PAYBL_M 120

PREM_FREQ 1

SUM_ASSURED 2000

DURATIONIF_M 79

INIT_POLS_IF 1

VALN_SERIES 1

Once you have saved and closed this new model point file, the product is ready to be re-run by clicking on the Run

button.

We have deliberately omitted a stage in this process in order to create an error in the run. Can you identify it now?

Identifying an error in the run 125

Identifying an error in the runIf you look in the Run Monitor you should see that the run pair failed. Click on Run Log to open Results Viewer and

click on the View button for that run. If you double-click on Definition in the tree on the left you should see that the

error is in the Execution stage of the run. If you then double-click on Execution in the tree, you should see the error

message:

ERROR PMP008 Variable VALN_SERIES missing from model point file.

This message indicates that a variable is missing from the model point file that is being read. This has occurred

because the model point file extension in the Tables tab in the Tutorial run setting was not changed from .RPT to

.002 before the product was run.

It is good practice to look at the run log every time a product is run. However, if you had gone straight to Results, the

product C_ENDT would not have been available for selection, as there are no results to report on.

Close Results Viewer. To change the model point file extension, open the Tutorial run setting and amend the File

Extension for Model Point Files to 002 on the Tables tab. You should now re-run the product and look at the results.

You can see the effect of the changes that were made by looking the results for sub-product codes 1, 2 and 3.

126 Lesson 5 Updating libraries and products

127

L E S S O N 6

Further topics

In this lesson you will learn about some further aspects of Prophet, which should help in your general

understanding and use of the system.

T O P I C S I N T H I S L E S S O N

Regeneration of products 128

Re-scanning of products (Auto-Scan) 129

Conclusion 130

128 Lesson 6 Further topics

Regeneration of productsThe Prophet regeneration option forces code for one or more products to be regenerated when they are next

included in the calculation run.

Regeneration should be used in the following cases:

l If changes made in the library only affect core variables then those changes will only be reflected in the

products when they are next regenerated. Using the Regenerate option means that you do not have to re-scan

each of the products concerned. However, you will still need to do this if any of the library changes affect input

variables.

l If libraries and products are copied between PCs but not the compiled product executable files.

l If a new release of Prophet is installed which requires the code to be regenerated to enable new features.

To regenerate one or more products, multi select from the tree and select regenerate from the run section of the

Home ribbon.

The following confirmation dialog is then displayed:

Re-scanning of products (Auto-Scan) 129

Re-scanning of products (Auto-Scan)This option allows you to automatically re-scan products without having to select each one individually. It has the

same effect as opening each product in turn, clicking Re-Scan and saving the product. There are two main reasons

why you might want to use the Auto-Scan option:

l To bring a new input variable into the products, where the default definition is the required one for each

product.

l To remove an input variable from products if it is no longer required.

If you select Auto-Scan in the Product section of the Object menu, the following dialog is displayed:

130 Lesson 6 Further topics

ConclusionYou have now completed the "Introduction to Prophet Tutorial" and should be ready to tackle some real tasks using

Prophet.

l To learn more about Prophet:

l Work through the Model Office Tutorial

This tutorial introduces you to a number of other features which include:

l New business processing

l Accumulations

l Summary library

l Prophet Excel Reporting

l Grouping of model point data in Prophet

l Work through the tutorial in the Data Conversion System and Viewer User's Guide.

l Consult the manuals supplied with Prophet

These manuals are supplied on paper and can also be accessed from within Prophet by selecting User

Manuals on the Support Ribbon.

l Use Help. You can see this by selecting Help Topics on the Support Ribbon, or you can see context sensitive

help by pressing the F1 key. Help contains information for all the system features of Prophet.

l Refer to Actuarial Documentation, this supplies detailed information on Prophet Libraries, indicators and

variables. It is accessed by selecting Global Actuarial Documentation in the Support Ribbon. Context sensitive

Actuarial Documentation can be shown by opening the Context Actuarial Documentation pane at the bottom of

the screen.

l Experiment with the system and the calculations you can set up.

131

Conventional product input files & results

This section contains the product listing and results printouts for the C_ENDT product to help you understand and

identify any mistakes that may have been made.

132 Lesson 7 Conventional product input files& results

Product listingThis listing in this section is the final version of the I_ENDT product after any changes in the tutorial. It can be

produced by selecting the product from the list and doing the following:

l Click Prophet button and from the Prophet menu choose Print to display the Print Products dialog:

l In the Print Products dialog:

l Choose Selected Product(s)

l Select Indicators, Input Variables and choose Code Order

l Click OK to print the list of products.

Product listing 133

134 Lesson 7 Conventional product input files& results

Product listing 135

136 Lesson 7 Conventional product input files& results

Product listing 137

138 Lesson 7 Conventional product input files& results

Product listing 139

140 Lesson 7 Conventional product input files& results

Product listing 141

142 Lesson 7 Conventional product input files& results

Model point files 143

Model point files

144 Lesson 7 Conventional product input files& results

Parameter file

Global file 145

Global file

146 Lesson 7 Conventional product input files& results

Results

Results 147

148 Lesson 7 Conventional product input files& results

Results 149

150 Lesson 7 Conventional product input files& results

151

International product input files & results

This section contains the product listing and results printouts for the I_ENDT product to help you understand and

identify any mistakes that may have been made.

152 Lesson 8 International product input files& results

Product listingThis listing in this section is the final version of the I_ENDT product after any changes in the tutorial. It can be

produced by selecting the product from the list and doing the following:

l Click Prophet button and from the Prophet menu choose Print to display the Print Products dialog:

l In the Print Products dialog:

l Choose Selected Product(s)

l Select Indicators, Input Variables and choose Code Order

l Click OK to print the list of products.

Product listing 153

154 Lesson 8 International product input files& results

Product listing 155

156 Lesson 8 International product input files& results

Product listing 157

158 Lesson 8 International product input files& results

Product listing 159

160 Lesson 8 International product input files& results

Product listing 161

162 Lesson 8 International product input files& results

Model point files

Parameter file 163

Parameter file

164 Lesson 8 International product input files& results

Global file

Results 165

Results

166 Lesson 8 International product input files& results

Results 167

168 Lesson 8 International product input files& results

Results 169

170 Lesson 8 International product input files& results