exponenta event banner

asianbyls

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

Описание

пример

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

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

Чтобы вычислить значение опции «Плавающий удар в Азии», Strike должно быть указано как NaN. Азиатские опционы с фиксированной забастовкой также известны как средние ценовые опционы, а азиатские опционы с плавающей забастовкой также известны как средние страйк-опционы.

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

пример

[Price,Paths,Times,Z] = asianbyls(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates) возвращает параметр fixed- и floating-strike Asian Price, Paths, Times, и Z значения с использованием модели Лонгстафа-Шварца. asianbyls вычисляет цены на европейские и американские азиатские опционы.

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

Примеры

свернуть все

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

Rates = 0.05;
StartDate = 'Jan-1-2013';
EndDate = 'Jan-1-2014';
RateSpec = intenvset('ValuationDate', StartDate, 'StartDates', StartDate, ...
'EndDates', EndDate,'Compounding', -1, 'Rates', Rates)
RateSpec = struct with fields:
           FinObj: 'RateSpec'
      Compounding: -1
             Disc: 0.9512
            Rates: 0.0500
         EndTimes: 1
       StartTimes: 0
         EndDates: 735600
       StartDates: 735235
    ValuationDate: 735235
            Basis: 0
     EndMonthRule: 1

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

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

Определить азиатский 'call' вариант.

Settle = 'Jan-1-2013';
ExerciseDates = 'Jan-1-2014';
Strike = 110;
OptSpec = 'call';

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

NumTrials = 10000;
NumPeriods = 100;
AvgType = 'arithmetic';
Antithetic= true;
Price= asianbyls(RateSpec, StockSpec, OptSpec, Strike, Settle, ExerciseDates, ...
'NumTrials', NumTrials, 'NumPeriods', NumPeriods,'Antithetic', Antithetic, 'AvgType', AvgType)
Price = 1.9876

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

свернуть все

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

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

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

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

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

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

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

Цена страйка опциона, заданная неотрицательным скалярным целым числом. Чтобы вычислить значение опции «Плавающий удар в Азии», Strike должно быть указано как NaN. Азиатские варианты плавающего удара также известны как средние варианты удара.

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

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

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

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

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

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

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

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

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

Пример: Price = asianbyls(RateSpec,StockSpec,OptSpec,Strike,Settle,ExerciseDates,'NumTrials',NumTrials,'NumPeriods',NumPeriods,'Antithetic',Antithetic,'AvgType','arithmetic')

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

  • 0 - Европейский

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

Примечание

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

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

Средние типы, указанные как разделенная запятыми пара, состоящая из 'AvgType' и arithmetic для среднего арифметического или geometric для среднего геометрического.

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

Средняя цена базового актива на уровне Settle, указанная как пара, разделенная запятыми, состоящая из 'AvgPrice' и скалярное числовое значение. AvgPrice предполагается рассчитанным во временном окне, начиная с AvgDate и заканчивается на Settle. Другими словами, среднее выглядит как обратное.

Примечание

Использовать этот аргумент при AvgDate < Settle.

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

Период усреднения даты начинается, указанный как пара, разделенная запятыми, состоящая из 'AvgDate' и скалярный порядковый номер даты.

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

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

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

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

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

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

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

Логический флаг для указания антитетической выборки, указанный как разделенная запятыми пара, состоящая из 'Antithetic' и значение true или false.

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

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

свернуть все

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

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

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

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

Подробнее

свернуть все

Азиатский вариант

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

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

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