私はoutstanding_balance
をpythonを使って計算できる方程式を定式化しようとしています。それは反復プロセスを使用すると非常に簡単です。たとえば:Python CashFlow Calculator
for month in range(1, self.amortMonths + 1):
# Calculate intial and future interest payments
interest = self.originalPrin * self.rate/12
# Calculate intial and future principal payments
principal_pmt = self.pmt - interest
# Outstanding balance is reduced by the principal_pmt
self.originalPrin = self.originalPrin - principal_pmt
のでself.amortMonths
は基本的にローンがオフに支払われなければならないとself.rate
と一緒に、彼らは借り手が軽減するINORDERを支払わなければならない毎月の金額ですself.pmt
変数を決定するときの毎月の期間でありますself.oringalPrin
の値はself.amortMonths
の末尾まで0
になります。
例:
は、私が最初の月のための私の利息の支払額が1000×10%= $ 100の10%の金利で$ 1000(OutstandingPrin)のローンを持っていると言うことができます。 self.pmt
の金額を見つけるために、私はnumpy.pmt
関数を使ってoutstandingPrin、rate、amortMonthsをパラメータとして取って毎月の支払い額を生成し、amortMonthsの終わりまでOutstandingPrinを0に減らしました。 self.pmt = $120
、次にprincipal_pmt = 120 - 100 = $20
と言います。したがって、来月のoutstandingPrinは1000-20=$980
です。それはちょうど繰り返しプロセスになります。
私は実際には、反復プロセスを必要とせずにこれを行うことができる式を決定するためにいくつかの助けが必要です。どうやら、私は線形代数を使用する必要がありますが、私は数学の背景から来ていないので、私は誰もがアイデアを持っているのだろうかと思っていた?
EDIT:
したがって、このような何か:
Balance_i = Balance_i-1 - (pmt - Balance_i-1 * Rate)
。
あなたが答える前に、私が試している新しい解決策を見つけました。基本的に、numpyを使って、私は一連のシステム方程式を解いています。各項には方程式があります。私はそれを行列形式にして、numpyを使って解きます。 A X = B.しかし、私は本当にあなたの解答と時間を感謝します。 – anderish