exponenta event banner

optstockbyls

Цена европейских, бермудских или американских вариантов ванили с использованием моделирования Монте-Карло

Описание

пример

Price = optstockbyls(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates) возвращает цены опционов на ваниль с использованием модели Лонгстафа-Шварца. optstockbyls вычисляет цены на европейские, бермудские и американские варианты ванили.

Для американских и бермудских вариантов используется метод наименьших квадратов Лонгстаффа-Шварца для расчета ранней надбавки за упражнения.

пример

Price = optstockbyls(___,Name,Value)добавляет необязательные аргументы пары имя-значение.

пример

[Price,Path,Times,Z] = optstockbyls(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates) возвращает цены опционов на ваниль с использованием модели Лонгстафа-Шварца.

пример

[Price,Path,Times,Z] = optstockbyls(___,Name,Value) добавляет необязательные аргументы пары имя-значение.

Примеры

свернуть все

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

StartDates = 'Jan-1-2013';
EndDates = 'Jan-1-2015';
Rates = 0.05;
RateSpec = intenvset('ValuationDate', StartDates, 'StartDates', StartDates, ...
'EndDates', EndDates, 'Rates', Rates)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: 2
             Disc: 0.9060
            Rates: 0.0500
         EndTimes: 4
       StartTimes: 0
         EndDates: 735965
       StartDates: 735235
    ValuationDate: 735235
            Basis: 0
     EndMonthRule: 1

Определите StockSpec для основного средства.

AssetPrice = 100;
Sigma = 0.1;
StockSpec = stockspec(Sigma, AssetPrice)
StockSpec = struct with fields:
             FinObj: 'StockSpec'
              Sigma: 0.1000
         AssetPrice: 100
       DividendType: []
    DividendAmounts: 0
    ExDividendDates: []

Определите параметр vanilla.

OptSpec = 'put';
Settle = 'Jan-1-2013';
ExerciseDates = 'Jan-1-2015';
Strike = 105;

Вычислите цену опции ванили с помощью модели Лонгстафа-Шварца.

Antithetic = true;
Price = optstockbyls(RateSpec, StockSpec, OptSpec, Strike, Settle, ...
ExerciseDates, 'Antithetic', Antithetic)
Price = 3.2292

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

свернуть все

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

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

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

stockspec может обрабатывать другие типы базовых активов. Например, акции, фондовые индексы и товары.

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

Определение опции, указанной как 'call' или 'put' с использованием символьного вектора.

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

Значение цены страйка опциона, указанное неотрицательным скалярным целым числом:

  • Для европейского варианта используйте скаляр цены страйка.

  • Для варианта на Бермудских островах используйте 1около-NSTRIKES вектор ударных цен.

  • Для американского варианта используйте скаляр цены страйка.

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

Дата расчета или торговая дата для опции vanilla, указанная как вектор символов даты или неотрицательное скалярное целое число.

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

Даты исполнения опциона, указанные как вектор символов даты или серийный номер даты:

  • Для европейского варианта используйте 1около-1 вектор дат. Для европейского варианта есть только один ExerciseDates на дату истечения срока действия опциона.

  • Для варианта на Бермудских островах используйте 1около-NSTRIKES вектор дат.

  • Для американского варианта используйте 1около-2 вектор границ даты упражнения. Опцион может быть реализован на любую дату между или включая пару дат в этой строке. Если только один не -NaN дата указана, или если ExerciseDates является 1около-1 вектор серийных номеров дат или массив ячеек символьных векторов, опция может быть реализована между Settle и один из перечисленных ExerciseDates.

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

Аргументы пары «имя-значение»

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

Пример: Price = optstockbyls(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'AmericanOpt','1','NumTrials','2000')

Тип опции, указанный как разделенная запятыми пара, состоящая из 'AmericanOpt' и положительные целочисленные скалярные флаги со значениями:

  • 0 - Европейский или Бермудские острова

  • 1 - американский

Примечание

Для американских и бермудских вариантов используется метод наименьших квадратов Лонгстаффа-Шварца для расчета ранней надбавки за упражнения. Для получения дополнительной информации о методе наименьших квадратов см. https://people.math.ethz.ch / % 7Ehjfurrer/teaching/LongstaffSchwartzAmericanOptionsLeastSquareMonteCarlo.pdf.

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

Испытания моделирования, указанные как скалярное число независимых путей выборки.

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

Периоды моделирования для каждой пробной версии, указанные как скалярное число. NumPeriods рассматривается только при ценообразовании европейских вариантов ванили. Для американских и бермудских вариантов ванили, NumPeriod равно числу Exercise дней в течение срока действия опциона.

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

Зависимые случайные вариации, используемые для генерации броуновского вектора движения (то есть процессов Винера), которые управляют моделированием, заданного как be NumPeriodsоколо-1около-NumTrials 3-D массив временных рядов.

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

Индикатор для антитетической выборки, указанный значением true или false.

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

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

свернуть все

Ожидаемая цена варианта ванили, возвращенная как 1около-1 скаляр.

Смоделированные пути коррелированных переменных состояния, возвращаемые как (NumPeriods + 1около-1около-NumTrials 3-D массив временных рядов. Каждая строка Paths является транспонированием вектора состояния X (t) в момент времени t для данного испытания.

Время наблюдения, связанное с моделируемыми путями, возвращаемое как (NumPeriods + 1около-1 вектор столбца времен наблюдения, связанных с моделируемыми путями. Каждый элемент Times связан с соответствующей строкой Paths.

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

Подробнее

свернуть все

Вариант ванили

Вариант ванили - это категория вариантов, включающая только самые стандартные компоненты.

Вариант ванили имеет срок годности и простую цену страйка. Варианты в американском и европейском стиле классифицируются как варианты ванили.

Окупаемость опциона на ваниль выглядит следующим образом:

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

  • Для put: max (K St, 0)

где:

St - цена базового актива в момент времени t.

K - цена удара.

Дополнительные сведения см. в разделе Параметр ванили.

Представлен в R2013b