mbspassthrough - Mortgage pool cash flows and balances with prepayment

Syntax

[Balance, Payment, Principal, Interest, Prepayment] =  
mbspassthrough(OriginalBalance, GrossRate, OriginalTerm, 
TermRemaining,  PrepaySpeed, PrepayMatrix)

Arguments

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.

Description

[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.

Examples

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);

See Also

mbswal

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS