| InsuranceContract.ParameterDefaults {LifeInsureR} | R Documentation |
Default parameters for the InsuranceContract class.
Description
A new contract will be pre-filled with these values, and values passed in the constructor (or with other setter functions) will override these values.
Usage
InsuranceContract.ParameterDefaults
Format
The parameter list is a list of lists with the following structure:
Sublists:
-
$ContractData... Contract-specific data (policy period, closing, age, sum insured, premium payments, etc.) -
$ContractState... Current contract state (paid-up, surrender penalty already applied, alpha costs already (partially) refunded) -
$ActuarialBases... Actuarial bases for the contract calculation (mortality/invalidity table, guaranteed interest, surrender penalty, etc.) -
$Costs,$minCosts... Expenses charged to the contract (seeinitializeCosts()) -
$Loadings... Loadings, rebates and other charges of the tariff / contract (tax, unit costs, surcharge for no medial exam, premium/benefit frequency loading) -
$Features... Peculiarities of the tariff (to enable non-standard formulas for certain company-specific historical "glitches" in the tariff definitions.) -
$ProfitParticipation... Profit scheme and profit participation rates (default values, can be overwritten per profit scenario) -
$Hooks... Hook functions to allow modification of various calculation aspects (e.g. modify the default cash flows after their setup)
Elements of sublist InsuranceContract.ParameterDefault$ContractData
These values are typically set per contract and not by the tariff. Notable exceptions are the contract duration in some instances and the premiumPeriod=1 for single-premium contracts.
$idID of the contract (to distinguish individual parts in contracts with multiple parts, e.g. dynamic increases), default = "Hauptvertrag"
$sumInsuredSum insured, default = 100,000
$premiumPremium, given to determine the sumInsured (default: NULL)
$initialCapitalReserve/Capital that is already available at contract inception, e.g. from a previous contract. No tax or acquisition costs are applied to this capital.
$YOB (deprecated)Year of birth of the insured, used to determine the age for the application of the mortality table
$birthDateDate of birth of the insured, used to determine the age for the application of the mortality table. Alternatively, the year alone can be passed as
YOB.$ageAge of the insured
$technicalAgeTechnical age of the insured (when the age for the application of the mortality table does not coincide with the real age)
$ageDifferencesVector of age differences to the first insured for contracts with multiple insured (i.e. joint-lives)
$sexSex of the insured, to allow gender-specific prixing (e.g. different mortalities or age modification), default="unisex", Type is SexEnum
$policyPeriodPolicy Duration (in years)
$premiumPeriodPremium payment period (in year), for single-premium contracts,
premiumPeriod = 1. Default ispolicyPeriod, i.e. regular premiums during the whole contract period$deferralPerioddeferral period for annuities, i.e. the period survival payments start only after this period, typically the retirement age. This applies mostly to tariffs of type annuity, although deferral periods are possible (but not common) for all other types of insurance, too.
$guaranteedPeriodguaranteed annuity payment period. The annuity pays out for this period, even if the insured dies. This applies only to tariffs of type annuity.
$contractClosingThe date (variable of type Date) when the coverage of the contract starts (not neccessarily equal to the date when the contract was signed). Typically generated by a call to
as.Date(). The year is relevant to derive the age of the insured, while month and day are relevant for the interpolation of the balance sheet reserves$blockStartFor contracts with multiple blocks (e.g. multiple dynamic increases, where each increase is modelled like a separate contract), this variable holds the offset of the current contract block relative to the main contract block. The main block starts a 0, dynamic increases start later! This value is only used by the parent block (i.e. $t=0$ of the child is aligned with $t=blockStart$ of the parent block.
$premiumPaymentsWhether premiums are paid in advance (default) or arrears. Value is of type PaymentTimeEnum with possible values "in advance" and "in arrears"
$benefitPaymentsWhether recurring benefits (e.g. annuities) are paid in advance (default) or arrears. Value is of type PaymentTimeEnum with possible values "in advance" and "in arrears"
$premiumFrequencyNumber of premium payments per year, default is 1.
$benefitFrequencyNumber of benefit payments per year, default is 1.
$premiumRefundProportion of (gross) premiums refunded on death (including additional risk, e.g. 1.10 = 110% of paid premiums)
$premiumRefundPeriodThe period, during which the premium refund on death applies. By default, deferred contracts will refund premiums only during the deferral period, all other contracts during the whole contract. Default is
premiumRefundPeriod.default$premiumIncreaseThe yearly growth factor of the premium, i.e. 1.05 means +5% increase each year; a vector describes the premiums for all years
$annuityIncreaseThe yearly growth factor of the annuity payments, i.e. 1.05 means +5% increase each year; a vector describes the annuity unit payments for all years
$deathBenefitThe yearly relative death benefit (relative to the initial sum insured); Can be set to a
function(len, params, values), e.g.deathBenefit = deathBenefit.linearDecreasing$benefitParameter(optional) Tariff-specific parameter to indicate special benefit conditions (e.g. for non-constant benefits the initial starting value, or a minimum benefit, etc.). This parameter is not used automatically, but needs to be processed by a custom
$deathBenefitfunction.$costWaiverThe fraction of the costs that are waived (only those cost components that are defined to be waivable, i.e. by defining a corresponding
$minCosts). Linearly interpolates between$Costsand$minCosts, if the latter is set. Otherwise is has no effect.$attributesAdditional custom attributes (as a named list), which can be used for particular behaviour of different contracts or contract slices.
Elements of sublist InsuranceContract.ParameterDefault$ContractState
Contract-specific status variables holding the status of the contract.
$premiumWaiverWhether the contract is paid-up.
$surrenderPenaltyWhether a surrender penalty still applies (e.g. because it has already been applied during a contract change, or because due to legal reasons it can no longer be applied)
$alphaRefundedWhether alpha costs have (at least partially) been refunded (e.g. when a contract is changed or paid-up). Default is not yet refunded.
Elements of sublist InsuranceContract.ParameterDefault$ActuarialBases
Tarif-specific actuarial calculation parameters of the contract. Typically, these values are set by the tariff, but can be overridden by contract (e.g. while prototyping a new product or a product change).
$mortalityTableThe mortalityTable object describing the mortality of the insured
$invalidityTableFor contracts with invalidity benefits, the mortalityTable object describing the probabilities of invalidity
$invalidityEndsContractFor contracts with invalidity benefits, whether a payment of an invalidity benefit ends the contract.
$iGuaranteed yearly interest rate, default is 0.00, i.e. 0%
$balanceSheetDateThe day/month when balance sheet reserves are calculated. Value of type Date, typically generated with
as.Date(). The year is actually irrelevant, only the day and month are relevant.$balanceSheetMethodHow to interpolate the balance sheet reserves (at the balandeSheetDate) from the yearly contractual reserves. Either a string "30/360", "act/act", "act/360", "act/365" or a function with signature
balanceSheetMethod(params, contractDates, balanceDates)that returns a vector of coefficients for each year to interpolate the reserves available at the givencontractDatesfor the desiredbalanceDates$unearnedPremiumsMethodHow to calculate the unearned premiums (considering the balance sheet date and the premium frequency). A function with signature
unearnedPremiumsMethod(params, dates)$surrenderValueCalculationA function describing the surrender value calculation. If NULL, the full reserve will be used as surrender value. If given, it must be a function with signature
function(SurrenderReserve, params, values).$premiumWaiverValueCalculationA function describing the reserve used to derive the premium-free sum insured. If NULL, the surrender value will be used. If given, it must be a function with signature
function(SurrenderReserve, params, values)$premiumFrequencyOrderOrder of the approximation for payments within the year (unless an extra frequency loading is used => then leave this at 0)
$benefitFrequencyOrderOrder of the approximation for payments within the year (unless an extra frequency loading is used => then leave this at 0)
Elements of sublist InsuranceContract.ParameterDefault$Costs
Definition of contractual costs charged to the contract. See initializeCosts().
$CostsThe full cost defined for the contract / tariff, usually set with
initializeCosts()andsetCost()$minCostsThe minimum costs defined for the contract / tariff that cannot be waived. Either an explicit cost definition structure generated by
initializeCosts()andsetCost(), or afunction(params, values, costs), where the full costs are passed as third parameter, so the function can modify only those cost parts that can be waived at all.
Elements of sublist InsuranceContract.ParameterDefault$Loadings
$ongoingAlphaGrossPremiumAcquisition cost that increase the gross premium
$taxinsurance tax, factor on each premium paid, default is 4%, i.e.
i=0.04$unitcostsAnnual unit cost for each policy, absolute value (can be a function)
$securityAdditional security loading on all benefit payments, factor on all benefits
$noMedicalExamLoading when no medicial exam is done, % of SumInsured
$noMedicalExamRelativeLoading when no medicial exam is done, % of gross premium
$sumRebategross premium reduction for large premiums, % of SumInsured
$extraRebategross premium reduction for any reason, % of SumInsured
$premiumRebategross premium reduction for large premiums, % of gross premium
$partnerRebateRebate on premium with all surcharges and rebates when more than one contract is written with identical parameters. Sums with advanceBonusInclUnitCost and premiumRebate.
$extraChargeGrossPremiumextra charges on gross premium (smoker, leisure activities, BMI too high, etc.)
$benefitFrequencyLoadingLoading on the benefit for premium payment frequencies of more than once a year. Format is
list("1" = 0.0, "2" = 0.0, "4" = 0.0, "12" = 0.0)$premiumFrequencyLoadingLoading on the premium for premium payment frequencies of more than once a year. Format is
list("1" = 0.0, "2" = 0.0, "4" = 0.0, "12" = 0.0)$alphaRefundPeriodHow long the acquisition costs should be (partially) refunded in case of surrender or premium waiver.
$commissionPeriodPeriod, over which the acquisition costs are charged to the contract (if not fully up-front or over the whole contract period). This has only an effect for cost definitions with duration "CommissionPeriod". Default is 5 years.
Elements of sublist InsuranceContract.ParameterDefault$Features
$zillmeringWhether the contract uses Zillmering (and bases reserves on the Zillmer reserve as opposed to the adequate reserve) (default: TRUE)
$betaGammaInZillmerWhether beta and gamma-costs should be included in the Zillmer premium calculation
$alphaRefundLinearWhether the refund of alpha-costs on surrender is linear in t or follows the NPV of an annuity
$useUnearnedPremiumsWhether unearned premiums should be reported in the balance sheet reserves. Otherwise, a premium paid at the beginning of the period is added to the reserve at that time for balance-sheet purposes. For regular premiums, the default is TRUE, i.e. the balance-sheet reserve at time $t$ does not include the premium paid at time $t$, but unearned premiums are included in the balance sheet reserves. For single-premium contracts, there are no "unearned" premiums, but the initial single premium is added to the reserve immediately for balance-sheet purposes. In particular, the balance sheet reserve at time $t=0$ is not 0, but the premium paid. In turn, no unearned premiums are applied.
$surrenderIncludesCostsReservesWhether (administration) cost reserves are paid out on surrender (i.e. included in the surrender value before surrender penalties are applied)
$unitcostsInGrossWhether unit costs are included in the gross premium calculation or added after gross premiums. (default: FALSE)
$absPremiumRefundConstant death benefit (typically premium refund of a previous contract), relative to the sum insured.
$alphaCostsCommissionWhether alpha costs over the commision period are given as their actual yearly value ("actual"), or whether the given value is the sum ("sum") or the present value ("presentvalue") over the whole commission period.
Elements of sublist InsuranceContract.ParameterDefault$ProfitParticipation
Parameters describing the profit participation (instance of ProfitParticipation) Most element descrive some kind of profit rate (which can vary in time), while the bases, on which they are applied is defined in the profit scheme.
$advanceProfitParticipationAdvance profit participation rate (percentage rebate of the gross premium)
$advanceProfitParticipationInclUnitCostAdvance profit participation rate (percentage rebate on the gross premium after all surcharges and unit costs.
$waitingPeriodWaiting period of the profit sharing (e.g. no profit in the first two years of a contract, or similar)
$guaranteedInterestIndividual contract-specific overrides of the guaranteed interest rate (i.e. not keyed by year)
$interestProfitRateInterest profit rate (guaranteed interest rate + interest profit rate = total credited rate)
$totalInterestTotal credited rate (guarantee + interest profit)
$mortalityProfitRateMortality Profit rate
$expenseProfitRateExpense profit rate
$sumProfitRateSum profit rate (for high sumInsured)
$terminalBonusRateTerminal bonus rate (non-terminal-bonus fund, but "old" Austrian terminal bonus)
$terminalBonusFundRateTerminal bonus fund rate
$profitParticipationSchemeProfit participation scheme (object of class ProfitParticipation)
$profitComponentsProfit components of the profit scheme. List containing one or more of
c("interest", "risk", "expense", "sum", "terminal")$profitClassString describing the profit class the tariff is assigned to. Profit classes are used to bundle similar contracts (e.g. following similar risks) together. Profit participation rates are defined at the level of profit classes.
$profitRatesGeneral, company-wide profit rates, key columns are year and profitClass
$scenariosprofit participation scenarios (list of overridden parameters for each scenario)
Elements of sublist InsuranceContract.ParameterDefault$Hooks
$adjustCashFlowsFunction with signature
function(x, params, values, ...)to adjust the benefit/premium cash flows after their setup.$adjustCashFlowsCostsFunction with signature
function(x, params, values, ...)to adjust the costs cash flows after their setup.$adjustCostsFunction with signature
function(costs, params, values, ...)to adjust the tariff costs after their setup (e.g. contract-specific conditions/waivers, etc.).$adjustMinCostsFunction with signature
function(minCosts, costs, params, values, ...)to adjust the tariff minimum (unwaivable) costs after their setup (e.g. contract-specific conditions/waivers, etc.).$adjustPresentValuesAdjust the present value vectors that are later used to derive premiums and reserves.
function(presentValues, params, values)$adjustPresentValuesCostsAdjust the present value cost vectors used to derive premiums and reserves.
function(presentValuesCosts, params, values)$adjustPremiumCoefficientsFunction with signature
function(coeff, type, premiums, params, values, premiumCalculationTime)to adjust the coefficients for premium calculation after their default setup. Use cases are e.g. term-fix tariffs where the Zillmer premium term contains the administration cost over the whole contract, but not other gamma- or beta-costs.$adjustPremiumsAdjust the resulting premiums.
function(premiums = list(premiums, coefficients, sumInsured), params, values)$adjustPVForReservesAdjust the absolute present value vectors used to derive reserves (e.g. when a sum rebate is subtracted from the gamma-cost reserves without influencing the premium calculation).
function(absPV, params, values)$premiumRebateCalculationCalculate the actual premium rebate from the rebate rate (e.g. when the premium rate is given as a yearly cost reduction applied to a single-premium contract).
function(premiumRebateRate, params = params, values = values)
Examples
InsuranceContract.ParameterDefaults