[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master 358ed8a 3/3: Resolve a marked defect [345]
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master 358ed8a 3/3: Resolve a marked defect [345] |
Date: |
Thu, 13 Aug 2020 14:11:17 -0400 (EDT) |
branch: master
commit 358ed8aa251b35be142b20d3223aa90668b5acb4
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>
Resolve a marked defect [345]
The mce_pmt_corridor strategy was designed for single-premium scenarios:
it simply calculates initial premium as the specified amount divided by
the corridor factor.
Changed the old calculation:
specified_amount[current year] / corridor_factor[first year]
to
specified_amount[first year] / corridor_factor[first year]
because the old one had no plausible meaning.
After the first year, this strategy seems unuseful, although it's not
forbidden: someone may find a use for it someday, perhaps with some
kind of modification.
---
ihs_avstrtgy.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/ihs_avstrtgy.cpp b/ihs_avstrtgy.cpp
index d93f350..e748777 100644
--- a/ihs_avstrtgy.cpp
+++ b/ihs_avstrtgy.cpp
@@ -294,8 +294,10 @@ double AccountValue::DoPerformPmtStrategy
}
case mce_pmt_corridor:
{
-// TODO ?? Shouldn't this be initial specified amount?
- double sa = ActualSpecAmt + (TermIsDbFor7702 ? TermSpecAmt : 0.0);
+ double sa =
+ InvariantValues().SpecAmt [0]
+ + (TermIsDbFor7702 ? InvariantValues().TermSpecAmt[0] : 0.0)
+ ;
return GetModalPremCorridor(0, a_InitialMode, sa);
}
case mce_pmt_table: