我正在尝试创建一个简单的贷款摊销。出于某种原因,我的代码在几个时期后停止工作。从 2006 年 4 月 30 日开始,我的代码不识别期初余额,不计算此余额的利息,也不计算期末余额。非常感谢任何建议。
import numpy as np
import pandas as pd
from datetime import datetime
data = pd.DataFrame({'date': pd.date_range("2006-01-01", "2011-12-31", freq='M')})
data['date'] = pd.to_datetime(data['date'])
data.set_index(data['date'], inplace=True)
orig_balance = 1000000
interest_rate = .06
day_count = 30/360
data['monthly_principal_pmt'] = 10000
date_cut_off = '2006-01-31'
data['beginning_balance'] = 0
for row in data:
data.at[date_cut_off,'beginning_balance'] = orig_balance
data['ending_balance'] = np.maximum(data['beginning_balance'] - data['monthly_principal_pmt'],0)
data['monthly_interest_pmt'] = data['beginning_balance'] * day_count * interest_rate
data['beginning_balance'] = data['ending_balance'].shift()