bkcall

Ценовой европейский колл-опцион на связях с помощью модели Black

Синтаксис

CallPrice = bkcall(Strike,ZeroData,Sigma,BondData,Settle,Expiry,Period,Basis,EndMonthRule,InterpMethod,StrikeConvention)

Аргументы

Strike

Скаляр или число вариантов (NOPT)-by-1 вектор цен исполнения опциона.

ZeroData

2D столбец (опционально с тремя столбцами) матрица, содержащая нулевую (точечную) информацию об уровне раньше, обесценивал будущие потоки наличности.

  • Столбец 1: Последовательная дата погашения сопоставлена с нулевым уровнем во втором столбце.

  • Столбец 2: Пересчитанные на год нулевые уровни, в десятичной форме, подходящей для дисконтирования потоков наличности, происходящих в день заданный в первом столбце. Все даты должны произойти после Settle (даты должны соответствовать будущим инвестиционным горизонтам) и должно быть в порядке возрастания.

  • (Дополнительный) столбец 3: Ежегодная частота соединения. Значениями является  (ежегодный) 1, 2 (полугодовой, по умолчанию), 3 (три раза в год), 4 (ежеквартально), 6 (два раза в месяц), 12 (ежемесячно) и  (непрерывный) -1.

Sigma

Скаляр или NOPT-by-1 вектор пересчитанных на год волатильностей цен требуются моделью Черного цвета.

BondData

Вектор - строка с три (опционально четыре) столбцы или NOPT-by-3 (опционально NOPT-by-4) матричные характеристики определения базовых связей в форме:

[CleanPrice CouponRate Maturity Face]

CleanPrice является ценой, исключая начисленные проценты.

CouponRate является десятичной купонной ставкой.

Maturity является датой срока действия облигации в последовательном числовом формате даты.

Face является номинальной стоимостью связи. Если незаданный, номинальная стоимость принята, чтобы быть 100.

Settle

Расчетный день опций, заданных как последовательный номер даты или вектор символов даты. Settle также представляет стартовую ссылочную дату входной кривой нулевой ширины.

Expiry

Скаляр или NOPT-by-1 вектор дат погашения опции, заданных как последовательный номер даты или вектор символов даты.

Period

(Необязательно) Количество купонов в год для базовой связи. Значение по умолчанию = (полугодовой) 2. Поддерживаемыми значениями является 0, 1, 2, 3, 4, 6 и 12.

Basis

(Необязательно) основание Дневного количества связи. Вектор целых чисел.

  •  0 = фактический/фактический (значение по умолчанию)

  •  1 = 30/360 (СИА)

  •  2 = Фактический/360

  •  3 = Фактический/365

  •  4 = 30/360 (BMA)

  •  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 = ШИНА/252

Для получения дополнительной информации смотрите основание.

EndMonthRule

(Необязательно) правило Конца месяца. Это правило применяется только, когда Maturity является датой конца месяца в течение месяца, имея 30 или меньше дней. 0 = игнорируют правило, означая, что дата купонного платежа связи всегда является тем же числовым днем месяца. 1 = установленное правило о (значении по умолчанию), означая, что дата купонного платежа связи всегда является прошлым фактическим днем месяца.

InterpMethod

(Необязательно) Скалярный целочисленный метод интерполяции кривой нулевой ширины. Для потоков наличности, которые не падают на дату, найденную в кривой пятна ZeroData, указывает, что метод раньше интерполировал соответствующую нулевую учетную ставку. Доступные методы самый близкий (0), линейный (1), и кубический (2). Значение по умолчанию = 1. Смотрите interp1 для получения дополнительной информации.

StrikeConvention

(Необязательно) Скаляр или NOPT-by-1 вектор соглашений цены исполнения опциона опционного контракта.

StrikeConvention = 0 (значение по умолчанию) задает цену исполнения опциона как наличную (грязную) цену, заплаченную за базовую связь.

StrikeConvention = 1 задает цену исполнения опциона как заключенную в кавычки (чистую) цену, заплаченную за базовую связь. При оценке модели Черного цвета начисленные проценты связи по истечению опции добавляются к входной цене исполнения опциона.

Описание

CallPrice = bkcall(Strike,ZeroData,Sigma,BondData,Settle,Expiry,Period,Basis,EndMonthRule,InterpMethod, StrikeConvention) с помощью модели Черного цвета, выводит NOPT-by-1 вектор цен европейских колл-опционов на связях.

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

Кроме того, можно использовать метод Financial Instruments Toolbox™ getZeroRates для объекта IRDataCurve со свойством Dates создать вектор дат и данных, приемлемых для bkcall. Для получения дополнительной информации смотрите Преобразование Объекта IRDataCurve или IRFunctionCurve.

Примеры

свернуть все

Этот пример показывает, как оценить европейский колл-опцион на связях с помощью модели Black. Рассмотрите европейский колл-опцион на облигации с погашением за 9,75 лет. Базовая связь имеет чистую цену 935$, номинальную стоимость 1 000$, и платит 10%-е полугодовые купоны. Поскольку связь назревает за 9,75 лет, купон за 50$ будет заплачен через 3 месяца и снова через 9 месяцев. Кроме того, примите, что пересчитанная на год энергозависимость прямой цены облигаций составляет 9%. Кроме того, предположите, что опция истекает за 10 месяцев и имеет цену исполнения опциона 1 000$, и что пересчитываемые на год постоянно составляемые безрисковые учетные ставки на сроки платежа 3, 9, и 10 месяцев составляют 9%, 9,5% и 10%, соответственно.

% specify the option information
Settle       =  '15-Mar-2004';
Expiry       =  '15-Jan-2005'; % 10 months from settlement
Strike       =  1000;
Sigma        =  0.09;
Convention   =  [0 1]';

% specify the interest-rate environment
ZeroData     = [datenum('15-Jun-2004')  0.09   -1;  % 3 months
                datenum('15-Dec-2004')  0.095  -1;  % 9 months
                datenum(Expiry)         0.10   -1]; % 10 months
            
% specify the bond information           
CleanPrice   =  935;
CouponRate   =  0.1;
Maturity     = '15-Dec-2013';  % 9.75 years from settlement
Face         =  1000;
BondData     = [CleanPrice CouponRate datenum(Maturity) Face];
Period       =  2;
Basis        =  1;

% call Black's model
CallPrices = bkcall(Strike, ZeroData, Sigma, BondData, Settle,... 
Expiry, Period, Basis, [], [], Convention)
CallPrices = 2×1

    9.4873
    7.9686

Когда цена исполнения опциона является грязной ценой (Convention = 0), значение колл-опциона составляет 9,49$. Когда цена исполнения опциона является чистой ценой (Convention = 1), значение колл-опциона составляет 7,97$.

Ссылки

[1] Оболочка, Джон К. Опции, фьючерсы и Другие Производные. 5-й Выпуск, Prentice Hall, 2003, стр 287–288, 508–515.

Представлено до R2006a