mbsdurp

Duration of mortgage pool given price

Syntax

[YearDuration, ModDuration] = mbsdurp(Price, Settle, Maturity,
IssueDate, GrossRate, CouponRate, Delay, PrepaySpeed,
PrepayMatrix)

Arguments

Price

Clean price for every $100 face value.

Settle

Settlement date. A serial date number or date string. Settle must be earlier than or equal to Maturity.

Maturity

Maturity date. A serial date number or date string.

IssueDate

Issue date. A serial date number or date string.

GrossRate

Gross coupon rate (including fees), in decimal.

CouponRate

(Optional) Net coupon rate, in decimal. Default = GrossRate.

Delay

(Optional) Delay in days.

PrepaySpeed

(Optional) Relation of the conditional payment rate (CPR) to the benchmark model. Default = 0. 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

[YearDuration, ModDuration] = mbsdurp(Price, Settle, Maturity, IssueDate, GrossRate, CouponRate, Delay, PrepaySpeed, PrepayMatrix) computes the mortgage-backed security Macaulay (YearDuration) in years and modified (ModDuration) durations in years, given time information, price at settlement, and optionally, a prepayment model.

    Note   If you specify the PSA or FHA model, it will be seasoned with how long the debt has been outstanding (the loan's age).

Examples

expand all

Find the Duration of a Mortgage Pool

This example shows how to find the duration of mortgage pool given a mortgage-backed security with the following characteristics.

Price = 101;
Settle = datenum('15-Apr-2002');
Maturity = datenum('1 Jan 2030');
IssueDate = datenum('1-Jan-2000');
GrossRate = 0.08125;
CouponRate = 0.075;;
Delay = 14;
Speed = 100;

[YearDuration, ModDuration] = mbsdurp(Price, Settle, Maturity,...
IssueDate, GrossRate, CouponRate, Delay, Speed)
YearDuration =

    6.4380


ModDuration =

    6.2080

References

[1] PSA Uniform Practices, SF-49

Was this topic helpful?