まずPMT関数の元利均等返済のローンに関する機能ですが、最終的な計算式にたどりつく元の状態で、次のような式がありました。
この式は、積み立てを計算する次の式にどうも格好が似ています。
この部分を切り口に、財務関数が共有している「現在価値・将来価値」という考え方を仲立ちにして、用語を揃えて比べてみましょう。まずは、ローン/元利均等返済の方から。財務関数では「D:借入額」は「P:現在価値」で、最後の完済状態の右辺「0」が「F:将来価値」なので、
次は、積み立ての計算式について、同じように「b:頭金」は「P:現在価値」、「S:満期受取額」は「F:将来価値」であり、また毎回の積立額「a」をローンとあわせて x とおくと、
なんだか、ますます近づいてきました。2番目の積み立ての式では、金利の r が一回余計に掛けられていますが、それをとりあえず脇におくと、上の(A)の部分は、現在価値(頭金/借入元金)を複利運用したもので、(B)の部分は定期支払額を積み立て運用したものの和(等比級数)ですから、間のプラスマイナスを意識しながら概念図にすると、以下のような感じです。
複利運用された現在価値の先に、定期支払の運用分をさらにプラスに継ぎ足したものが積み立て貯蓄の将来価値で、そこで折り返して相殺したものがローン返済の将来価値、ということです。
PMT関数は x の定期支払額を求める関数ですので、両方を並べて、見比べながらさらに式を整理してみましょう。
このうち、積立ての方が金利の r が1回分多く入っているのは、積立ては期首、ローンは期末の入金を前提として計算式を組み立てたことに対応しています。つまり、財務関数の支払期日のフラグとしては、この初期状態で、積立ては「1:期首」、ローンは「0:期末」の設定になっています。ローンで「1:期首」を与えるためには、金利でもう1回余分に割り引く必要がありますので、結局双方ともに「1:期首」のフラグを立てるときには、この追加の r の項を増やしてやればよい、という共通の動作になります。
また、式の前半部については、上の図と数式から、将来価値と現在価値(の運用額)の差がどちらにおいても、定期支払額の運用部分になりますので、PMT関数のプラスマイナスの符合のことは無視して、金額だけを知るのであれば、差の絶対値をとってやれば両者の違いを吸収できます。従って結論としては、以下の式で両方の計算は一本化できることになります。
先に使った例で値をセットしていくつか検算してみます。まず、元利均等払いで使った、100万円を金利2%で10回返済するケース。
次は、同じく消費者金融のローン・シミュレーションと比べた、100万円を年利17.8%で12回払いで返済するケース。
積立ての方も入れてみます。サンプルで使った、頭金10万円を2%、10回の積立てで目標額を680,335円とすると、1回の積立額はいくらになるか。
支払期日の仕様についても確認してみます。そこで使った、1万円返済を1回だけで行う例です。期末の入金では1回分の金利がつき、期首の入金ではそこから1回分割り引かれて金利なしになっています。
以上については、興味を持ったので調べてみたというだけで、(ほかで同じことをしている資料も見当たらなかったので)内容の保証もありません。また、積立てとローンでは、もともと金利についての考え方が違うので、共通化できるといっても、あくまで計算の操作上のものにしかすぎません。
とはいえ、こんなふうに考えれば、PMT関数の内部では、同じひとつの計算で二つの機能を賄(まかな)っていることが、かなり確からしいものとして推定できるのではないか、ということで、そのひとつの参考にしていただければと思います。