optstockbybls

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

Описание

пример

Price = optstockbybls(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike) возвращает цены опции с помощью модели ценообразования опционов Блэка-Шоулза.

Примечание

При использовании StockSpec с optstockbybls, можно изменить StockSpec обрабатывать другие типы underliers при оценке инструментов, которые используют модель Black-Scholes.

При оценке фьючерсов (Черная модель), введите следующее в StockSpec:

DivType = 'Continuous'; 
DivAmount = RateSpec.Rates;
Например, смотрите, Вычисляют Цены Опции Используя модель ценообразования опционов Блэка-Шоулза.

При оценке Иностранных валют (модель Garman-Kohlhagen), введите следующее в StockSpec:

DivType = 'Continuous'; 
DivAmount = ForeignRate; 

где ForeignRate постоянно составлен, пересчитал на год безрисковую процентную ставку в иностранном государстве. Например, смотрите, Вычисляют Цены Опции на Иностранные валюты Используя модель ценообразования опционов Garman-Kohlhagen.

Примеры

свернуть все

В этом примере показано, как вычислить цены опции с помощью модели ценообразования опционов Блэка-Шоулза. Рассмотрите две европейских возможности, вызов и помещенный, с ценой исполнения 29$ 1 января 2008. Опции истекают 1 мая 2008. Примите, что базовый запас для колл-опциона обеспечивает денежный дивиденд 0,50$ 15 февраля 2008. Базовый запас для пут-опциона предоставляет непрерывную дивидендную доходность 4,5% в год. Запасы стоят на уровне 30$ и имеют энергозависимость 25% в год. Пересчитываемый на год постоянно составляемый безрисковый уровень составляет 5% в год. Используя эти данные, вычислите цену опций с помощью модели Black-Scholes.

Strike = 29;
AssetPrice = 30;
Sigma = .25;
Rates = 0.05;
Settle = 'Jan-01-2008';
Maturity = 'May-01-2008';

% define the RateSpec and StockSpec
RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle, 'EndDates',...
Maturity, 'Rates', Rates, 'Compounding', -1);

DividendType = {'cash';'continuous'};
DividendAmounts = [0.50; 0.045];
ExDividendDates = {'Feb-15-2008';NaN};

StockSpec = stockspec(Sigma, AssetPrice, DividendType, DividendAmounts,...
ExDividendDates);

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

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

    2.2030
    1.2025

В этом примере показано, как вычислить цены опции на иностранные валюты с помощью модели ценообразования опционов Garman-Kohlhagen. Рассмотрите европейский пут-опцион на валюте с ценой исполнения 0,50$ 1 октября 2015. Опция истекает 1 июня 2016. Примите, что текущий обменный курс составляет 0,52$ и имеет энергозависимость 12% в год. Пересчитываемый на год постоянно составляемый внутренний безрисковый уровень составляет 4% в год, и внешний безрисковый уровень составляет 8% в год. Используя эти данные, вычислите цену опции с помощью модели Garman-Kohlhagen.

Settle = 'October-01-2015';
Maturity = 'June-01-2016';
AssetPrice = 0.52;
Strike = 0.50;
Sigma = .12;
Rates = 0.04;
ForeignRate = 0.08;

Задайте RateSpec.

RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle, 'EndDates',...
Maturity, 'Rates', Rates, 'Compounding', -1)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9737
            Rates: 0.0400
         EndTimes: 0.6667
       StartTimes: 0
         EndDates: 736482
       StartDates: 736238
    ValuationDate: 736238
            Basis: 0
     EndMonthRule: 1

Задайте StockSpec.

DividendType = 'Continuous';
DividendAmounts = ForeignRate;

StockSpec = stockspec(Sigma, AssetPrice, DividendType, DividendAmounts)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1200
         AssetPrice: 0.5200
       DividendType: {'continuous'}
    DividendAmounts: 0.0800
    ExDividendDates: []

Оцените европейский пут-опцион.

OptSpec = {'put'};
Price = optstockbybls(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike)
Price = 0.0162

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

свернуть все

Структура термина процентной ставки (пересчитанный на год и постоянно составляемый), заданный RateSpec полученный из intenvset. Для получения информации о спецификации процентной ставки смотрите intenvset.

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

Спецификация запаса для базового актива. Для получения информации о спецификации запаса смотрите stockspec.

stockspec указатели несколько типов базовых активов. Например, для физических предметов потребления ценой является StockSpec.Asset, энергозависимостью является StockSpec.Sigma, и выражением удобства является StockSpec.DividendAmounts.

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

Урегулирование или торговая дата в виде последовательного номера даты или вектора символов даты с помощью NINST- 1 вектор.

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

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

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

Определение опции как 'call' или 'put'В виде NINST- 1 массив ячеек из символьных векторов со значениями 'call' или 'put'.

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

Значение цены исполнения опциона опции в виде неотрицательного NINST- 1 вектор.

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

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

свернуть все

Ожидаемые цены опции, возвращенные как NINST- 1 вектор.

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

Больше о

свернуть все

Опция ванили

vanilla option является категорией опций, которая включает только самые стандартные компоненты.

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

Выплата для опции ванили следующие:

  • Для вызова: max(StK,0)

  • Для помещенного: max(KSt,0)

где:

St является ценой базового актива во время t.

K является ценой исполнения опциона.

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

Представленный в R2008b