Я закодировал какое-то погашение l oop с фиксированным годовым погашением и годовой скорректированной процентной нагрузкой. В рамках расчета процентной нагрузки я всегда получаю RuntimeWarning, если у меня есть значение nper 15, потому что оно рассчитывается для 6-го периода / года NaN (см. Рисунок ниже).
Для всех других значений nper, которые я тестировал, это работает хорошо.
Вот мой код:
import numpy as np
Project_period = 20
Loan_term = 15
grace_period = 0
nper = Loan_term - grace_period #repayment period
pv = 21173500 #present value
fv = 0 #future value
rate = 0.025
Repayment_yearly_P75 = pv / nper
expenses_Interest = []
Year_of_operation = 1
while pv > 0 or Year_of_operation <= Project_period:
if pv > 0:
Interest_burden = np.ipmt(rate, 1, nper, pv, fv, when=0)
else:
Interest_burden = 0.0
print(Year_of_operation, pv, abs(Interest_burden))
nper = nper - Year_of_operation
if Year_of_operation > grace_period and pv > 0:
pv = pv - Repayment_yearly_P75
else:
pv = pv
expenses_Interest.append(abs(Interest_burden))
if pv < 0:
pv = 0
else:
pass
Year_of_operation += 1
Кто-нибудь знает, в чем проблема?