The PolicyAttrs Space#

Policy attributes and policy values.

This Space holds policy attributes and policy-level values used by Projection and its base spaces.

Some Cells in this Space, such as product() and issue_age(), retrieve attributes for the model points from policy_data(). Other Cells, such as those used by gross_prem_rate(), derive policy-level values from product specs looked up through product_spec().

Most cells return per-policy NumPy arrays whose layout matches the rows of policy_data(), so callers index into them with the integer policy index idx.

Parameters and References#

input_data#

Alias for InputData. Per-policy attributes are read from the PolicyData range in input.xlsx via policy_data(), and product specs from product_spec().

prem_term#

Alias for policy_term().

return_array#

When True (the default), helper functions inherited from Utilities return NumPy arrays instead of pandas objects.

Type:

bool

Inherited helpers

Inherited from Utilities:

Cells Summary#

Policy Attributes#

Model point attributes read directly from policy_data() for each policy.

product()

Per-policy product type as a ProductID code.

policy_type()

Per-policy policy type from the PolType column of policy_data().

sex()

Per-policy sex as a SexID code.

issue_age()

Per-policy issue age in years.

prem_freq()

Per-policy premium payment frequency (number of payments per year).

policy_term()

Per-policy policy term in years.

policy_count()

Per-policy number of policies in the model point.

sum_assured()

Per-policy sum assured.

gen()

Per-policy generation (cohort) identifier.

channel()

Per-policy distribution channel.

duration()

Per-policy elapsed policy duration in years.

Product Bases#

Per-policy interest rate and mortality table identifiers, selected by rate basis (premium or valuation).

int_rate(basis)

Interest Rate

table_id(basis)

Mortality Table ID

Loadings#

Per-policy acquisition and maintenance loadings used by gross_prem_rate(), together with the raw ProductSpecTable parameters they are built from.

load_acq_sa()

Acquisition Loading per Sum Assured

load_acq_sa_param1()

Per-policy LoadAcqSAParam1 parameter from ProductSpecTable.

load_acq_sa_param2()

Per-policy LoadAcqSAParam2 parameter from ProductSpecTable.

load_maint_prem()

Maintenance Loading per Gross Premium

load_maint_prem_param1()

Per-policy LoadMaintPremParam1 parameter from ProductSpecTable.

load_maint_prem_param2()

Per-policy LoadMaintPremParam2 parameter from ProductSpecTable.

load_maint_prem_waiver_prem()

Maintenance Loading per Gross Premium for Premium Waiver

load_maint_sa()

Maintenance Loading per Sum Assured during Premium Payment

load_maint_sa2()

Maintenance Loading per Sum Assured during Premium Payment

Surrender Charges#

The per-policy initial surrender charge rate and the raw ProductSpecTable parameters it is built from.

init_surr_charge()

Initial Surrender Charge Rate

surr_charge_param1()

Per-policy SurrChargeParam1 parameter from ProductSpecTable.

surr_charge_param2()

Per-policy SurrChargeParam2 parameter from ProductSpecTable.

Misc#

Placeholder cells reserved for future use.

Warning

gross_prem_table(), reserve_rate() and uern_prem_rate() are placeholders that currently return None and are to be implemented.

gross_prem_table()

Gross premium table

reserve_rate()

Valuation Reserve Rate per Sum Assured

uern_prem_rate()

Unearned Premium Rate

Cells Descriptions#

product()[source]#

Per-policy product type as a ProductID code.

policy_type()[source]#

Per-policy policy type from the PolType column of policy_data().

sex()[source]#

Per-policy sex as a SexID code.

issue_age()[source]#

Per-policy issue age in years.

prem_freq()[source]#

Per-policy premium payment frequency (number of payments per year).

policy_term()[source]#

Per-policy policy term in years.

policy_count()[source]#

Per-policy number of policies in the model point.

sum_assured()[source]#

Per-policy sum assured.

gen()[source]#

Per-policy generation (cohort) identifier.

channel()[source]#

Per-policy distribution channel.

duration()[source]#

Per-policy elapsed policy duration in years.

int_rate(basis)[source]#

Interest Rate

table_id(basis)[source]#

Mortality Table ID

load_acq_sa()[source]#

Acquisition Loading per Sum Assured

load_acq_sa_param1()[source]#

Per-policy LoadAcqSAParam1 parameter from ProductSpecTable.

load_acq_sa_param2()[source]#

Per-policy LoadAcqSAParam2 parameter from ProductSpecTable.

load_maint_prem()[source]#

Maintenance Loading per Gross Premium

load_maint_prem_param1()[source]#

Per-policy LoadMaintPremParam1 parameter from ProductSpecTable.

load_maint_prem_param2()[source]#

Per-policy LoadMaintPremParam2 parameter from ProductSpecTable.

load_maint_prem_waiver_prem()[source]#

Maintenance Loading per Gross Premium for Premium Waiver

load_maint_sa()[source]#

Maintenance Loading per Sum Assured during Premium Payment

load_maint_sa2()[source]#

Maintenance Loading per Sum Assured during Premium Payment

init_surr_charge()[source]#

Initial Surrender Charge Rate

surr_charge_param1()[source]#

Per-policy SurrChargeParam1 parameter from ProductSpecTable.

surr_charge_param2()[source]#

Per-policy SurrChargeParam2 parameter from ProductSpecTable.

gross_prem_table()[source]#

Gross premium table

reserve_rate()[source]#

Valuation Reserve Rate per Sum Assured

uern_prem_rate()[source]#

Unearned Premium Rate