cbondbystt

Ценовые конвертируемые облигации от стандартного трехчленного дерева

Синтаксис

Price = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio)
[Price,PriceTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio)
[Price,PriceTree,EquityTree,DebtTree] = cbondbystt(___,Name,Value)

Описание

пример

Price = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio) ценовые конвертируемые облигации с помощью стандартного трехчлена (STT) древовидное использование Тсиверайоти и метода Фернандеса.

пример

[Price,PriceTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio) ценовые конвертируемые облигации с помощью стандартного трехчлена (STT) древовидное использование Тсиверайоти и метода Фернандеса.

пример

[Price,PriceTree,EquityTree,DebtTree] = cbondbystt(___,Name,Value) ценовые конвертируемые облигации от стандартного трехчлена (STT) древовидное использование кредитного спреда или слияние риска значения по умолчанию связи.

Чтобы включить риск в форме кредитного спреда (метод Тсиверайотис-Фернандеса), используйте дополнительный входной параметр пары "имя-значение" Spread. Чтобы включить кредитный риск в алгоритм, задайте дополнительные входные параметры пары "имя-значение" DefaultProbability и RecoveryRate.

Примеры

свернуть все

Создайте RateSpec.

StartDates = 'Jan-1-2015'; 
EndDates = 'Jan-1-2020'; 
Rates = 0.025; 
Basis = 1; 

RateSpec = intenvset('ValuationDate',StartDates,'StartDates',StartDates,...
'EndDates',EndDates,'Rates',Rates,'Compounding',-1,'Basis',Basis)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.8825
            Rates: 0.0250
         EndTimes: 5
       StartTimes: 0
         EndDates: 737791
       StartDates: 735965
    ValuationDate: 735965
            Basis: 1
     EndMonthRule: 1

Создайте StockSpec.

