Main Content

mbswal

Weighted average life of mortgage pool

Description

WAL = mbswal(Settle,Maturity,IssueDate,GrossRate) computes the weighted average life, in number of years, of a mortgage pool, as measured from the settlement date.

example

WAL = mbswal(___CouponRate,Delay,PrepaySpeed,PrepayMatrix) specifies options using one or more optional arguments in addition to the input arguments in the previous syntax.

example

Examples

collapse all

This example shows how to determine the weighted average life of a mortgage pool, given a pass-through security with the following characteristics.

Settle = datetime(2002,4,15);
Maturity = datetime(2030,1,1);
IssueDate = datetime(2000,1,1);
GrossRate = 0.08125;
CouponRate = 0.075;
Delay = 14;
Speed = 100;

WAL = mbswal(Settle, Maturity, IssueDate, GrossRate, ... 
CouponRate, Delay, Speed)
WAL = 
10.5477

Input Arguments

collapse all

Settlement date, specified as an NMBS-by-1 vector using a datetime array, string array, or date character vectors. Settle must be earlier than Maturity.

To support existing code, mbswal also accepts serial date numbers as inputs, but they are not recommended.

Maturity date, specified as an NMBS-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, mbswal also accepts serial date numbers as inputs, but they are not recommended.

Issue date, specified as an NMBS-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, mbswal also accepts serial date numbers as inputs, but they are not recommended.

Gross coupon rate (including fees), specified as an NMBS-by-1 vector of decimal values.

Data Types: double

(Optional) Net coupon rate, specified as an NMBS-by-1 vector of decimal values.

Data Types: double

(Optional) Delay (in days) between payment from homeowner and receipt by bondholder, specified as an NMBS-by-1 vector.

Data Types: double

(Optional) Speed relative to PSA standard, specified as an NMBS-by-1 vector. The PSA standard is 100.

Note

Set the PrepaySpeed to [] if you input a customized PrepayMatrix.

Data Types: double

(Optional) Customized prepayment vector, specified as 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.

Note

Use PrepayMatrix only when PrepaySpeed is unspecified.

Data Types: double

Output Arguments

collapse all

Weighted Average Life (WAL) of MBS, in number of years, returned as a NMBS-by-1 vector.

References

[1] PSA Uniform Practices, SF-49

Version History

Introduced before R2006a

expand all