optstockbyblk

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

Описание

пример

Price = optstockbyblk(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike) вычисляет цены опции на фьючерсы или прямое использование Черной модели ценообразования опционов.

Примечание

optstockbyblk вычисляет цены опции на фьючерсы и вперед. Если ForwardMaturity не передается, функция вычисляет цены будущих опций. Если ForwardMaturity передается, функция вычисляет цены прямых опций. Это указатели на функцию несколько типов базовых активов, например, запасов и предметов потребления. Для получения дополнительной информации о спецификации базового актива смотрите stockspec.

пример

Price = optstockbyblk(___,Name,Value) добавляет дополнительный аргумент пары "имя-значение" для ForwardMaturity вычислить цены опции на форвардов с помощью Черной модели ценообразования опционов.

Примеры

свернуть все

В этом примере показано, как вычислить цены опции на фьючерсы с помощью Черной модели ценообразования опционов. Рассмотрите два европейских колл-опциона на фьючерсном контракте с ценами исполнения 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';

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

StockSpec = stockspec(Sigma, AssetPrice);

% define the call options
OptSpec = {'call'};

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

    1.5903
    0.3037

В этом примере показано, как вычислить цены опции на форвардов с помощью Черной модели ценообразования. Рассмотрите две европейских возможности, вызов и поставьте форвардный контракт Смешения Брента, который истекает 1 января 2015. Опции истекают 1 октября 2014 с ценой исполнения 200$ и 90$ соответственно. Примите, что 1 января 2014 форвардная цена на уровне 107$, пересчитываемый на год постоянно составляемый безрисковый уровень составляет 3% в год, и энергозависимость составляет 28% в год. Используя эти данные, вычислите цену опций.

Задайте RateSpec.

ValuationDate = 'Jan-1-2014';
EndDates = 'Jan-1-2015';
Rates = 0.03;
Compounding = -1;
Basis = 1;
RateSpec  = intenvset('ValuationDate', ValuationDate, ...
'StartDates', ValuationDate, 'EndDates', EndDates, 'Rates', Rates,....
'Compounding', Compounding, 'Basis', Basis')
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9704
            Rates: 0.0300
         EndTimes: 1
       StartTimes: 0
         EndDates: 735965
       StartDates: 735600
    ValuationDate: 735600
            Basis: 1
     EndMonthRule: 1

Задайте StockSpec.

AssetPrice = 107;
Sigma = 0.28;
StockSpec  = stockspec(Sigma, AssetPrice);

Задайте опции.

Settle = 'Jan-1-2014';
Maturity = 'Oct-1-2014';  %Options maturity
Strike = [200;90];
OptSpec = {'call'; 'put'};

Оцените прямые колл-опционы и пут-опционы.

ForwardMaturity = 'Jan-1-2015';  % Forward contract maturity
Price = optstockbyblk(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike,...
'ForwardMaturity', ForwardMaturity)
Price = 2×1

    0.0535
    3.2111

Рассмотрите европейскую возможность вызова на фьючерсах Брента Сырой нефти. Опция истекает 1 декабря 2014 с ценой исполнения 120$. Примите, что 1 апреля 2014 цена фьючерса на уровне 105$, пересчитываемый на год постоянно составляемый безрисковый уровень составляет 3,5% в год, и энергозависимость составляет 22% в год. Используя эти данные, вычислите цену опции.

Задайте RateSpec.

ValuationDate = 'January-1-2014';
EndDates = 'January-1-2015';
Rates = 0.035;
Compounding = -1;
Basis = 1;
RateSpec  = intenvset('ValuationDate', ValuationDate, 'StartDates', ValuationDate,...
'EndDates', EndDates, 'Rates', Rates, 'Compounding', Compounding, 'Basis', Basis')
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9656
            Rates: 0.0350
         EndTimes: 1
       StartTimes: 0
         EndDates: 735965
       StartDates: 735600
    ValuationDate: 735600
            Basis: 1
     EndMonthRule: 1

Задайте StockSpec.

AssetPrice = 105;
Sigma = 0.22;
StockSpec  = stockspec(Sigma, AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.2200
         AssetPrice: 105
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Задайте опцию.

Settle = 'April-1-2014';
Maturity = 'Dec-1-2014'; 
Strike = 120;
OptSpec = {'call'};

Оцените колл-опцион фьючерсов.

Price = optstockbyblk(RateSpec, StockSpec, Settle, Maturity, OptSpec, Strike)
Price = 2.5847

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

свернуть все

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

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

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

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

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

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

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

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

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

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

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

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

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

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: Price = optstockbyblk(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,'ForwardMaturity',ForwardMaturity)

Дата погашения или дата поставки форвардного контракта в виде разделенной запятой пары, состоящей из 'ForwardMaturity' и NINST- 1 вектор с помощью последовательных чисел даты или векторов символов даты.

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

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

свернуть все

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

Больше о

свернуть все

Опция фьючерсов

futures option является стандартизированным контрактом между двумя сторонами, чтобы купить или продать заданный актив стандартизированного количества и качества за цену, согласованную сегодня (цена фьючерса) с доставкой и оплатой, происходящей в заданную будущую дату, дата поставки.

Фьючерсные контракты согласовываются при фьючерсной бирже, которая выступает в качестве посредника между этими двумя сторонами. Сторона, соглашающаяся купить базовый актив в будущем, "покупателе" контракта, как говорят, "длинна", и сторона, соглашающаяся продать актив в будущем, "продавце" контракта, как говорят, "коротка".

Фьючерсный контракт является доставкой элемента J во время T и:

  • Там существует на рынке указанная цена F(t,T), который известен как цену фьючерса во время t для доставки J во время T.

  • Цена ввода фьючерсного контракта равна нулю.

  • Во время любого временного интервала [t, s], держатель получает сумму F(s,T)F(t,T) (это отражает мгновенную маркировку на рынок).

  • Во время T, платежи держателя F(T,T) и назван, чтобы получить J. Обратите внимание на то, что F(T,T) должна быть спотовая цена J во время T.

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

Вперед опция

forwards option является нестандартизированным контрактом между двумя сторонами, чтобы купить или продать актив в заданное будущее время по цене, согласованной сегодня.

Покупатель прямого опционного контракта имеет право занять особую прямую позицию по определенной цене любое время, прежде чем опция истечет. Прямой продавец опции занимает противоположную прямую позицию, когда покупатель осуществляет опцию. Колл-опционом является право ввести в долгое прямое положение, и пут-опцион является правом ввести в короткое прямое положение. Тесно связанный контракт является фьючерсным контрактом. Форвард похож на фьючерсы, в которых он задает обмен товарами за заданную цену в заданную будущую дату.

Выплата для прямой опции, где значение прямого положения в зрелости зависит от отношения между стоимостью доставки (K) и базовой ценой (S T) в то время:

  • Для длинной позиции: fT=STK

  • Для короткой позиции: fT=KST

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

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