Предположим, что один пул имеет два остающихся купона, и другой имеет три. MATLAB® ожидает, что матрица предварительной оплаты будет в следующем формате:
V11 V21 V12 V22 NaN V23
V
ij
обозначает уровень одного ежемесячного выхода из строя (SMM) для пула i
во время j
период купона th начиная с Settle
.
Использование NaN
заполнять матрицу предварительной оплаты необходимо, потому что MATLAB не может конкатенировать векторы из различных длин в матрицу. Кроме того, это может служить проверкой на ошибки против любой непреднамеренной операции (любая операция MATLAB, которая возвратила бы NaN
).
Например, примите, что 2-месячный пул имеет постоянный SMM 0,5%, и 3-месячный пул имеет постоянный SMM 1% в каждый период. Матрица предварительной оплаты, которую вы создали бы, изображена ниже.
Создайте этот вход любым способом, является лучшим для вас.
Когда вы задаете скорость предварительной оплаты PSA, MATLAB "сезоны" пул согласно его возрасту.
Когда вы задаете свою собственную матрицу предварительной оплаты, идентифицируете максимальное количество купонов остающееся использование cpncount
. Затем предоставьте элементы матрицы до точки, когда поток наличности прекратит существование.
Когда различные пулы длины должны будут существовать в той же матрице, заполните более короткий (s) NaN
. Каждый столбец матрицы предварительной оплаты соответствует определенному пулу.
mbscfamounts
| mbsconvp
| mbsconvy
| mbsdurp
| mbsdury
| mbsnoprepay
| mbspassthrough
| mbsprice
| mbswal
| mbsyield
| mbsprice2speed
| mbsyield2speed
| psaspeed2default
| psaspeed2rate
| mbsoas2price
| mbsoas2yield
| mbsprice2oas
| mbsyield2oas