| name | mortgage-backed |
| description | MBS定价工具,基于PSA简化提前偿付模型生成现金流,计算加权平均寿命(WAL)与有效久期。适用于资产证券化教学、提前偿付风险学习与MBS现金流结构演示;采用静态PSA假设且未覆盖违约/服务利差/路径依赖效应,不适用于实盘MBS定价、OAS分析或投资组合风险管理。 |
| version | 1.0.0 |
| author | wangyi |
mortgage-backed
住房抵押贷款支持证券(MBS)定价工具,使用PSA提前偿付模型生成现金流,计算加权平均寿命(WAL)与有效久期。
📌 说明:本工具基于简化模型实现,仅使用 Python 标准库。结果仅供学习参考,不构成投资建议或交易依据。
脚本API
psa_cpr(month, psa_speed=100.0)
计算PSA模型的条件提前偿付率(CPR)。
必填: month
cpr_to_smm(cpr)
将CPR转换为SMM(单月提前偿付率)。
必填: cpr
monthly_payment(balance, annual_rate, remaining_months)
计算固定利率房贷月供款。
必填: balance, annual_rate, remaining_months
generate_mbs_cashflows(original_balance, coupon_rate, maturity_months, psa_speed=100.0, servicing_fee=0.0)
生成MBS现金流。
必填: original_balance, coupon_rate, maturity_months
price_mbs(original_balance, coupon_rate, maturity_months, psa_speed=100.0, yield_rate=0.05, servicing_fee=0.0)
MBS定价与久期计算。
必填: original_balance, coupon_rate, maturity_months
compare_psa_speeds(original_balance, coupon_rate, maturity_months, yield_rate, speeds=None)
对比不同PSA速度下的MBS指标。
必填: original_balance, coupon_rate, maturity_months, yield_rate
调用示例
python scripts/main.py \
--original-balance <original_balance> \
--coupon-rate <coupon_rate> \
--maturity-months <maturity_months> \
--yield-rate <yield_rate> \
--speeds <speeds>