Ипотечный пул с фиксированной процентной ставкой

Введение

Программное обеспечение Financial Instruments Toolbox™ поддерживает вычисления, связанные с типичными ипотечными пулами с фиксированной процентной ставкой и займами со вздутыми выплатами. Типичные ипотечные пулы с фиксированной процентной ставкой и займы со вздутыми выплатами имеют сертификаты передачи (PC), которые обычно встраивали колл-опционы в форме предварительной оплаты. Предварительная оплата является избыточной оплатой, применился к принципалу PC. Эти ускоренные платежи уменьшают эффективную жизнь PC.

Тулбокс идет со стандартной Ассоциацией Рынка облигаций (PSA) модель предварительной оплаты и может сгенерировать множители стандартных скоростей предварительной оплаты. Общедоступная Ассоциация рынка ценных бумаг обеспечивает набор универсальных методов для вычисления характеристик ценных бумаг, обеспеченных закладной, когда существует принятая функция предварительной оплаты.

Также кроме стандартной реализации PSA в этом тулбоксе, можно предоставить собственные спроектированные векторы предварительной оплаты. В настоящее время, однако, пользовательская функциональность предварительной оплаты, которая включает специфичную для пула информацию и прогнозы процентной ставки, не доступна в этом тулбоксе. Если вы планируете использовать пользовательские векторы предварительной оплаты в своих вычислениях, вы, по-видимому, уже владеете таким комплектом в MATLAB®.

Входные параметры функций

Из-за типичной, универсальной природы функций передачи тулбокса можно подстроить их, чтобы соответствовать конкретной ипотеке. Большинство функций требует, по крайней мере, этого набора входных параметров:

  • Грубая купонная ставка

  • Расчетный день

  • Выпустите (эффективную) дату

  • Дата погашения

Типичные дополнительные входные параметры включают стандартную скорость предварительной оплаты (или настроенный вектор), сетевая купонная ставка (если отличающийся от грубой купонной ставки), и платежная задержка номера дней.

Все вычисления основаны на ожидаемых платежных днях и фактическом потоке наличности инвестору. Например, когда GrossRate и CouponRate отличаются как входные параметры к mbsdurp, функция возвращает измененную длительность на основе CouponRate. (Существенным исключением является mbspassthrough, который возвращает количества интереса на основе GrossRate.)

Генерация векторов предварительной оплаты

Можно сгенерировать PSA несколько векторов предварительной оплаты быстро. Чтобы сгенерировать векторы предварительной оплаты 100 и 200 PSA, ввести

PSASpeed = [100, 200];
[CPR, SMM] = psaspeed2rate(PSASpeed);

Эта функция вычисляет два значения предварительной оплаты: условный уровень предварительной оплаты (CPR) и уровень одного ежемесячного выхода из строя (SMM). CPR является процентом выдающегося принципала, предварительно оплаченного за один год. SMM является процентом выдающегося принципала, предварительно оплаченного за один месяц. Другими словами, CPR является ежегодной версией SMM.

Начиная с целого 360 2 массив является слишком длинным, чтобы показать в этом документе, наблюдать SMM (100 и 200 PSA) графики, расположенные с интервалами на расстоянии в один месяц, вместо этого.

Предположения предварительной оплаты формируют основание, на котором базируются намного более всесторонние вычисления MBS. Как рисунок, наблюдайте следующий пример, который показывает использование функционального mbscfamounts, чтобы сгенерировать потоки наличности и синхронизации на основе набора стандартных предварительных оплат.

Рассмотрите три ипотечных пула, которые были проданы на дате выпуска (который запускается неамортизированный). Первые два пула "воздушный шар" за 60 месяцев и третье регулярно амортизируются в конец. Скорости предварительной оплаты приняты, чтобы быть 100, 200, и 200 PSA, соответственно.

Settle     = [datenum('1-Feb-2000');
              datenum('1-Feb-2000');
              datenum('1-Feb-2000')];
                            
Maturity   = [datenum('1-Feb-2030')];
          
IssueDate  = datenum('1-Feb-2000');
GrossRate  = 0.08125;
CouponRate = 0.075;
Delay = 14; 

PSASpeed = [100, 200];
[CPR, SMM] = psaspeed2rate(PSASpeed);

PrepayMatrix = ones(360,3);
PrepayMatrix(1:60,1:2) = SMM(1:60,1:2);
PrepayMatrix(:,3) = SMM(:,2);

[CFlowAmounts, CFlowDates, TFactors, Factors] = ... 
mbscfamounts(Settle, Maturity, IssueDate, GrossRate, ... 
CouponRate, Delay, [], PrepayMatrix);

Четвертый выходной аргумент, Factors, указывает на часть баланса, все еще выдающегося в начале каждого месяца. Снимок состояния этого аргумента в редакторе переменных MATLAB иллюстрирует 60-месячную жизнь первых двух из ипотек с крупными разовыми платежами в погашение долга и продолжением третьей ипотеки до конца (360 месяцев).

