| Fixed-Income Toolbox™ | ![]() |
[Balance, Payment, Principal, Interest, Prepayment] = mbspassthrough(OriginalBalance, GrossRate, OriginalTerm, TermRemaining, PrepaySpeed, PrepayMatrix)
| OriginalBalance | Original balance value in dollars (balance at the beginning of each TermRemaining). |
| GrossRate | Gross coupon rate (including fees), in decimal. |
| OriginalTerm | Term of the mortgage in months. |
| TermRemaining | (Optional) Number of full months between settlement and maturity. |
| PrepaySpeed | (Optional) Relation of the conditional payment rate (CPR) to the benchmark model. Default = 0 (no prepayment). Set PrepaySpeed to [] if you input a customized prepayment matrix. |
| PrepayMatrix | (Optional) Used only when PrepaySpeed is unspecified. Customized prepayment vector. A NaN-padded matrix of size max(TermRemaining)-by-NMBS. Each column corresponds to each mortgage-backed security, and each row corresponds to each month after settlement. |
All inputs (except PrepayMatrix) are number of mortgage-backed securities (NMBS) by 1 vectors.
[Balance, Payment, Principal, Interest, Prepayment] = passthrough(OriginalBalance, GrossRate, OriginalTerm, TermRemaining, PrepaySpeed, PrepayMatrix) computes the cash flow of principal, interest, and prepayment of passthrough securities.
All outputs are TermRemaining-by-1 vectors of end-of-month values.
Balance is the principal balance at end of month.
Payment is the total monthly payment.
Principal is the principal portion of the payment.
Interest is the interest portion of the payment.
Prepayment indicates any unscheduled principal payment.
By default, the securities are seasoned. The applicable CPR depends upon TermRemaining based on a 30-year prepayment model (PSA or FHA). You may supply a different CPR vector of size TermRemaining-by-1.
Compute the cash flows and balances of a 3-month old mortgage pool with original term of 360 months, assuming a prepayment speed of 100.
OriginalBalance = 100000; GrossRate = 0.08125; OriginalTerm = 360; TermRemaining = 357; PrepaySpeed = 100; [Balance, Payment, Principal, Interest, Prepayment] =... mbspassthrough(OriginalBalance, GrossRate, OriginalTerm,... TermRemaining, PrepaySpeed);
![]() | mbsoas2yield | mbsprice | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |