There are two ways to repay a mortgage. Even when I read the book, I felt uncomfortable with only the figures that I could not understand, so I tried to express it with mathematical formulas.
http://www.flat35.com/faq/faq_208-4.html
It is a repayment method in which "fixing the monthly repayment amount" is given top priority, and the amount obtained by subtracting interest from it is used for the principal.
months = range(0, 35 * 12)
residual = 36000000
r = 0.012
fixed = 120000
hist_residual = []
hist_reduction = []
hist_interst = []
hist_month = []
for month in months:
if residual < 0: break
reduction = fixed - residual * r / 12.0
residual = residual - reduction
hist_month.append(month)
hist_residual.append(residual)
hist_reduction.append(reduction)
hist_interst.append(residual * r / 12.0)
fig, axs = plt.subplots(2, sharex=True)
axs[0].plot(hist_month, hist_residual)
axs[0].set_ylabel('residual')
axs[1].stackplot(hist_month, [hist_reduction, hist_interst], colors=['blue', 'pink'], labels=['residual', 'interest'])
axs[1].set_xlabel('month')
axs[1].legend()
A method in which the highest priority is to "reduce the principal by a fixed amount every month" and the amount obtained by adding interest to that amount is used as the monthly repayment amount.
months = range(0, 35 * 12)
residual = 36000000
r = 0.012
fixed = 100000
hist_residual = []
hist_reduction = []
hist_interst = []
hist_month = []
for month in months:
if residual < 0: break
reduction = fixed
residual = residual - fixed
hist_month.append(month)
hist_residual.append(residual)
hist_reduction.append(reduction)
hist_interst.append(residual * r / 12.0)
fig, axs = plt.subplots(2, sharex=True)
axs[0].plot(hist_month, hist_residual)
axs[0].set_ylabel('residual')
axs[1].stackplot(hist_month, [hist_reduction, hist_interst], colors=['blue', 'pink'], labels=['residual', 'interest'])
axs[1].set_xlabel('month')
axs[1].legend()
I thought that miscommunication would be reduced if it was written in a calculation formula / programming language rather than expressed in letters because it would be transmitted without error.
Recommended Posts