lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 4405433 01/15: Expunge disused stable-value c


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 4405433 01/15: Expunge disused stable-value calculations [320]
Date: Sun, 14 Feb 2021 18:24:51 -0500 (EST)

branch: master
commit 4405433cac7f9e5b1cbc305cf841f708f046a194
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>

    Expunge disused stable-value calculations [320]
    
    Although old plancodes sometimes used a separate stable-value charge,
    by now it's zero in every case. If a new plancode ever needs such a
    charge, these three numeric sequences:
      Input::ExtraMonthlyCustodialFee
      Input::ExtraCompensationOnAssets
      Input::ExtraCompensationOnPremium
    suffice: the old DB_StableValFundCharge was simply added to
    Input::ExtraCompensationOnAssets anyway. (Those three sequences' names
    suggest original motivations rather than ultimate use: they're simply
    extra charges per policy, per dollar of assets, and per dollar of
    premium.)
---
 dbnames.xpp             | 2 +-
 ihs_avmly.cpp           | 2 --
 interest_rates.cpp      | 7 +------
 interest_rates.hpp      | 2 --
 ledger_text_formats.cpp | 1 -
 5 files changed, 2 insertions(+), 12 deletions(-)

diff --git a/dbnames.xpp b/dbnames.xpp
index 305880d..0773c3f 100644
--- a/dbnames.xpp
+++ b/dbnames.xpp
@@ -150,7 +150,7 @@
 {DB_LoadAmortFundCharge,DB_Topic_AssetCharges,"LoadAmortFundCharge","Asset 
charge for amortized premium load",}, \
 {DB_AllowImfOverride,DB_Topic_AssetCharges,"AllowImfOverride","Allow custom 
fund with input investment management fee: 0=no, 1=yes",}, \
 {DB_AssetChargeType,DB_Topic_AssetCharges,"AssetChargeType","Treatment of 
input extra separate-account asset charge: 0=interest spread, 1=account-value 
load after monthly deduction",}, \
-{DB_StableValFundCharge,DB_Topic_AssetCharges,"StableValFundCharge","Stable 
value fund charge",}, \
+{DB_StableValFundCharge,DB_Topic_AssetCharges,"StableValFundCharge","Stable 
value fund charge [obsolete]",}, \
 {DB_GuarFundAdminChg,DB_Topic_AssetCharges,"GuarFundAdminChg","Guaranteed fund 
administration charge [not used]",}, \
 {DB_CurrFundAdminChg,DB_Topic_AssetCharges,"CurrFundAdminChg","Current fund 
administration charge [not used]",}, \
 {DB_FundCharge,DB_Topic_AssetCharges,"FundCharge","[not used]",}, \
diff --git a/ihs_avmly.cpp b/ihs_avmly.cpp
index 1d1de7a..2bf4403 100644
--- a/ihs_avmly.cpp
+++ b/ihs_avmly.cpp
@@ -2106,7 +2106,6 @@ void AccountValue::ApplyDynamicMandE(currency assets)
 
     // TODO ?? Unused for the moment. At least the first must be
     // implemented in order for reports to show components separately.
-    double stable_value_rate = 0.0;
     double gross_rate = 0.0;
 
     InterestRates_->DynamicMlySepAcctRate
@@ -2117,7 +2116,6 @@ void AccountValue::ApplyDynamicMandE(currency assets)
         ,m_and_e_rate
         ,imf_rate
         ,asset_comp_rate
-        ,stable_value_rate
         );
     YearsSepAcctIntRate     = InterestRates_->SepAcctNetRate
         (SepBasis_
diff --git a/interest_rates.cpp b/interest_rates.cpp
index 0cc1ebf..2314646 100644
--- a/interest_rates.cpp
+++ b/interest_rates.cpp
@@ -365,8 +365,6 @@ void InterestRates::Initialize(BasicValues const& v)
     v.database().query_into(DB_GuarMandE          , MAndERate_[mce_gen_guar]);
     v.database().query_into(DB_CurrMandE          , MAndERate_[mce_gen_curr]);
 
-    v.database().query_into(DB_StableValFundCharge, Stabilizer_             );
-
     // Deduct miscellaneous fund charges and input extra asset comp in
     // the same way as M&E, iff database entity DB_AssetChargeType has
     // the value 'oe_asset_charge_spread'; otherwise, reflect them
@@ -561,7 +559,7 @@ void InterestRates::InitializeSeparateAccountRates()
 
 // TODO ?? Are tiered M&E, IMF, comp treated correctly?
 
-    std::vector<double> miscellaneous_charges(Stabilizer_);
+    std::vector<double> miscellaneous_charges(Zero_);
 // TODO ?? Replace these long lines with PETE expressions.
     // ET !! miscellaneous_charges += AmortLoad_ + ExtraSepAcctCharge_;
     std::transform(miscellaneous_charges.begin(), miscellaneous_charges.end(), 
AmortLoad_         .begin(), miscellaneous_charges.begin(), 
std::plus<double>());
@@ -859,19 +857,16 @@ void InterestRates::DynamicMlySepAcctRate
     ,double&          AnnualSepAcctMandERate
     ,double&          AnnualSepAcctIMFRate
     ,double&          AnnualSepAcctMiscChargeRate
-    ,double&          AnnualSepAcctSVRate
     )
 {
 //    AnnualSepAcctIMFRate    += TieredInvestmentManagementFee_[year]; // TODO 
?? BOGUS
     InvestmentManagementFee_[year] += AnnualSepAcctIMFRate;
     AnnualSepAcctMiscChargeRate    += ExtraSepAcctCharge_    [year];
-    AnnualSepAcctSVRate            += Stabilizer_            [year];
 // TODO ?? Reference argument 'AnnualSepAcctMandERate' is not modified.
 // Shouldn't it be?
 
     double dynamic_spread =
             AnnualSepAcctMandERate
-        +   AnnualSepAcctSVRate
         +   AmortLoad_[year]
         +   AnnualSepAcctMiscChargeRate
         ;
diff --git a/interest_rates.hpp b/interest_rates.hpp
index 58495ae..3e2d37e 100644
--- a/interest_rates.hpp
+++ b/interest_rates.hpp
@@ -171,7 +171,6 @@ class InterestRates
         ,double&          AnnualSepAcctMandERate
         ,double&          AnnualSepAcctIMFRate
         ,double&          AnnualSepAcctMiscChargeRate
-        ,double&          AnnualSepAcctSVRate
         );
 
     std::vector<double> const& RegLoanSpread
@@ -254,7 +253,6 @@ class InterestRates
         ;
     mcenum_spread_method SepAcctSpreadMethod_;
     std::vector<double> SepAcctFloor_;
-    std::vector<double> Stabilizer_; // TODO ?? Obsolete?
     std::vector<double> AmortLoad_;
     std::vector<double> ExtraSepAcctCharge_;
     std::vector<double> InvestmentManagementFee_;
diff --git a/ledger_text_formats.cpp b/ledger_text_formats.cpp
index 17471d1..5f907b7 100644
--- a/ledger_text_formats.cpp
+++ b/ledger_text_formats.cpp
@@ -504,7 +504,6 @@ void PrintCellTabDelimited
         ,"DacTaxLoad"
 // SOMEDAY !! Also:
 //   M&E
-//   stable value
 //   DAC- and premium-tax charge
 //   comp
 //   IMF



reply via email to

[Prev in Thread] Current Thread [Next in Thread]