exponenta event banner

Деривативы капитала с использованием решений закрытой формы

Введение

Financial Instruments Toolbox™ поддерживает четыре типа решений закрытой формы и аналитических аппроксимаций для расчета цены и чувствительности (греки) ванильных опционов:

  • Модель Блэк-Шоулза

  • Чёрная модель

  • Модель Ролл-Геске-Уэйли

  • Модель Bjerksund-Stensland 2002

Модель Блэк-Шоулза

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

  • Дивидендов при жизни опциона не выплачивается.

  • Опцион может быть реализован только в срок.

  • Рынки работают по марковскому процессу в непрерывное время.

  • Комиссионные не выплачиваются.

  • Безрисковая процентная ставка известна и постоянна.

  • Доходность нижележащих запасов обычно распределяется по журналу.

Примечание

Модель Black-Scholes, реализованная в программном обеспечении Financial Instruments Toolbox, позволяет получать дивиденды. Поддерживаются следующие три метода дивидендов:

  • Дивиденды наличными

  • Непрерывная дивидендная доходность

  • Постоянная дивидендная доходность

Однако не все функции ценообразования в закрытой форме Black-Scholes поддерживают все три метода дивидендов. Дополнительные сведения об указании методов дивидендов см. в разделе stockspec.

Решения закрытой формы, основанные на модели Black-Scholes, поддерживают следующие задачи.

Задача

Функция

Ценовые европейские опционы с различными дивидендами с использованием модели ценообразования опционов Блэка-Шоулза.

optstockbybls

Расчет европейских цен опционов и чувствительности с использованием модели ценообразования опционов Блэка-Шоулза.

optstocksensbybls

Рассчитайте подразумеваемую волатильность для европейских опционов с использованием модели ценообразования опционов Блэка-Шоулза.

impvbybls

Ценовые европейские простые варианты выбора с использованием модели Black-Scholes.

chooserbybls

Пример использования модели Блэка-Шоула см. в разделе Ценообразование с использованием модели Блэка-Шоулза.

Черная модель

Используйте модель Black для ценообразования европейских опционов на физические товары, форварды или фьючерсы. Модель Black, поддерживаемая программным обеспечением Financial Instruments Toolbox, является частным случаем модели Black-Scholes. Модель Black использует форвардную цену как нижележащую вместо спотовой цены. Предполагается, что форвардная цена на срок опциона обычно распределяется по журналу.

Закрытые решения для черной модели поддерживают следующие задачи.

Задача

Функция

Цена европейских опционов на фьючерсы с использованием модели ценообразования черного опциона.

optstockbyblk

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

optstocksensbyblk

Расчет подразумеваемой волатильности для европейских опционов с использованием модели ценообразования черного опциона.

impvbyblk

Пример использования модели черного см. в разделе Ценообразование с использованием модели черного.

Модель Ролл-Геске-Уэйли

Используйте метод аппроксимации Roll-Geske-Whaley, чтобы оценить американские колл-опционы, выплачивающие один денежный дивиденд. Эта модель основана на изменении наблюдаемой цены акций для текущей стоимости дивидендов, а также поддерживает составной опцион для учета возможности досрочного осуществления. Модель Roll-Geske-Whaley имеет недостатки из-за подхода эскроуцированной цены дивидендов, который может привести к арбитражу. Дополнительные пояснения см. в разделе Опционы, фьючерсы и другие деривативы Джона Халла.

Закрытые решения для модели Roll-Geske-Whaley поддерживают следующие задачи.

Задача

Функция

Ценовые американские колл опционы с единым денежным дивидендом с использованием модели ценообразования опционов Roll-Geske-Whaley.

optstockbyrgw

Рассчитайте цены и чувствительность американских звонков с помощью модели ценообразования опционов Roll-Geske-Whaley.

optstocksensbyrgw

Рассчитайте подразумеваемую волатильность для американских опционов колл с использованием модели ценообразования опционов Roll-Geske-Whaley.

impvbyrgw

Пример использования модели Roll-Geske-Whaley см. в разделе Ценообразование с использованием модели Roll-Geske-Whaley.

