В целом рабочий процесс CMO:
Рассчитать базовые потоки ипотечных денежных средств.
Определение траншей CMO
При использовании CMO PAC или TAC вычислите основной график.
Рассчитать денежные потоки для каждого транша.
Анализ CMO путем вычисления цены, выражения, спреда денежных потоков CMO.
Базовые сквозные денежные потоки ипотечного пула вычисляются существующей функцией mbspassthrough
. Функции денежного потока CMO требуют основных платежей (включая предоплату), рассчитанных из существующих функций. mbspassthrough
или mbscfamounts
.
principal = 10000000; coupon = 0.06; terms = 360; psa = 150; [principal_balance, monthly_payments, sched_principal_payments,... interest_payments, prepayments] = mbspassthrough(principal,... coupon, terms, terms, psa, []); principal_payments = sched_principal_payments.' + prepayments.';
После определения основных платежей для базового залога ипотеки можно сгенерировать денежные потоки для последовательного CMO, с Z-облигацией или без нее, используя cmoseqcf
. Для CMO PAC или TAC, денежные потоки генерируются с помощью cmoschedcf
Определение транша СМО; для примера задайте CMO с двумя траншами:
TranchePrincipals = [500000; 500000]; TrancheCoupons = [0.06; 0.06];
Рассчитать график основного баланса PAC/TAC на основе полосы скоростей PSA. Для запланированных CMO (PAC/TAC) функции денежного потока CMO дополнительно берут в основной график сальдо, рассчитанный функцией графика CMO cmosched
.
speed = [100 300];
[balanceSchedule, initialBalance] = cmosched(principal, coupon,...
terms, terms, speed, TranchePrincipals(1));
Можно повторно использовать выход из функций генерации денежного потока для дальнейшего разделения денежных потоков на транши. Для примера, выход из cmoschedcf
для транша PAC может быть разделен на последовательные транши путем передачи основных денежных потоков транша PAC в cmoschedcf
функция. Выходами функций денежного потока CMO являются основной и процентный денежные потоки и основной остаток.
[principal_balances, principal_cashflows, interest_cashflows] = cmoschedcf(principal_payments,...
TranchePrincipals, TrancheCoupons, balanceSchedule);
Выходы функций CMO (cmoseqcf
и cmoschedcf
) являются денежными потоками. Функции, используемые для анализа CMO, основаны на этих денежных потоках. Для этого можно использовать cfbyzero
, cfspread
, cfyield
, и cfprice
для вычисления цен, выражения и спредов для денежных потоков CMO. В сложение, используя следующее, можно вычислить средневзвешенный срок службы (WAL) для каждого транша в CMO:
где:
P является общим принципалом.
Pi является основным погашением купонного i.
- доля основной суммы, погашенной в купонных i.
ti - это время в годах от начала до купона i.
cmosched
| cmoschedcf
| cmoseqcf
| mbscfamounts
| mbspassthrough