[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lmi] Billing monthiversaries before age change [Was: Down a calendr
From: |
Greg Chicares |
Subject: |
Re: [lmi] Billing monthiversaries before age change [Was: Down a calendric rabbit hole] |
Date: |
Mon, 19 Jun 2017 15:18:01 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 |
On 2017-06-02 01:31, Greg Chicares wrote:
> On 2017-06-01 20:18, Greg Chicares wrote:
> [...snip...]
>> But now it seems that this will be unnecessary after all.
>
> What we need instead is simpler than the work snipped above.
>
> A group comprises many certificates (like a policy for each person),
> which are issued at arbitrarily different dates. A group list bill
> is wanted as of a single date, which cuts across certificate
> anniversaries. Of any certificate's twelve monthly charges in a
> billing year, we want to know how many occur before the certificate
> anniversary (when the age changes for rating purposes) and after, so
> that we can add different charges (at different rates) together.
> Charges are levied at the beginning of each certificate month.
The implementation in 'financial.cpp':
// Number of alpha months in the twelvemonth starting on bill date.
int const inforce_months_mod_12 = years_and_months_since
(cert_date, bill_date).second
;
is off by one if the list-bill date does not coincide with a certificate
monthiversary.
To see how the off-by-one issues with list bills should be resolved,
consider which monthly deduction is reflected in these two examples.
First:
45 issue age
2018-07-01 billing anniversary
2018-02-01 certificate anniversary
monthly list bill for 2018-01-01
Plainly the January 1 bill reflects the January 1 deduction. The
second example has the same facts except that the certificate was
issued in the middle of a month:
45 issue age
2018-07-01 billing anniversary
2018-02-15 certificate anniversary
monthly list bill for 2018-01-01
Here, the first month of the bill corresponds to the monthly
deduction occurring fifteen days later, on 2018-01-15: i.e., the
deduction date next following or coincident with the bill date.
It can't be the 2017-12-15 deduction because that deduction must
already have been covered by the last bill--otherwise, it would
have lapsed. And lmi cannot calculate that previous deduction
anyway, because benefits might have been different in December.
Running a case like this in lmi HEAD with "idiosyncrasyL" produces:
"List-bill premium will be set in monthiversary processing on
2018-01-15, which is 0 years and 11 months after the issue date.
An annual-mode list bill will reflect this premium for 2 months,
and a premium determined on the same date but at the next higher
age for 10 months. Other modes will use an appropriate number of
initial elements of that twelve-month premium stream."
The middle sentence is incorrect: the list bill should reflect
(delta) premium (x) for 1 month (not 2), and
(alpha) premium (x+1) for 11 months (not 10).