Модель Bjerksund-Stensland 2002

Используйте модель Bjerksund-Stensland 2002 для ценообразования американских ставок и звонков с непрерывной дивидендной доходностью. Эта модель работает путем разделения времени до погашения опциона на две отдельные части, каждая из которых имеет собственную плоскую границу упражнения (цену триггера). Метод Бьерксунда-Стенсланда 2002 является обобщением метода Бьерксунда и Стенсланда 1993 и считается вычислительно эффективным. Для дальнейшего объяснения см. Закрытая форма оценки американских опционов Bjerksund и Stensland.

Закрытые решения для модели Bjerksund-Stensland 2002 поддерживают следующие задачи.

Задача

Функция

Цена американских опционов с непрерывной дивидендной доходностью с использованием модели ценообразования опционов Bjerksund-Stensland 2002.

optstockbybjs

Рассчитайте цены и чувствительность американских опционов с использованием модели ценообразования опционов Bjerksund-Stensland 2002.

optstocksensbybjs

Рассчитайте подразумеваемую волатильность для американских опционов с использованием модели ценообразования опционов Bjerksund-Stensland 2002.

impvbybjs

Пример использования модели Bjerksund-Stensland 2002 см. в разделе Ценообразование с использованием модели Bjerksund-Stensland.

Модель Бароне-Адези-Уэйли

Модель Бароне-Адези-Уэйли используется для ценообразования на американские варианты ванили. Закрытые решения для модели Барон-Адези-Уэйли поддерживают следующие задачи.

Задача

Функция

Рассчитайте цены американского звонка и поставьте варианты, используя модель аппроксимации Бароне-Адези-Уэйли.

optstockbybaw

Рассчитайте цены и чувствительность американского звонка и поставьте варианты, используя модель аппроксимации Бароне-Адези-Уэйли.

optstocksensbybaw

Рассчитайте подразумеваемую волатильность для американских опционов, используя модель Барона-Адези-Уэйли.

impvbybaw

Пример использования модели Бароне-Адези-Уэйли см. в разделе Расчет американских опционных цен с использованием модели ценообразования опционов Бароне-Адези и Уэйли.

Ценообразование с использованием модели Блэка-Шоулза

Рассмотрим европейский опцион на акции с ценой исполнения $40 1 января 2008 года, который истекает 1 июля 2008 года. Предположим, что базовая акция платит дивиденды в размере $0,50 1 марта и 1 июня. Акции торгуются на уровне $40 и имеют волатильность 30% годовых. Безрисковая ставка составляет 4% годовых. С помощью этих данных рассчитайте цену колла и опциона пут на акции с помощью модели ценообразования опционов Блэка-Шоулза:

Strike = 40;
AssetPrice = 40;
Sigma = .3;
Rates = 0.04;
Settle = 'Jan-01-08';
Maturity = 'Jul-01-08';

Div1 = 'March-01-2008';
Div2 = 'Jun-01-2008';

Создать RateSpec и StockSpec:

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle, 'EndDates',...
Maturity, 'Rates', Rates, 'Compounding', -1);

StockSpec = stockspec(Sigma, AssetPrice, {'cash'}, 0.50,{Div1,Div2});

Определите два варианта: один вызов и один вызов:

OptSpec = {'call'; 'put'};

Рассчитайте цену европейских опционов:

Price = optstockbybls(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike)
Price =

    3.2063
    3.4027

Первый элемент Price вектор представляет цену вызова ($3,21); вторая - цена пут ($3,40). Используйте функцию optstocksensbybls чтобы вычислить шесть чувствительности для модели Блэка-Шоулза: delta, gamma, vega, lambda, rho, и theta и price варианта.

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

В качестве примера рассмотрим те же параметры, что и в предыдущем примере. Чтобы рассчитать их Delta, Rho, Price, и Gamma, создайте массив ячеек OutSpec следующим образом:

OutSpec = {'delta', 'rho', 'price', 'gamma'};

[Delta, Rho, Price, Gamma] = optstocksensbybls(RateSpec, StockSpec, Settle,...
Maturity, OptSpec, Strike, 'OutSpec', OutSpec)
Delta =

    0.5328
   -0.4672