Можно с готовностью видеть, что mbscfamounts является стандартным блоком большей части фиксированной процентной ставки и потоков наличности пула воздушного шара.

Заложите предварительные оплаты

Предварительная оплата выгодна для владельца передачи, когда ипотечный пул был куплен со скидкой. Следующий пример сравнивает доходность ипотек (составленный ежемесячно) по сравнению с покупкой чистая цена с постоянной скоростью предварительной оплаты. Пример иллюстрирует, что, когда вы купили пул со скидкой, предварительная оплата генерирует более высокий урожай с уменьшением покупной цены.

Price = [85; 90; 95];
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;

Вычислите ипотеку и доходности по облигациям.

[MYield, BEMBSYield] = mbsyield(Price, Settle, Maturity, ... 
IssueDate, GrossRate, CouponRate, Delay, Speed)
MYield =

    0.1018
    0.0918
    0.0828

BEMBSYield =

    0.1040
    0.0936
    0.0842

Если бы для этого того же пула ипотек, не было никакой предварительной оплаты (Speed = 0), урожаи уменьшились бы к

MYield =

    0.0926
    0.0861
    0.0802

BEMBSYield =

    0.0944
    0.0877
    0.0815

Аналогично, если бы уровень предварительной оплаты удвоился (Speed = 200), урожаи увеличились бы до

MYield =

    0.1124
    0.0984
    0.0858

BEMBSYield =

    0.1151
    0.1004
    0.0873

Для того же вектора предварительной оплаты глубже обесценьте пулы, зарабатывают более высокие урожаи. Для получения дополнительной информации смотрите mbsprice и mbsyield.

Рискните измерением

Financial Instruments Toolbox обеспечивает самые основные меры по риску портфеля пула:

  • Измененная длительность

  • Выпуклость

  • Средняя жизнь пула

Рассмотрите следующий пример, который вычисляет Маколея и измененную длительность, учитывая цену ипотечного пула.

Price = [95; 100; 105];
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.1341
    6.3882
    6.6339

ModDuration =

    5.8863
    6.1552
    6.4159

Используя функции Financial Instruments Toolbox, можно получить измененную длительность и выпуклость или от цены или от урожая, пока вы задаете вектор предварительной оплаты или принятую скорость предварительной оплаты. Функции измерения риска тулбокса (mbsdurp, mbsdury, mbsconvp, mbsconvy и mbswal) придерживаются инструкций, перечисленных в Универсальном руководстве Методов PSA.

Оценка ипотечного пула

Для точной оценки ипотечного пула необходимо сгенерировать пути процентной ставки и использовать их с характеристиками ипотечного пула, чтобы правильно оценить пул. Широко используемая методология является настроенным опцией распространением (OAS). OAS измеряет распространение урожая, которое не непосредственно относится к характеристикам инвестиций фиксированного дохода.

Вычисление OAS

Предварительная оплата изменяет потоки наличности в противном случае регулярно амортизирующего ипотечного пула. Всестороннее настроенное опцией вычисление распространения обычно начинается с генерации набора путей точечных уровней, чтобы предсказать предварительную оплату. Путь является набором i пути точечного уровня с соответствующими j потоками наличности на каждом из тех путей.

Эффект OAS на оценке пула показывают математически в следующем уравнении, где K является настроенным опцией распространением.

PoolPrice=1NumberofPaths×iNumberofPathsjCFijCFij(1+zeroratesij+K)Tij

Вычисление эффективной длительности

Также, если вы больше интересуетесь чувствительностью ипотечного пула к изменениям процентной ставки, используйте эффективную длительность, которая является более соответствующей мерой. Эффективная длительность задана математически со следующим уравнением.

EffectiveDuration=P(y+Δy)P(yΔy)2P(y)Δy

Вычисление рыночной цены

Тулбокс имеет все компоненты, требуемые вычислить OAS и эффективную длительность, если вы предоставляете векторы предварительной оплаты или предположения. Для OAS, учитывая вектор предварительной оплаты, можно сгенерировать набор потоков наличности с mbscfamounts. Дисконтирование этих потоков наличности со ссылочной кривой и затем добавление OAS производят рыночную цену. Смотрите Вычислительное Настроенное Опцией Распространение для обсуждения вычисления настроенного опцией распространения.

Эффективная длительность является более сложным вопросом. В то время как измененная длительность изменяет процесс дисконтирования (путем изменения урожая, используемого к дисконтированным потокам денежных средств), эффективная длительность должна составлять изменение в потоке наличности из-за изменения в урожае. Возможное решение состоит в том, чтобы повторно вычислить цены с помощью mbsprice для небольшого изменения в урожае, и во вверх и во вниз направления. В этом случае необходимо повторно вычислить вход предварительной оплаты. Внутренне, это изменяет потоки наличности ипотечного пула. Предположение, что OAS остается постоянным во всех средах урожая, можно применить набор дисконтирования факторов к потокам наличности во вверх и вниз по средам урожая, чтобы найти эффективную длительность.

Смотрите также

| | | | | | | | | | | | | | | | |

Связанные примеры

Больше о