Ценовые конвертируемые облигации из биномиального дерева CRR
[ цены конвертируемых облигаций из биномиального дерева CRR с использованием кредитного спреда или с учетом риска дефолта облигаций.Price,PriceTree,EquityTree,DebtTree] = cbondbycrr(___,Name,Value)
Чтобы включить риск в форму кредитного спреда (метод Цивериотиса-Фернандеса), используйте необязательный входной аргумент пара имя-значение Spread. Чтобы включить в алгоритм риск по умолчанию, укажите необязательные входные аргументы пары имя-значение DefaultProbability и RecoveryRate.
Цена конвертируемой облигации с использованием следующих данных для структуры срока процентной ставки:
StartDates = 'Jan-1-2014'; EndDates = 'Jan-1-2015'; Rates = 0.1; Basis = 1;
Создать RateSpec и StockSpec.
Sigma = 0.3; Price = 50; RateSpec = intenvset('ValuationDate',StartDates,'StartDates',StartDates,'EndDates',EndDates,... 'Rates',Rates,'Compounding',-1,'Basis',Basis)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: -1
Disc: 0.9048
Rates: 0.1000
EndTimes: 1
StartTimes: 0
EndDates: 735965
StartDates: 735600
ValuationDate: 735600
Basis: 1
EndMonthRule: 1
StockSpec = stockspec(Sigma,Price)
StockSpec = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.3000
AssetPrice: 50
DividendType: []
DividendAmounts: 0
ExDividendDates: []
Создайте дерево CRR для собственного капитала.
Settle = '1-Jan-2014'; Maturity = '1-Oct-2014'; NumSteps = 3; TimeSpec = crrtimespec(Settle,Maturity,NumSteps); CRRT = crrtree(StockSpec,RateSpec,TimeSpec)
CRRT = struct with fields:
FinObj: 'BinStockTree'
Method: 'CRR'
StockSpec: [1x1 struct]
TimeSpec: [1x1 struct]
RateSpec: [1x1 struct]
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
STree: {[50] [58.0757 43.0472] [67.4558 50.0000 37.0613] [1x4 double]}
UpProbs: [0.5465 0.5465 0.5465]
Определите и оцените конвертируемую облигацию.
CouponRate = 0; Period = 1; ConvRatio = 2; CallExDates = '1-Oct-2014'; CallStrike = 115; AmericanCall = 1; Spread = 0.05; [Price,PriceTree,EqtTree,DbtTree] = cbondbycrr(CRRT,CouponRate,Settle,Maturity,ConvRatio,... 'Period',Period,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',AmericanCall)
Price = 104.9490
PriceTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {1x4 cell}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
EqtTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {[76.5211] [116.1515 33.0103] [134.9117 61.9209 0] [1x4 double]}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
DbtTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {[28.4278] [0 65.0790] [0 43.6821 96.3327] [0 0 100.0000 100.0000]}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
DefaultProbability и RecoveryRateСоздание структуры срока процентной ставки RateSpec.
StartDates = 'Jan-1-2014'; EndDates = 'Jan-1-2016'; 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.9512
Rates: 0.0250
EndTimes: 2
StartTimes: 0
EndDates: 736330
StartDates: 735600
ValuationDate: 735600
Basis: 1
EndMonthRule: 1
Создать StockSpec.
AssetPrice = 110;
Sigma = 0.22;
Div = 0.02;
StockSpec = stockspec(Sigma,AssetPrice,'continuous',Div)StockSpec = struct with fields:
FinObj: 'StockSpec'
Sigma: 0.2200
AssetPrice: 110
DividendType: {'continuous'}
DividendAmounts: 0.0200
ExDividendDates: []
Создайте дерево CRR для собственного капитала.
Settle = '1-Jan-2014'; Maturity = '1-Oct-2014'; NumSteps = 3; TimeSpec = crrtimespec(Settle,Maturity,NumSteps); CRRT = crrtree(StockSpec,RateSpec,TimeSpec)
CRRT = struct with fields:
FinObj: 'BinStockTree'
Method: 'CRR'
StockSpec: [1x1 struct]
TimeSpec: [1x1 struct]
RateSpec: [1x1 struct]
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
STree: {1x4 cell}
UpProbs: [0.4782 0.4782 0.4782]
Определите и оцените конвертируемую облигацию с помощью дополнительного DefaultProbability и RecoveryRate аргументы.
CouponRate = 0; Period = 1; ConvRatio = 2; CallExDates = '1-Oct-2014'; CallStrike = 115; AmericanCall = 1; DefaultProbability = .30; RecoveryRate = .82; [Price,PriceTree,EqtTree,DbtTree] = cbondbycrr(CRRT,CouponRate,Settle,Maturity,ConvRatio,... 'Period',Period,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',AmericanCall,... 'DefaultProbability',DefaultProbability,'RecoveryRate',RecoveryRate)
Price = 220
PriceTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {[220] [245.5317 197.1233] [274.0263 220.0000 176.6254] [1x4 double]}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
EqtTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {[220] [245.5317 197.1233] [274.0263 220.0000 176.6254] [1x4 double]}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
DbtTree = struct with fields:
FinObj: 'BinPriceTree'
PTree: {[0] [0 0] [0 0 0] [0 0 0 0]}
tObs: [0 0.2491 0.4982 0.7473]
dObs: [735600 735691 735782 735873]
CRRTree - Древовидная структура запасаДревовидная структура запаса, заданная с помощью crrtree.
Типы данных: struct
CouponRate - Ставка купона по облигациям Ставка купонного вознаграждения по облигациям, указанная как NINSTоколо-1 десятичная годовая ставка или NINSTоколо-1 массив ячеек, где каждый элемент является NumDatesоколо-2 массив ячеек. Первый столбец NumDatesоколо-2 массив ячеек - даты, а второй столбец - связанные скорости. Дата указывает последний день, когда действительна ставка купона.
Типы данных: double | cell
Settle - Дата расчетаДата расчета, указанная как NINSTоколо-1 скаляр с использованием серийного номера даты или вектора символов даты.
Примечание
Settle для каждой конвертируемой облигации устанавливается дата ValuationDate дерева запасов CRR. Аргумент облигации, Settle, игнорируется.
Типы данных: double | char
Maturity - Дата погашенияДата погашения, указанная как NINSTоколо-1 скаляр с использованием серийного номера даты или вектора символов даты.
Типы данных: double | char
ConvRatio - Количество акций, конвертируемых в одну облигациюКоличество акций, конвертируемых в одну облигацию, указанное как NINSTоколо-1 с неотрицательным числом.
Типы данных: double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
[Price,PriceTree,EquityTree,DebtTree] = cbondbycrr(CRRT,CouponRate,Settle, Maturity, ConvRatio,'Spread',Spread,'CallExDates',CallExDates,'CallStrike',CallStrike,'AmericanCall',1)'Spread' - количество базисных пунктов по базисной ставке;0
(по умолчанию) | векторКоличество базисных точек над эталонной скоростью, указанной как пара, разделенная запятыми, состоящая из 'Spread' и NINSTоколо-1 вектор.
Примечание
Чтобы включить риск в форму кредитного спреда (метод Цивериотиса-Фернандеса), используйте необязательный входной аргумент Spread. Чтобы включить в алгоритм риск по умолчанию, укажите необязательные входные аргументы DefaultProbability и RecoveryRate. Не использовать Spread с DefaultProbability и RecoveryRate.
Типы данных: double
'Period' - Купоны в год2 в год (по умолчанию) | векторКупоны в год, указанные как пара, разделенная запятыми, состоящая из 'Period' и NINSTоколо-1 вектор.
Типы данных: double
'IssueDate' - Дата выпуска облигацийДата выпуска облигаций, указанная как пара, разделенная запятыми, состоящая из 'IssueDate' и NINSTоколо-1 с использованием серийного номера даты или вектора символов даты.
Типы данных: double | char
'FirstCouponDate' - нерегулярная дата первого купонаНеправильная дата первого купона, указанная как пара, разделенная запятыми, состоящая из 'FirstCouponDate' и NINSTоколо-1 с использованием серийного номера даты или вектора символов даты.
Типы данных: double | char
'LastCouponDate' - нерегулярная дата последнего купонаНеправильная дата последнего купона, указанная как пара, разделенная запятыми, состоящая из 'LastCouponDate' и NINSTоколо-1 с использованием серийного номера даты или вектора символов даты.
Типы данных: char | double
'Face' - Номинал100
(по умолчанию) | неотрицательное значение | массив ячеек неотрицательных значенийНоминальное значение, указанное как пара, разделенная запятыми, состоящая из 'Face' и NINSTоколо-1 вектор неотрицательных номиналов или NINSTоколо-1 массив ячеек, где каждый элемент является NumDatesоколо-2 массив ячеек. Первый столбец NumDatesоколо-2 массив ячеек - даты, а второй столбец - связанное номинальное значение. Дата указывает последний день, когда номинал является действительным.
Типы данных: cell | double
'CallStrike' - Цена колл-страйка для европейского, бермудского или американского вариантаЦена колл-страйка для европейского, бермудского или американского варианта, указанная как пара, разделенная запятыми, состоящая из 'CallStrike' и одно из следующих значений:
Для европейского варианта колла - NINSTоколо-1 вектор неотрицательных целых чисел
Для варианта вызова на Бермудские острова - NINSTоколо-NSTRIKES матрица значений цены колл-страйка, где каждая строка является графиком для одного варианта колл. Если опция вызова имеет менее NSTRIKES возможности упражнений, конец строки дополнен NaNs.
Для американского варианта вызова - NINSTоколо-1 вектор значений цены страйка для каждого варианта.
Типы данных: single | double
'CallExDates' - Дата вызова упражнения для европейского, бермудского или американского вариантаДата упражнения вызова для европейского, бермудского или американского варианта, указанная как пара, разделенная запятыми, состоящая из 'CallExDates' и одно из следующих значений:
Для европейского варианта - NINSTоколо-1 вектор серийных номеров дат или векторы символов дат.
Для варианта на Бермудских островах - NINSTоколо-NSTRIKES матрица дат упражнений, где каждая строка является графиком для одного варианта. Для европейского варианта есть только один CallExDate на дату истечения срока действия опциона.
Для американского варианта - NINSTоколо-1 или NINSTоколо-2 матрица границ даты упражнения. Для каждого инструмента опцион колл может быть реализован на любую древовидную дату между или включая пару дат в этой строке. Если CallExDates является NINSTоколо-1, опцион может быть реализован между ValuationDate дерева запасов CRR и отдельного списка CallExDate.
Типы данных: char | cell | double
'AmericanCall' - Индикатор типа опциона вызова0 если AmericanCall является NaN или не введен (по умолчанию) | скаляр | вектор положительных целых чисел[0,1]Тип опции вызова, указанный как пара, разделенная запятыми, состоящая из 'AmericanCall' и NINSTоколо-1 вектор положительных целых флагов со значениями 0 или 1.
Для европейского или бермудского варианта - AmericanCall является 0 по каждому европейскому или бермудскому варианту.
Для американского варианта - AmericanCall является 1 для каждого американского варианта. AmericanCall требуется аргумент для вызова американских правил упражнений.
Типы данных: single | double
'PutStrike' - Ввести значения забастовки для европейского, бермудского или американского вариантаЗначения put strike для европейского, бермудского или американского варианта, указанные как разделенная запятыми пара, состоящая из 'PutStrike' и одно из следующих значений:
Для европейского пут-опциона - NINSTоколо-1 вектор неотрицательных целых чисел
Для Бермудских пут-опциона - NINSTоколо-NSTRIKES матрица значений цены страйка, где каждая строка является графиком для одного варианта. Если опцион пут имеет менее NSTRIKES возможности упражнений, конец строки дополнен NaNs.
Для американского пут-опциона - NINSTоколо-1 вектор значений цены страйка для каждого варианта.
Типы данных: single | double
'PutExDates' - Поставьте дату упражнений для европейского, бермудского или американского вариантаДата задания для европейского, бермудского или американского варианта, указанная как пара, разделенная запятыми, состоящая из 'PutExDates' и одно из следующих значений:
Для европейского варианта - NINSTоколо-1 вектор серийных номеров дат или векторы символов дат.
Для варианта на Бермудских островах - NINSTоколо-NSTRIKES матрица дат выполнения, где каждая строка является графиком для одного варианта. Для европейского варианта есть только один PutExDate на дату истечения срока действия опциона.
Для американского варианта - NINSTоколо-1 или NINSTоколо-2 матрица границ даты упражнения. Для каждого инструмента опцион пут может осуществляться на любую дату дерева между или включая пару дат в этой строке. Если PutExDates является NINSTоколо-1, пут-опцион может быть реализован между ValuationDate дерева запасов CRR и отдельного списка PutExDate.
Типы данных: double | char | cell
'AmericanPut' - Индикатор типа опциона пут0 если AmericanPut является NaN или не введено (по умолчанию) | положительное целое число [0,1] | вектор положительных целых чисел [0,1]Тип опции пут, указанный как пара, разделенная запятыми, состоящая из 'AmericanPut' и NINSTоколо-1 вектор положительных целых флагов со значениями 0 или 1.
Для европейского или бермудского варианта - AmericanPut является 0 по каждому европейскому или бермудскому варианту.
Для американского варианта - AmericanPut является 1 для каждого американского варианта. AmericanPut требуется аргумент для вызова американских правил упражнений.
Типы данных: single | double
'ConvDates' - Конвертируемые датыMaturityDate
(по умолчанию) | серийный номер даты | вектор символов датыКонвертируемые даты, указанные как пара, разделенная запятыми, состоящая из 'ConvDates' и NINSTоколо-1 или NINSTоколо-2 матрица серийных номеров дат или векторов символов дат. Если ConvDates не указан, облигация всегда конвертируема до погашения.
Для каждого инструмента связь может быть преобразована на любую дату дерева между или включая пару дат в этой строке.
Если ConvDates является NINSTоколо-1, связь может быть преобразована между ValuationDate дерева запасов CRR и отдельного списка ConvDates.
Типы данных: char | single | double
'DefaultProbability' - Годовая вероятность дефолта0
(по умолчанию) | неотрицательное десятичное числоГодовая вероятность ставки по умолчанию, указанная как пара, разделенная запятыми, состоящая из 'DefaultProbability' и NINSTоколо-1 неотрицательное десятичное значение.
Примечание
Чтобы включить в алгоритм риск по умолчанию, укажите необязательные входные аргументы DefaultProbability и RecoveryRate. Чтобы включить риск в форму кредитного спреда (метод Цивериотиса-Фернандеса), используйте необязательный входной аргумент Spread. Не использовать DefaultProbability и RecoveryRate с Spread.
Типы данных: single | double
'RecoveryRate' - Коэффициент восстановления1
(по умолчанию) | неотрицательное десятичное числоСкорость восстановления, указанная как пара, разделенная запятыми, состоящая из 'RecoveryRate' и NINSTоколо-1 неотрицательный десятичный знак.
Примечание
Чтобы включить в алгоритм риск по умолчанию, укажите необязательные входные аргументы DefaultProbability и RecoveryRate. Чтобы включить риск в форму кредитного спреда (метод Цивериотиса-Фернандеса), используйте необязательный входной аргумент Spread. Не использовать DefaultProbability и RecoveryRate с Spread.
Типы данных: single | double
Price - Ожидаемая цена в момент времени 0Ожидаемая цена в момент времени 0, возвращено как NINSTоколо-1 массив.
PriceTree - Структура с вектором конвертируемых цен облигаций на каждом узлеСтруктура с вектором конвертируемых цен облигаций в каждом узле, возвращаемая в виде древовидной структуры.
EquityTree - Структура с вектором конвертируемого облигационного долевого компонента на каждом узлеСтруктура с вектором конвертируемого компонента участия в облигациях в каждом узле, возвращаемая в виде древовидной структуры.
DebtTree - Структура с вектором конвертируемой долговой составляющей облигаций на каждом узлеСтруктура с вектором конвертируемого долгового компонента облигации в каждом узле, возвращаемая в виде древовидной структуры.
Конвертируемая облигация, вызываемая эмитентом. Эмитент облигационных сил, устраняющих преимущество, заключающееся в том, что конвертация осуществляется по усмотрению держателя облигаций.
При обращении держатель облигаций может либо конвертировать облигацию, либо погашать ее по цене обращения. Этот вариант позволяет эмитенту контролировать цену конвертируемой облигации и, при необходимости, рефинансировать долг на новую более дешевую.
Конвертируемая облигация с функцией пут позволяет держателю облигаций продать облигацию с премией на определенную дату.
Этот вариант защищает владельца от роста процентных ставок, сокращая год до срока погашения.
cbondbycrr, cbondbyeqp, cbondbyitt, и cbondbysttвозвращает информацию о цене в виде вектора цен и дерева цен. Эти функции реализуют риск либо в виде кредитного спреда, либо с учетом риска дефолта по облигациям. Чтобы включить риск в форму кредитного спреда (метод Цивериотиса-Фернандеса), используйте необязательный аргумент пара имя-значение Spread. Чтобы включить в алгоритм риск по умолчанию, укажите необязательные аргументы пары имя-значение DefaultProbability и RecoveryRate.
[1] Цивериотис, К. и С. Фернандеш. «Оценка конвертируемых облигаций с кредитным риском». Журнал фиксированного дохода. Том 8, 1998, стр. 95-102.
[2] Халл, J. Опционы, фьючерсы и другие деривативы. Четвертое издание. Prentice Hall, 2000, стр. 646-649.
cbondbyeqp | crrsens | crrtree | eqpprice | eqpsens | instadd | instcbond | instdisp | intenvset | stockspec
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.