Rho =

    8.7902
  -10.8138


Price =

    3.2063
    3.4027


Gamma =

    0.0480
    0.0480

Ценообразование с использованием модели черного цвета

Рассмотрим два европейских колл-опциона на фьючерсный контракт с ценами упражнений 20 и 25 долларов, которые истекают 1 сентября 2008 года. Предположим, что 1 мая 2008 года контракт торгуется по $20 и имеет волатильность 35% годовых. Безрисковая ставка составляет 4% годовых. С помощью этих данных рассчитайте цену опционов колл-фьючерсов с использованием модели Black:

Strike = [20; 25];
AssetPrice = 20;
Sigma = .35;
Rates = 0.04;
Settle = 'May-01-08';
Maturity = 'Sep-01-08';

Создать RateSpec и StockSpec:

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rates, 'Compounding', -1);

StockSpec = stockspec(Sigma, AssetPrice);

Определите опцию вызова:

OptSpec = {'call'};

Рассчитайте цену и все чувствительности европейских фьючерсных опционов:

OutSpec = {'All'} 

[Delta, Gamma, Vega, Lambda, Rho, Theta, Price] = optstocksensbyblk(RateSpec,...
StockSpec, Settle, Maturity, OptSpec, Strike, 'OutSpec', OutSpec);
Price =

    1.5903
    0.3037

Первый элемент Price вектор представляет цену вызова с ценой исполнения $20 ($1,59); вторая - цена звонка с ценой упражнения $25 ($2,89).

Функция impvbyblk используется для вычисления подразумеваемой волатильности с использованием модели ценообразования опционов Black. Если предположить, что предыдущие европейские кол-фьючерсы торгуются на уровне $1,5903 и $0,3037, можно рассчитать их подразумеваемую волатильность:

Volatility = impvbyblk(RateSpec, StockSpec, Settle, Maturity,...
OptSpec,  Strike, Price);

Как и ожидалось, вы получаете волатильность 35%. Если бы кол-фьючерсы торговались на рынке по цене 1,50 доллара и 0,50 доллара, подразумеваемая волатильность составила бы 33% и 42%:

Volatility = impvbyblk(RateSpec, StockSpec, Settle, Maturity,...
OptSpec,  Strike, [1.50;0.5])
Volatility =

    0.3301
    0.4148

Расчет цены с использованием модели Roll-Geske-Whaley

Рассмотрим два американских варианта обзвона с ценами упражнений 110 и 100 долларов 1 июня 2008 года, которые истекают 1 июня 2009 года. Предположим, что базовая акция выплачивает дивиденды в размере $0,001 на 1 декабря 2008 года. Акции торгуются на уровне $80 и имеют волатильность 20% годовых. Безрисковая ставка - 6% годовых. Используя эти данные, рассчитайте цену американских звонков с помощью модели ценообразования опционов Roll-Geske-Whaley:

AssetPrice = 80;
Settle = 'Jun-01-2008';
Maturity = 'Jun-01-2009';
Strike = [110; 100];

Rate = 0.06;
Sigma  = 0.2;

DivAmount = 0.001;
DivDate = 'Dec-01-2008';

Создать RateSpec и StockSpec:

StockSpec = stockspec(Sigma, AssetPrice, {'cash'}, DivAmount, DivDate);

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rate, 'Compounding', -1);

Рассчитайте цены вызовов:

Price  = optstockbyrgw(RateSpec, StockSpec, Settle, Maturity, Strike)
Price =

    0.8398
    2.0236

Первый элемент Price вектор представляет цену вызова с ценой исполнения $110 ($0,84); вторая - цена звонка с ценой исполнения $100 ($2,02).

Расчет цен с использованием модели Бьерксунда-Стенсленда

Рассмотрим четыре американских опциона на акции (два звонка и два пута) с ценой исполнения $100, которая истекает 1 июля 2008 года. Предположим, что базовая акция выплачивает постоянную дивидендную доходность в размере 4% по состоянию на 1 января 2008 года. Акции имеют волатильность 20% годовых и безрисковую ставку 8% годовых. Используя эти данные, рассчитайте цену американских звонков и ставит, предполагая следующие текущие цены акций: $80, $90 (для звонков) и $100 и $110 (для акций):