AssetPrice = 80; 
Sigma = 0.12; 
StockSpec = stockspec(Sigma,AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1200
         AssetPrice: 80
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Создайте STTTree.

TimeSpec = stttimespec(StartDates, EndDates, 20);
STTTree = stttree(StockSpec, RateSpec, TimeSpec)
STTTree = struct with fields:
       FinObj: 'STStockTree'
    StockSpec: [1x1 struct]
     TimeSpec: [1x1 struct]
     RateSpec: [1x1 struct]
         tObs: [1x21 double]
         dObs: [1x21 double]
        STree: {1x21 cell}
        Probs: {1x20 cell}

Задайте конвертируемую облигацию. Конвертируемая облигация может быть названа, начав 1 января 2016 с цены исполнения опциона 95.

CouponRate = 0.03;
Settle = 'Jan-1-2015'; 
Maturity = 'April-1-2018'; 
Period = 1;
CallStrike = 95; 
CallExDates = [datenum('Jan-1-2016') datenum('April-1-2018')];
ConvRatio = 1;
Spread = 0.025;

Оцените конвертируемую облигацию с помощью стандартной трехчленной древовидной модели.

[Price,PriceTree,EqtTre,DbtTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio,...
'Period',Period,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1)
Price = 90.2511
PriceTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

EqtTre = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

DbtTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

Этот пример демонстрирует анализ эффекта распространения 4%-й конвертируемой облигации купона, вызываемой в 110 в конце второго года, назревающего за пять лет, с распространениями 0, 50, 100, и 150 BP.

Задайте RateSpec.

StartDates = '1-Apr-2015';
EndDates = '1-Apr-2020';
Rates = 0.05;
Compounding = -1;
Basis = 1;
RateSpec = intenvset('StartDates',StartDates,'EndDates',EndDates,'Rates',Rates,...
'Compounding',Compounding,'Basis',Basis)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.7788
            Rates: 0.0500
         EndTimes: 5
       StartTimes: 0
         EndDates: 737882
       StartDates: 736055
    ValuationDate: 736055
            Basis: 1
     EndMonthRule: 1

Задайте данные о конвертируемой облигации.

Settle = '1-Apr-2015';
Maturity = '1-Apr-2020';
CouponRate = 0.04;
CallStrike = 110;
CallExDates = [datenum('1-Apr-2017') datenum(Maturity)];
ConvRatio = 1;
AmericanCall = 1;
Sigma = 0.3;
Spreads = 0:0.005:0.015;
Prices = 40:10:140;
convprice = zeros(length(Prices),length(Spreads));

Задайте TimeSpec для Стандартного Трехчленного Дерева, создайте STTTree с помощью stttree и оцените конвертируемую облигацию с помощью cbondbystt.

NumSteps = 200;
TimeSpec = stttimespec(StartDates, EndDates, NumSteps);

for PriceIdx = 1:length(Prices)
    StockSpec = stockspec(Sigma, Prices(PriceIdx));
    STTT = stttree(StockSpec, RateSpec, TimeSpec);
    convprice(PriceIdx,:) = cbondbystt(STTT,  CouponRate, Settle, Maturity, ConvRatio,...
    'Spread', Spreads(:),'CallExDates', CallExDates, 'CallStrike', CallStrike,...
    'AmericanCall', AmericanCall);
end

Постройте анализ эффекта распространения для конвертируемой облигации.

stock = repmat(Prices',1,length(Spreads));
plot(stock,convprice);
legend({'+0 bp'; '+50 bp'; '+100 bp'; '+150 bp'});
title ('Effect of Spread using Trinomial tree - 200 steps')
xlabel('Stock Price');
ylabel('Convertible Bond Price');
text(50, 150, ['Coupon 4% semiannual,', sprintf('\n'), ...
    '110 Call after 2 years,' sprintf('\n'), ...
    'maturing in 5 years.'],'fontweight','Bold')

Создайте структуру термина процентной ставки RateSpec.

StartDates = 'Jan-1-2015';
EndDates = 'Jan-1-2020';
Rates = 0.025;
Basis = 1;

RateSpec = intenvset('ValuationDate',StartDates,'StartDates',StartDates,...
'EndDates',EndDates,'Rates',Rates,'Compounding',-1,'Basis',Basis)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.8825
            Rates: 0.0250
         EndTimes: 5
       StartTimes: 0
         EndDates: 737791
       StartDates: 735965
    ValuationDate: 735965
            Basis: 1
     EndMonthRule: 1

Создайте StockSpec.

AssetPrice = 80;
Sigma = 0.12;
StockSpec = stockspec(Sigma,AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1200
         AssetPrice: 80
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Создайте дерево STT для акции.

TimeSpec = stttimespec(StartDates, EndDates, 20);
STTTree = stttree(StockSpec, RateSpec, TimeSpec)
STTTree = struct with fields:
       FinObj: 'STStockTree'
    StockSpec: [1x1 struct]
     TimeSpec: [1x1 struct]
     RateSpec: [1x1 struct]
         tObs: [1x21 double]
         dObs: [1x21 double]
        STree: {1x21 cell}
        Probs: {1x20 cell}

Задайте и оцените конвертируемую облигацию с помощью дополнительных аргументов DefaultProbability и RecoveryRate.

CouponRate = 0.03;
Settle = 'Jan-1-2015';
Maturity = 'April-1-2018';
Period = 1;
CallStrike = 95;
CallExDates = [datenum('Jan-1-2016') datenum('April-1-2018')];
ConvRatio = 1;
DefaultProbability = .30;
RecoveryRate = .82;

[Price,PriceTree,EqtTre,DbtTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio,...
'Period',Period,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1,...
'DefaultProbability',DefaultProbability,'RecoveryRate',RecoveryRate)
Price = 80
PriceTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

EqtTre = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

DbtTree = struct with fields:
    FinObj: 'TrinPriceTree'
     PTree: {1x21 cell}
      tObs: [1x21 double]
      dObs: [1x21 double]

Входные параметры

свернуть все

Древовидная структура запаса для стандартного трехчленного дерева, заданного при помощи stttree.

Типы данных: struct

Уровень облигационного купона, заданный как NINST-by-1 десятичный годовой показатель или NINST-by-1 массив ячеек, где каждым элементом является NumDates-by-2 массив ячеек. Первый столбец NumDates-by-2 массив ячеек является датами, и второй столбец является сопоставленными уровнями. Дата указывает в последний день, что купонная ставка допустима.

Типы данных: double | cell

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

Примечание

Дата Settle каждой конвертируемой облигации назначена к ValuationDate стандартного трехчлена (STT) дерево запаса. Аргумент связи, Settle, проигнорирован.

Типы данных: double | char

Дата погашения, заданная как NINST-by-1 скаляр с помощью последовательного неотрицательного номера даты или вектора символов даты.

Типы данных: double | char

Количество долей, конвертируемых к одной связи, заданной как NINST-by-1 с неотрицательным номером.

Типы данных: double

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: [Price,PriceTree,EquityTree,DebtTree] = cbondbystt(STTTree,CouponRate,Settle,Maturity,ConvRatio,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1)

Количество пунктов по ссылочному уровню, заданному как пара, разделенная запятой, состоящая из 'Spread' и NINST-by-1 вектор.

Примечание

Чтобы включить риск в форме кредитного спреда (метод Тсиверайотис-Фернандеса), используйте дополнительный входной параметр Spread. Чтобы включить кредитный риск в алгоритм, задайте дополнительные входные параметры DefaultProbability и RecoveryRate. Не используйте Spread с DefaultProbability и RecoveryRate.

Типы данных: double

Купоны в год, заданный как пара, разделенная запятой, состоящая из 'Period' и NINST-by-1 вектор.

Типы данных: double

Дата выпуска облигаций, заданная как пара, разделенная запятой, состоящая из 'IssueDate' и NINST-by-1 вектор с помощью последовательного номера даты или вектора символов даты.

Типы данных: double | char

Неправильная первая дата купона, заданная как пара, разделенная запятой, состоящая из 'FirstCouponDate' и NINST-by-1 скаляр с помощью последовательного номера даты или вектора символов даты.

Типы данных: double | char

Неправильная последняя дата купона, заданная как пара, разделенная запятой, состоящая из 'LastCouponDate' и NINST-by-1 последовательный номер даты или вектор символов даты.

Типы данных: double | char

Номинальная стоимость, заданная как пара, разделенная запятой, состоящая из 'Face' и NINST-by-1 вектор неотрицательных номинальных стоимостей или NINST-by-1 массив ячеек, где каждым элементом является NumDates-by-2 массив ячеек. Первый столбец NumDates-by-2 массив ячеек является датами, и второй столбец является связанной номинальной стоимостью. Дата указывает в последний день, что номинальная стоимость допустима.

Типы данных: cell | double

Вызовите цену исполнения опциона для европейца, Бермуд или американской опции, заданной как пара, разделенная запятой, состоящая из 'CallStrike' и одно из следующих значений:

  • Для европейского колл-опциона — NINST-by-1 вектор неотрицательных целых чисел

  • Для колл-опциона Бермуд — NINST-by-NSTRIKES матрица значений цены исполнения опциона вызова, где каждая строка является расписанием для одного колл-опциона. Если колл-опцион имеет меньше, чем возможности осуществления NSTRIKES, конец строки дополнен NaN s.

  • Для американского колл-опциона — NINST-by-1 вектор значений цены исполнения опциона для каждой опции.

Типы данных: single | double

Вызовите дату осуществления европейца, Бермуд или американской опции, заданной как пара, разделенная запятой, состоящая из 'CallExDates' и одно из следующих значений:

  • Для европейской опции — NINST-by-1 вектор последовательных чисел даты или векторов символов даты.

  • Для опции Бермуд — NINST-by-NSTRIKES матрица дат осуществления, где каждая строка является расписанием для одной опции. Для европейской опции на дате окончания срока действия опции существует только один CallExDate.

  • Для американской опции — NINST-by-1 или NINST-by-2 матрица контуров даты осуществления. Для каждого инструмента колл-опцион может быть осуществлен в любую древовидную дату между или включая пару дат на той строке. Если CallExDates является NINST-by-1, опция может быть осуществлена между ValuationDate дерева запаса STT и одним перечисленным CallExDate.

Типы данных: double | char | cell

Тип колл-опциона, заданный как пара, разделенная запятой, состоящая из 'AmericanCall' и NINST-by-1 вектор положительного целого числа, отмечает с помощью значений 0 или 1.

  • Для европейца или опции Бермуд — AmericanCall является 0 для каждого европейца или опции Бермуд.

  • Для американской опции — AmericanCall является 1 для каждой американской опции. Аргумент AmericanCall требуется, чтобы вызывать правила осуществления American.

Типы данных: single | double

Поместите значения забастовки для европейца, Бермуд или американской опции, заданной как пара, разделенная запятой, состоящая из 'PutStrike' и одно из следующих значений:

  • Для европейского пут-опциона — NINST-by-1 вектор неотрицательных целых чисел.

  • Для пут-опциона Бермуд — NINST-by-NSTRIKES матрица значений цены исполнения опциона, где каждая строка является расписанием для одной опции. Если пут-опцион имеет меньше, чем возможности осуществления NSTRIKES, конец строки дополнен NaN s.

  • Для американского пут-опциона — NINST-by-1 вектор значений цены исполнения опциона для каждой опции.

Типы данных: single | double

Поместите дату осуществления европейца, Бермуд или американской опции, заданной как пара, разделенная запятой, состоящая из 'PutExDates' и одно из следующих значений:

  • Для европейской опции — NINST-by-1 вектор последовательных чисел даты или векторов символов даты.

  • Для опции Бермуд — NINST-by-NSTRIKES матрица дат осуществления, где каждая строка является расписанием для одной опции. Для европейской опции на дате окончания срока действия опции существует только один PutExDate.

  • Для американской опции — NINST-by-1 или NINST-by-2 матрица контуров даты осуществления. Для каждого инструмента пут-опцион может быть осуществлен в любую древовидную дату между или включая пару дат на той строке. Если PutExDates является NINST-by-1, пут-опцион может быть осуществлен между ValuationDate дерева запаса STT и одним перечисленным PutExDate.

Типы данных: double | char | cell

Тип пут-опциона, заданный как пара, разделенная запятой, состоящая из 'AmericanPut' и NINST-by-1 вектор положительного целого числа, отмечает с помощью значений 0 или 1.

  • Для европейца или опции Бермуд — AmericanPut является 0 для каждого европейца или опции Бермуд.

  • Для американской опции — AmericanPut является 1 для каждой американской опции. Аргумент AmericanPut требуется, чтобы вызывать правила осуществления American.

Типы данных: single | double

Конвертируемые даты, заданные как пара, разделенная запятой, состоящая из 'ConvDates' и NINST-by-1 или NINST-by-2 матрица последовательных чисел даты или векторов символов даты. Если ConvDates не задан, связь всегда конвертируема до зрелости.

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

Если ConvDates является NINST-by-1, связь может быть преобразована между ValuationDate стандартного трехчлена (STT) дерево запаса и одним перечисленным ConvDates.

Типы данных: single | double | char

Ежегодная вероятность уровня по умолчанию, заданного как пара, разделенная запятой, состоящая из 'DefaultProbability' и NINST-by-1 неотрицательное десятичное значение.

Примечание

Чтобы включить кредитный риск в алгоритм, задайте дополнительные входные параметры DefaultProbability и RecoveryRate. Чтобы включить риск в форме кредитного спреда (метод Тсиверайотис-Фернандеса), используйте дополнительный входной параметр Spread. Не используйте DefaultProbability и RecoveryRate с Spread.

Типы данных: single | double

Скорость восстановления, заданная как пара, разделенная запятой, состоящая из 'RecoveryRate' и NINST-by-1 неотрицательное десятичное значение.

Примечание

Чтобы включить кредитный риск в алгоритм, задайте дополнительные входные параметры DefaultProbability и RecoveryRate. Чтобы включить риск в форме кредитного спреда (метод Тсиверайотис-Фернандеса), используйте дополнительный входной параметр Spread. Не используйте DefaultProbability и RecoveryRate с Spread.

Типы данных: single | double

Выходные аргументы

свернуть все

Ожидаемая цена во время 0, возвращенный как NINST-by-1 массив.

Структура с вектором цен конвертируемой облигации в каждом узле, возвращенном как древовидная структура.

Структура с вектором компонентов акции конвертируемой облигации в каждом узле, возвращенном как древовидная структура.

Структура с вектором компонентов долга конвертируемой облигации в каждом узле, возвращенном как древовидная структура.

Больше о

свернуть все

Вызываемый кабриолет

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

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

Кабриолет с правом досрочного погашения

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

Эта опция защищает держателя от растущих процентных ставок путем сокращения года до зрелости.

Алгоритмы

cbondbycrr, cbondbyeqp, cbondbyitt и cbondbystt возвращают информацию о ценах в форме ценового вектора и ценового дерева. Эти функции реализуют риск или в форме кредитного спреда или в форме слияния риска значения по умолчанию связи. Чтобы включить риск в форме кредитного спреда (метод Тсиверайотис-Фернандеса), используйте дополнительный аргумент пары "имя-значение" Spread. Чтобы включить кредитный риск в алгоритм, задайте дополнительные аргументы пары "имя-значение" DefaultProbability и RecoveryRate.

Ссылки

[1] Tsiveriotis, K. и К. Фернандес. “Оценивая Конвертируемые облигации с Кредитным риском”. Журнал Фиксированного дохода. Vol 8, 1998, стр 95–102.

[2] Оболочка, J. Опции, фьючерсы и Другие Производные. Четвертый Выпуск. Prentice Hall, 2000, стр 646–649.

Введенный в R2015b