Documentation

cmoschedcf

Generate cash flows for scheduled collateralized mortgage obligation (CMO) using PAC or TAC model

Syntax

[Balances, Principal, Interest] =
cmoschedcf(PrincipalPayments, TranchePrincipals,
TrancheCoupons, BalanceSchedule)

Description

[Balances, Principal, Interest] =
cmoschedcf(PrincipalPayments, TranchePrincipals,
TrancheCoupons, BalanceSchedule)
generate cash flows for a scheduled CMO such as the planned amortization class (PAC) or targeted amortization class (TAC), given the underlying mortgage pool payments (or payments from another CMO tranche). The output Balance, Principal, and Interest from this function can be used as input into cmoseqcf to further divide the PAC, TAC, or support tranche into sequential tranches.

Input Arguments

PrincipalPayments

Matrix of size 1-by-NUMTERMS, where NUMTERMS is the number of terms remaining. Each column contains the underlying principal payment for the time period corresponding to the row number. Calculate underlying principal payments using mbscfamounts or mbspassthrough. The underlying principal payments can also be outputs from other CMO cash flow functions.

TranchePrincipals

Matrix of size 2-by-1 specifying the initial principal for the scheduled and the support tranche.

TrancheCoupons

Matrix of size 2-by-1 specifying the coupons for the schedule tranche and the support tranche. The weighted average coupon for the CMO should not exceed the coupon of the underlying mortgage.

BalanceSchedule

Matrix of size 1 -by-NUMTERMS, where NUMTERMS is the number of terms remaining. Each element represents the targeted balance schedule for the time period corresponding to that column.

Output Arguments

Balance

Matrix of size 2-by-NUMTERMS, where NUMTERMS is the number of terms remaining. The first row is the principal balances of the scheduled tranche, and the second row is the principal balances of the support tranche at the time period corresponding to the column.

Principal

Matrix of size 2-by-NUMTERMS, where NUMTERMS is the number of terms remaining. The first row is the principal payments of the scheduled tranche, and the second row is the principal payments of the support tranche at the time period corresponding to the column.

Interest

Matrix of size 2-by-NUMTERMS, where NUMTERMS is the number of terms remaining. The first row is the interest payments of the schedule tranche, and the second row is the interest payments of the support tranche at the time period corresponding to the column.

Examples

expand all

Calculate Cash Flows for Each PAC Tranche

Define the mortgage pool under consideration for CMO structuring using mbscfamounts or mbspassthrough. Calculate the underlying mortgage cash flow, define the PAC schedule and CMO tranches, and calculate the cash flows for each tranche.

MortgagePrincipal = 1000000; % underlying mortgage
Coupon = 0.12;
Terms = 6; % months

[PrincipalBalance, MonthlyPayments, SchedPrincipalPayments, ...
InterestPayments, Prepayments] = ...
mbspassthrough(MortgagePrincipal, Coupon, Terms, Terms, 0, []);
PrincipalPayments = SchedPrincipalPayments.' + Prepayments.'
PrincipalPayments =

   1.0e+05 *

    1.6255    1.6417    1.6582    1.6747    1.6915    1.7084

Calculate the PAC schedule for CMO using cmosched.

PrepaySpeed = [100 300];
[BalanceSchedule, InitialBalance] ...
= cmosched(MortgagePrincipal, Coupon, Terms, Terms, PrepaySpeed, [])
BalanceSchedule =

   1.0e+05 *

    8.3617    6.7180    5.0581    3.3828    1.6955         0


InitialBalance =

   9.9886e+05

Define CMO tranches.

TranchePrincipals = ...
[InitialBalance; MortgagePrincipal-InitialBalance];
TrancheCoupons = [0.12; 0.12];

Calculate cash flows for each tranche.

[Balance, Principal, Interest] = ...
cmoschedcf(PrincipalPayments, TranchePrincipals, ...
TrancheCoupons, BalanceSchedule)
Balance =

   1.0e+05 *

    8.3631    6.7213    5.0632    3.3885    1.6970         0
    0.0114    0.0114    0.0114    0.0114    0.0114    0.0000


Principal =

   1.0e+05 *

    1.6255    1.6417    1.6582    1.6747    1.6915    1.6970
         0         0         0         0         0    0.0114


Interest =

   1.0e+03 *

    9.9886    8.3631    6.7213    5.0632    3.3885    1.6970
    0.0114    0.0114    0.0114    0.0114    0.0114    0.0114

More About

expand all

Planned Amortization Class (PAC) Tranches

In a PAC CMO, there is a main tranche, known as the schedule tranche, and a support tranche. The main purpose of a schedule tranche is to give investors in the PAC tranche a more certain cash flow.

Targeted Amortization Class (TAC) Tranches

TACs are like PACs, but principal payment is specified for only one prepayment rate. If prepayment rates are higher or lower, then the principal payment to TAC holders will be higher or lower accordingly.

Schedule and Support Tranche

The main purpose of a PAC tranche is to give investors in the PAC tranche a more certain cash flow. The PAC tranche receives priority for receiving payments of principal and interest that gives investors in the PAC tranche a steadier income. If prepayments differ from what was expected, then the support tranche gets the variable portion of the payments. While income to the support tranche is more variable, it is also higher yielding. Estimates of the yield, average life, and lockout periods of the PAC tranche is more certain.

References

Hayre, Lakhbir, ed., Salomon Smith Barney Guide to Mortgage-Backed and Asset-Backed Securities, John Wiley and Sons, New York, 2001.

Lyuu, Yuh-Dah, Financial Engineering and Computation, Cambridge University Press, 2004.

Was this topic helpful?