Settle = 'Jan-1-2008';
Maturity = 'Jul-1-2008';
Strike = 100;
AssetPrice = [80; 90; 100; 110];
DivYield = 0.04;

Rate = 0.08;
Sigma = 0.20;

Создать RateSpec и StockSpec:

StockSpec = stockspec(Sigma, AssetPrice, {'continuous'}, DivYield);

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,...
'EndDates', Maturity, 'Rates', Rate, 'Compounding', -1);

Определите тип опции:

OptSpec = {'call'; 'call'; 'put'; 'put'};

Вычислите цены опционов:

Price = optstockbybjs(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike)
Price =

    0.4144
    2.1804
    4.7253
    1.7164

Первые два элемента Price вектор представляет цену вызовов ($0,41 и $2,18), последние два элемента представляют цену опционов пут ($4,72 и $1,72). Используйте функцию optstocksensbybjs для вычисления шести чувствительности для модели Бьерксунда-Стенсланда: delta, gamma, vega, lambda, rho, и theta и price варианта. Выбор выходных параметров и их порядок определяется необязательным входным параметром OutSpec. Этот параметр является массивом ячеек символьных векторов, каждый из которых задает требуемый выходной параметр. Порядок, в котором эти выходные параметры возвращаются функцией, совпадает с порядком векторов символов, содержащихся в OutSpec. В качестве примера рассмотрим те же параметры, что и в предыдущем примере. Чтобы рассчитать их delta, gamma, и price, создайте массив ячеек OutSpec следующим образом:

OutSpec = {'delta', 'gamma', 'price'};

Выходные данные optstocksensbybjs находятся в том же порядке, что и в OutSpec.

[Delta, Gamma, Price] = optstocksensbybjs(RateSpec, StockSpec, Settle,...
Maturity, OptSpec, Strike, 'OutSpec', OutSpec)
Delta =

    0.0843
    0.2912
    0.4803
    0.2261

Gamma =

    0.0136
    0.0267
    0.0304
    0.0217

Price =

    0.4144
    2.1804
    4.7253
    1.7164

Дополнительные сведения о модели Bjerksund-Stensland см. в разделе Моделирование решений закрытой формы.

Расчет цен американских опционов с использованием модели ценообразования опционов Барон-Адези и Уэйли

Рассмотрим вариант американского колла с ценой упражнений $120. Срок действия опциона истекает 1 января 2018 года. Акции имеют волатильность 14% годовых, а годовая непрерывно усложняемая безрисковая ставка составляет 4% годовых по состоянию на 1 января 2016 года. Используя эти данные, рассчитайте цену американского колла, предполагая, что цена акции составляет $125 и платит дивиденды в 2%.

StartDate  = 'Jan-1-2016';
EndDate = 'jan-1-2018';
Basis = 1;
Compounding = -1;
Rates = 0.04;

Определите RateSpec.

RateSpec = intenvset('ValuationDate',StartDate,'StartDate',StartDate,'EndDate',EndDate, ...
'Rates',Rates,'Basis',Basis,'Compounding',Compounding)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9231
            Rates: 0.0400
         EndTimes: 2
       StartTimes: 0
         EndDates: 737061
       StartDates: 736330
    ValuationDate: 736330
            Basis: 1
     EndMonthRule: 1

Определите StockSpec.

Dividend = 0.02;
AssetPrice = 125;
Volatility = 0.14;

StockSpec = stockspec(Volatility,AssetPrice,'Continuous',Dividend)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1400
         AssetPrice: 125
       DividendType: {'continuous'}
    DividendAmounts: 0.0200
    ExDividendDates: []

Определите американский вариант.

OptSpec = 'call';
Strike = 120;
Settle = 'Jan-1-2016';
Maturity = 'jan-1-2018';

Рассчитайте цену для американского варианта.

Price = optstockbybaw(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike)
Price = 14.5180

См. также

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

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

Подробнее