ProfitParticipationFunctions {LifeInsureR} | R Documentation |
Helper functions for profit participation
Description
Various helper functions for the ProfitParticipation
class that
provide the building blocks for the individual components of profit participation,
the rates and how the assigned profit is calculated.
Usage
PP.base.NULL(rates, params, values, ...)
PP.base.PreviousZillmerReserve(rates, params, values, ...)
PP.base.ZillmerReserveT2(rates, params, values, ...)
PP.base.contractualReserve(rates, params, values, ...)
PP.base.previousContractualReserve(rates, params, values, ...)
PP.base.meanContractualReserve(rates, params, values, ...)
PP.base.ZillmerRiskPremium(rates, params, values, ...)
PP.base.sumInsured(rates, params, values, ...)
PP.base.totalProfitAssignment(res, ...)
PP.rate.interestProfit(rates, ...)
PP.rate.riskProfit(rates, ...)
PP.rate.expenseProfit(rates, ...)
PP.rate.sumProfit(rates, ...)
PP.rate.terminalBonus(rates, ...)
PP.rate.terminalBonusFund(rates, ...)
PP.rate.interestProfitPlusGuarantee(rates, ...)
PP.rate.interestProfit2PlusGuarantee(rates, ...)
PP.rate.totalInterest(rates, ...)
PP.rate.totalInterest2(rates, ...)
PP.rate.interestProfit2(rates, ...)
getTerminalBonusReserve(
profits,
rates,
terminalBonus,
terminalBonusAccount,
params,
values,
...
)
PP.calculate.RateOnBase(base, rate, waiting, rates, params, values, ...)
PP.calculate.RateOnBaseMin0(base, rate, waiting, rates, params, values, ...)
PP.calculate.RatePlusGuaranteeOnBase(
base,
rate,
waiting,
rates,
params,
values,
...
)
PP.calculate.RateOnBaseSGFFactor(
base,
rate,
waiting,
rates,
params,
values,
...
)
sumProfits(profits, cols)
PP.benefit.ProfitPlusTerminalBonusReserve(profits, ...)
PP.benefit.Profit(profits, ...)
PP.benefit.ProfitPlusGuaranteedInterest(profits, rates, ...)
PP.benefit.ProfitPlusTotalInterest(profits, rates, params, values)
PP.benefit.ProfitPlusHalfTotalInterest(profits, ...)
PP.benefit.ProfitPlusHalfGuaranteedInterest(profits, rates, ...)
PP.benefit.ProfitPlusInterestMinGuaranteeTotal(profits, rates, ...)
PP.benefit.ProfitPlusHalfInterestMinGuaranteeTotal(profits, rates, ...)
PP.benefit.ProfitGuaranteeSupporting(profits, rates, params, values, ...)
PP.benefit.TerminalBonus5YearsProRata(profits, params, ...)
PP.benefit.TerminalBonus5Years(profits, params, ...)
PP.benefit.TerminalBonus(profits, params, ...)
PP.benefit.None(profits, ...)
Arguments
rates |
data.frame of profit rates |
params |
Contract-specific, full set of parameters of the contract (merged parameters of the defaults, the tariff, the profit participation scheme and the contract) |
values |
Contract values calculated so far (guaranteed component of the insurance contract, including cash flows, premiums, reserves etc.). |
... |
Other values that might be used for the calculation (currently unused) |
res |
the data.frame of reserves. |
profits |
The array of profit participation component values |
terminalBonus |
The terminal bonus calculated |
terminalBonusAccount |
The terminal bonus account (like a bank account, where terminal bonuses are accrued, potentiall discounted from the maturity) |
base |
The profit calculation base, on which the rate is to be applied |
rate |
The profit participation rate |
waiting |
A possible waiting period |
cols |
The columns of the profit values array to be summed (columns given that do not exist in the profits array are ignired) |
Functions
-
PP.base.NULL()
: Basis for profit: NONE (i.e. always returns 0) -
PP.base.PreviousZillmerReserve()
: Basis for profit: Previous Zillmer reserve (no administration cost reserve) -
PP.base.ZillmerReserveT2()
: Basis for profit: Zillmer reserve (no administration cost reserve) at time t-2 -
PP.base.contractualReserve()
: Basis for profit: Contractual reserve (including administration costs) at time t -
PP.base.previousContractualReserve()
: Basis for profit: Contractual reserve (including administration costs) at time t-1 -
PP.base.meanContractualReserve()
: Basis for profit: Contractual reserve (including administration costs) averaged over t and t-1 -
PP.base.ZillmerRiskPremium()
: Basis for risk/mortality profit: Zillmer Risk Premium of the past year -
PP.base.sumInsured()
: Basis for expense/sum profit: sum insured -
PP.base.totalProfitAssignment()
: Basis for Terminal Bonus Fund Assignment: total profit assignment of the year -
PP.rate.interestProfit()
: Returns the array of interest profit rates (keyed by year) -
PP.rate.riskProfit()
: Returns the array of risk profit rates (keyed by year) -
PP.rate.expenseProfit()
: Returns the array of expense profit rates (keyed by year) -
PP.rate.sumProfit()
: Returns the array of sum profit rates (keyed by year) -
PP.rate.terminalBonus()
: Returns the array of terminal bonus rates (keyed by year) -
PP.rate.terminalBonusFund()
: Returns the array of terminal bonus rates (keyed by year) as the terminal bonus fund ratio -
PP.rate.interestProfitPlusGuarantee()
: Rate for interest on past profits: total credited rate, but at least the guarantee -
PP.rate.interestProfit2PlusGuarantee()
: Rate for interest on past profits: total creditedrate2, but at least the guarantee -
PP.rate.totalInterest()
: Rate for interest on past profits: total interest rate -
PP.rate.totalInterest2()
: Rate for interest on past profits: second total interest rate -
PP.rate.interestProfit2()
: Rate for interest on past profits: second interest profit rate (not including guaranteed interest), keyed by year -
getTerminalBonusReserve()
: Calculate the terminal bonus reserve. -
PP.calculate.RateOnBase()
: Calculate profit by a simple rate applied on the basis (with an optional waiting vector of values 0 or 1) -
PP.calculate.RateOnBaseMin0()
: Calculate profit by a simple rate applied on the basis (with an optional waiting vector of values 0 or 1), bound below by 0 -
PP.calculate.RatePlusGuaranteeOnBase()
: Calculate profit by a rate + guaranteed interest applied on the basis (with an optional waiting vector of values 0 or 1) -
PP.calculate.RateOnBaseSGFFactor()
: Calculate profit by a simple rate applied on the basis (with only (1-SGFFactor) put into profit participation, and an optional waiting vector of values 0 or 1) -
sumProfits()
: Extract the given columns of the profit participation array of values and sum them up. Columns that do not exist, because the profit scheme does not provide the corresponding profit component will be silently ignored. This allows generic benefit calculation functions to be written that do not need to distinguish e.g. whether an old-style terminal bonus or a terminal bonus fund is provided.This function is not meant to be called directly, but within a profit benefit calculation function.
-
PP.benefit.ProfitPlusTerminalBonusReserve()
: Calculate survival benefit as total profit amount plus the terminal bonus reserve -
PP.benefit.Profit()
: Calculate benefit as total profit accrued so far -
PP.benefit.ProfitPlusGuaranteedInterest()
: Calculate accrued death benefit as total profit with (guaranteed) interest for one year -
PP.benefit.ProfitPlusTotalInterest()
: Calculate accrued death benefit as total profit with total interest (interest on profit rate) for one year -
PP.benefit.ProfitPlusHalfTotalInterest()
: Calculate accrued benefit as total profit with total interest (interest on profit rate) for half a year -
PP.benefit.ProfitPlusHalfGuaranteedInterest()
: Calculate death benefit as total profit with (guaranteed) interest for one year -
PP.benefit.ProfitPlusInterestMinGuaranteeTotal()
: Calculate accrued benefit as total profit with interest for one year (max of guarantee and total interest) -
PP.benefit.ProfitPlusHalfInterestMinGuaranteeTotal()
: Calculate accrued benefit as total profit with interest for half a year (max of guarantee and total interest) -
PP.benefit.ProfitGuaranteeSupporting()
: Calculate accrued benefit as regular profit, but used to cover initial Zillmerization -
PP.benefit.TerminalBonus5YearsProRata()
: Calculate benefit from terminal bonus as 1/n parts of the terminal bonus reserve during the last 5 years -
PP.benefit.TerminalBonus5Years()
: Terminal bonus is only paid out during the last 5 years of the contract (but never during the first 10 years) -
PP.benefit.TerminalBonus()
: Calculate benefit from terminal bonus (full bonus), either old-style terminal bonus reserve or Terminal Bonus Fund (TBF) -
PP.benefit.None()
: No benefit paid out