Инструмент ценового ограничения из дерева процентных ставок Black-Derman-Toy
Загрузить файл deriv.mat, что обеспечивает BDTTree. BDTTree структура содержит информацию о времени и процентной ставке, необходимую для оценки инструмента ограничения.
load deriv.mat;Установите требуемые значения. В других аргументах будут использоваться значения по умолчанию.
Strike = 0.03; Settle = '01-Jan-2000'; Maturity = '01-Jan-2004';
Использовать capbybdt для расчета цены инструмента ограничения.
Price = capbybdt(BDTTree, Strike, Settle, Maturity)
Price = 28.4001
Задайте необходимые аргументы для трех спецификаций, необходимых для создания дерева BDT.
Compounding = 1; ValuationDate = '01-01-2000'; StartDate = ValuationDate; EndDates = ['01-01-2001'; '01-01-2002'; '01-01-2003'; '01-01-2004'; '01-01-2005']; Rates = [.1; .11; .12; .125; .13]; Volatility = [.2; .19; .18; .17; .16];
Создайте спецификации.
RateSpec = intenvset('Compounding', Compounding,... 'ValuationDate', ValuationDate,... 'StartDates', StartDate,... 'EndDates', EndDates,... 'Rates', Rates); BDTTimeSpec = bdttimespec(ValuationDate, EndDates, Compounding); BDTVolSpec = bdtvolspec(ValuationDate, EndDates, Volatility);
Создайте дерево BDT из спецификаций.
BDTTree = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec)
BDTTree = struct with fields:
FinObj: 'BDTFwdTree'
VolSpec: [1x1 struct]
TimeSpec: [1x1 struct]
RateSpec: [1x1 struct]
tObs: [0 1 2 3 4]
dObs: [730486 730852 731217 731582 731947]
TFwd: {[5x1 double] [4x1 double] [3x1 double] [2x1 double] [4]}
CFlowT: {[5x1 double] [4x1 double] [3x1 double] [2x1 double] [5]}
FwdTree: {1x5 cell}
Задайте аргументы ограничения. Остальные аргументы будут использовать значения по умолчанию.
CapStrike = 0.10;
Settlement = ValuationDate;
Maturity = '01-01-2002';
CapReset = 1;Использовать capbybdt чтобы найти цену инструмента с колпачком.
Price= capbybdt(BDTTree, CapStrike, Settlement, Maturity,...
CapReset)Price = 1.7169
Определите RateSpec.
Rates = [0.03583; 0.042147; 0.047345; 0.052707; 0.054302]; ValuationDate = '15-Nov-2011'; StartDates = ValuationDate; EndDates = {'15-Nov-2012';'15-Nov-2013';'15-Nov-2014' ;'15-Nov-2015';'15-Nov-2016'}; Compounding = 1; RateSpec = intenvset('ValuationDate', ValuationDate,'StartDates', StartDates,... 'EndDates', EndDates,'Rates', Rates, 'Compounding', Compounding)
RateSpec = struct with fields:
FinObj: 'RateSpec'
Compounding: 1
Disc: [5x1 double]
Rates: [5x1 double]
EndTimes: [5x1 double]
StartTimes: [5x1 double]
EndDates: [5x1 double]
StartDates: 734822
ValuationDate: 734822
Basis: 0
EndMonthRule: 1
Определите инструмент колпачка.
Settle ='15-Nov-2011'; Maturity = '15-Nov-2015'; Strike = 0.04; CapReset = 1; Principal ={{'15-Nov-2012' 100;'15-Nov-2013' 70;'15-Nov-2014' 40;'15-Nov-2015' 10}};
Создайте дерево BDT.
BDTTimeSpec = bdttimespec(ValuationDate, EndDates); Volatility = 0.10; BDTVolSpec = bdtvolspec(ValuationDate, EndDates, Volatility*ones(1,length(EndDates))'); BDTTree = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec)
BDTTree = struct with fields:
FinObj: 'BDTFwdTree'
VolSpec: [1x1 struct]
TimeSpec: [1x1 struct]
RateSpec: [1x1 struct]
tObs: [0 1 2 3 4]
dObs: [734822 735188 735553 735918 736283]
TFwd: {[5x1 double] [4x1 double] [3x1 double] [2x1 double] [4]}
CFlowT: {[5x1 double] [4x1 double] [3x1 double] [2x1 double] [5]}
FwdTree: {1x5 cell}
Цена амортизирующей шапки.
Basis = 0; Price = capbybdt(BDTTree, Strike, Settle, Maturity, CapReset, Basis, Principal)
Price = 1.4042
BDTTree - Древовидная структура процентных ставокДревовидная структура процентных ставок, определенная с помощью bdttree.
Типы данных: struct
Strike - Ставка, по которой осуществляется ограничениеСтавка, по которой осуществляется ограничение, указанная как NINSTоколо-1 вектор десятичных значений.
Типы данных: double
Settle - Дата расчета для пределаДата расчета для предела, указанная как NINSTоколо-1 вектор серийных номеров дат или векторы символов дат. Settle для каждого предела устанавливается дата ValuationDate дерева BDT. Аргумент cap Settle игнорируется.
Типы данных: double | char | cell
Maturity - Дата погашения для пределаДата погашения для предела, указанная как NINSTоколо-1 вектор серийных номеров дат или векторы символов дат.
Типы данных: double | char | cell
CapReset - Сброс периодичности оплаты в год 1
(по умолчанию) | числовые(Необязательно) Сбросить периодичность оплаты в год, указанную как NINSTоколо-1 вектор.
Типы данных: double
Basis - Дневная основа прибора0 (факт/факт) (по умолчанию) | целое число от 0 кому 13(Необязательно) База подсчета дней, представляющая основу, используемую при ежегодной индексации входной форвардной ставки, указанной как NINSTоколо-1 вектор целых чисел.
0 = факт/факт
1 = 30/360 (SIA)
2 = фактически/360
3 = факт/365
4 = 30/360 (PSA)
5 = 30/360 (ISDA)
6 = 30/360 (европейский)
7 = факт/365 (японский)
8 = факт/факт (ICMA)
9 = факт/360 (ICMA)
10 = факт/365 (ICMA)
11 = 30/360E (ICMA)
12 = факт/365 (ISDA)
13 = BUS/252
Дополнительные сведения см. в разделе Базис.
Типы данных: double
Principal - Условная основная сумма100
(по умолчанию) | числовые(Необязательно) Условная основная сумма, указанная как NINSTоколо-1 условных основных сумм или NINSTоколо-1 массив ячеек, где каждый элемент является NumDatesоколо-2 массив ячеек, где первый столбец - даты, а второй столбец - связанная сумма основного долга. Дата указывает последний день, когда действительным является основное значение.
Использовать Principal для передачи графика расчета цены для амортизирующего предела.
Типы данных: double | cell
Options - Структура опционов на деривативы(Необязательно) Структура опционов ценообразования деривативов, указанная с помощью derivset.
Типы данных: struct
Price - Ожидаемая цена верхнего предела в момент времени 0Ожидаемая цена ограничения в момент времени 0, возвращенная как NINSTоколо-1 вектор.
PriceTree - Древовидная структура со значениями кэпа на каждом узлеДревовидная структура со значениями верхнего предела на каждом узле, возвращаемая как структура MATLAB ® деревьев, содержащих векторы цен приборов и вектор времени наблюдения для каждого узла:
PriceTree.PTree содержит предельные цены.
PriceTree.tObs содержит время наблюдения.
Верхний предел - это договор, который включает гарантию, устанавливающую максимальную процентную ставку, подлежащую выплате держателем, на основе плавающей процентной ставки.
Выплата за ограничение составляет:
, 0)
Дополнительные сведения см. в разделе Кепка.
bdttree | capbynormal | cfbybdt | floorbybdt | swapbybdt
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.