PartialLookback инструмент
Создайте и оцените PartialLookback инструментальный объект для одного или нескольких Частичных инструментов Lookback с помощью этого рабочего процесса:
Использование fininstrument создать PartialLookback инструментальный объект для одного или нескольких Частичных инструментов Lookback.
Использование finmodel задавать BlackScholes, Heston, Bates, или Merton модель для PartialLookback инструментальный объект.
Выберите метод ценообразования.
При использовании BlackScholes модель, использовать finpricer задавать HeynenKat метод ценообразования для одного или нескольких PartialLookback инструменты.
При использовании BlackScholes, Heston, Bates, или Merton модель, использовать finpricer задавать AssetMonteCarlo метод ценообразования для одного или нескольких PartialLookback инструменты.
Для получения дополнительной информации об этом рабочем процессе смотрите Начало работы с Рабочими процессами Используя Основанную на объектах Среду для Оценки Финансовых инструментов.
Для получения дополнительной информации о доступных моделях и методах ценообразования для PartialLookback инструмент, смотрите, Выбирают Instruments, Models и Pricers.
создает PartialLookbackObj = fininstrument(InstrumentType,'ExerciseDate',exercise_date,'Strike',strike_value,'MonitorDate',monitor_date)PartialLookback объект для одного или нескольких Частичных инструментов Lookback путем определения InstrumentType и устанавливает свойства для необходимых аргументов пары "имя-значение" Strike, ExerciseDate, и MonitorDate.
PartialLookback инструмент поддерживает фиксированную забастовку и плавающую забастовку частичные lookback опции. Вычислить значение плавающей забастовки частичная lookback опция, Strike должен быть задан как NaN. Для получения дополнительной информации о PartialLookback инструмент, смотрите Больше О.
дополнительные наборы PartialLookbackObj = fininstrument(___,Name,Value)
свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, LookbackObj = fininstrument("Lookback",'Strike',100,'ExerciseDate',datetime(2022,1,30),'MonitorDate',datetime(2021,1,30),'OptionType',"put",'ExerciseStyle',"European",'Name',"partial_lookback_option") создает PartialLookback пут-опцион с европейским осуществлением. Можно задать несколько аргументов пары "имя-значение".
InstrumentType — Инструментальный тип"PartialLookback" | массив строк со значениями "PartialLookback" | вектор символов со значением 'PartialLookback' | массив ячеек из символьных векторов со значениями 'PartialLookback'Инструментальный тип в виде строки со значением "PartialLookback", вектор символов со значением 'PartialLookback', NINST- 1 массив строк со значениями "PartialLookback", или NINST- 1 массив ячеек из символьных векторов со значениями 'PartialLookback'.
Типы данных: char | cell | string
PartialLookback Аргументы в виде пар имя-значениеЗадайте требуемые и дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
LookbackObj = fininstrument("Lookback",'Strike',100,'ExerciseDate',datetime(2019,1,30),'OptionType',"put",'ExerciseStyle',"European",'Name',"lookback_option")Lookback Аргументы в виде пар имя-значениеStrike — Значение цены исполнения опциона опцииNaNЗначение цены исполнения опциона опции в виде разделенной запятой пары, состоящей из 'Strike' и скаляр, неотрицательный числовой или NINST- 1 вектор из неотрицательных значений для фиксированной забастовки PartialLookback опция. Для плавающей забастовки частичная lookback опция задайте 'Strike' как NaN или NINST- 1 вектор из NaNs.
Типы данных: double
ExerciseDate — Дата осуществления опцииДата осуществления опции в виде разделенной запятой пары, состоящей из 'ExerciseDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Примечание
Для европейской опции существует только один ExerciseDate на дате окончания срока действия опции.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что ExerciseDate свойство хранится как datetime.
Типы данных: double | char | cell | string | datetime
MonitorDate — Предопределенный lookback контролирующая датаПредопределенный lookback контролирующая дата в виде разделенной запятой пары, состоящей из 'MonitorDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Для фиксированной забастовки частичный lookback контрольным периодом является [MonitorDate, ExerciseDate]. MonitorDate дата начала фиксированной забастовки частичная lookback опция.
Для плавающей забастовки частичный lookback контрольным периодом является [Settle, MonitorDate], где Settle <MonitorDate <ExerciseDate. MonitorDate дата окончания плавающей забастовки частичная lookback опция.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что ExerciseDate свойство хранится как datetime.
Типы данных: double | char | cell | string | datetime
PartialLookback Аргументы в виде пар имя-значениеOptionType — Тип опции "call" (значение по умолчанию) | представляет в виде строки со значением "call" или "put" | массив строк со значениями "call" или "put" | вектор символов со значением 'call' или 'put' | массив ячеек из символьных векторов со значениями 'call' или 'put'Тип опции в виде разделенной запятой пары, состоящей из 'OptionType' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.
Типы данных: char | cell | string
ExerciseStyle — Стиль осуществления опции"European" (значение по умолчанию) | представляет в виде строки со значением "European" или "American" | массив строк со значениями "European" или "American" | вектор символов со значением 'European' или 'American' | массив ячеек из символьных векторов со значениями 'European' или 'American'Осуществление опции разрабатывает в виде разделенной запятой пары, состоящей из 'ExerciseStyle' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.
Типы данных: string | cell | char
AssetMinMax — Максимальная или минимальная цена базового активаNaN где SpotPrice из базового актива используется (значение по умолчанию) | скаляр, числовой | числовой векторМаксимальная или минимальная цена базового актива в виде разделенной запятой пары, состоящей из 'AssetMinMax' и числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
StrikeScaler — Степень пристрастия к плавающей забастовке частичный lookback
(значение по умолчанию) | скаляр, числовой | числовой векторСтепень пристрастия к плавающей забастовке частичный lookback в виде разделенной запятой пары, состоящей из 'StrikeScaler' и числовой скаляр или NINST- 1 числовой вектор. StrikeScaler значение указывает на процент Strike это фиксируется выше или ниже AssetMinMax значение.
Для плавающей забастовки вызова частичный lookback, StrikeScaler ≥ 1.
Для помещенной плавающей забастовки частичный lookback, 0 <StrikeScaler ≤ 1.
Типы данных: double
Name — Пользовательское имя для инструмента" "
(значение по умолчанию) | представляет в виде строки | массив строк | вектор символов | массив ячеек из символьных векторовПользовательское имя для одного из большего количества инструментов в виде разделенной запятой пары, состоящей из 'Name' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.
Типы данных: char | cell | string
Strike — Значение цены исполнения опциона опцииЗначение цены исполнения опциона опции, возвращенное как скаляр, неотрицательный числовой или NINST- 1 вектор из неотрицательных значений.
Типы данных: double
ExerciseDate — Дата осуществления опцииДата осуществления опции, возвращенная как скалярный datetime или NINST- 1 вектор из datetimes.
Типы данных: datetime
MonitorDate — Предопределенный lookback контролирующая датаПредопределенная контрольная дата, возвращенная как скалярный datetime или NINST- 1 вектор из datetimes.
Типы данных: datetime
OptionType — Тип опции"call" (значение по умолчанию) | представляет в виде строки со значением "call" или "put" | массив строк со значениями "call" или "put"Тип опции, возвращенный как скалярная строка или NINST- 1 массив строк со значениями "call" или "put".
Типы данных: string
ExerciseStyle — Стиль осуществления опции"European" (значение по умолчанию) | представляет в виде строки со значением "European" или "American" | массив строк со значением "European" или "American"Стиль осуществления опции, возвращенный как скалярная строка или NINST- 1 массив строк со значениями "European" или "American".
Типы данных: string
AssetMinMax — Максимальная или минимальная цена базового активаNaN где SpotPrice из базового актива используется (значение по умолчанию) | скаляр, числовой | числовой вектор Максимальная или минимальная цена базового актива, возвращенная как числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
StrikeScaler — Степень пристрастия к частичной плавающей забастовке lookback
(значение по умолчанию) | скаляр, числовой | числовой вектор Степень пристрастия к частичной плавающей забастовке lookback, возвращенный как числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
Name — Пользовательское имя для инструмента" "
(значение по умолчанию) | представляет в виде строки | массив строкПользовательское имя для инструмента, возвращенного как NINST- 1 массив строк.
Типы данных: string
Этот пример показывает рабочий процесс, чтобы оценить плавающую забастовку PartialLookback инструмент, когда вы используете BlackScholes модель и HeynenKat метод ценообразования.
Создайте PartialLookback Инструментальный объект
Используйте fininstrument создать PartialLookback инструментальный объект.
PartialLookbackOpt = fininstrument("PartialLookback",'ExerciseDate',datetime(2022,9,15),'Strike',NaN,'StrikeScaler', 0.75, 'MonitorDate',datetime(2021,9,15),'OptionType',"put",'ExerciseStyle',"european",'AssetMinMax', 98,'Name',"partial_lookback_option")
PartialLookbackOpt =
PartialLookback with properties:
MonitorDate: 15-Sep-2021
StrikeScaler: 0.7500
OptionType: "put"
Strike: NaN
AssetMinMax: 98
ExerciseStyle: "european"
ExerciseDate: 15-Sep-2022
Name: "partial_lookback_option"
Создайте BlackScholes Объект модели
Используйте finmodel создать BlackScholes объект модели.
BlackScholesModel = finmodel("BlackScholes",'Volatility',0.32)
BlackScholesModel =
BlackScholes with properties:
Volatility: 0.3200
Correlation: 1
Создайте ratecurve Объект
Создайте плоский ratecurve объект с помощью ratecurve.
Settle = datetime(2018,9,15); Maturity = datetime(2023,9,15); Rate = 0.035; myRC = ratecurve('zero',Settle,Maturity,Rate,'Basis',12)
myRC =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 12
Dates: 15-Sep-2023
Rates: 0.0350
Settle: 15-Sep-2018
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создайте HeynenKat Объект калькулятора цен
Используйте finpricer создать HeynenKat объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".
outPricer = finpricer("analytic",'Model',BlackScholesModel,'DiscountCurve',myRC,'SpotPrice',100,'DividendType',"continuous",'DividendValue',.05,'PricingMethod',"HeynenKat")
outPricer =
HeynenKat with properties:
DiscountCurve: [1x1 ratecurve]
Model: [1x1 finmodel.BlackScholes]
SpotPrice: 100
DividendValue: 0.0500
DividendType: "continuous"
Цена PartialLookback Инструмент
Используйте price вычислить цену и чувствительность для PartialLookback инструмент.
[Price, outPR] = price(outPricer,PartialLookbackOpt,["all"])Price = 24.8148
outPR =
priceresult with properties:
Results: [1x7 table]
PricerData: []
outPR.Results
ans=1×7 table
Price Delta Gamma Lambda Vega Theta Rho
______ _______ ________ ______ ______ _______ _______
24.815 0.27297 0.012438 1.1 131.33 -5.0942 -193.51
Этот пример показывает рабочий процесс, чтобы оценить несколько плавающая забастовка PartialLookback инструменты, когда вы используете BlackScholes модель и HeynenKat метод ценообразования.
Создайте PartialLookback Инструментальный объект
Используйте fininstrument создать PartialLookback инструментальный объект для трех Частичных инструментов Lookback.
PartialLookbackOpt = fininstrument("PartialLookback",'ExerciseDate',datetime([2022,9,15 ; 2022,10,15 ; 2022,11,15]),'Strike',NaN,'StrikeScaler', 0.75, 'MonitorDate',datetime([2021,9,15 ; 2021,10,15 ; 2021,11,15]),'OptionType',"put",'ExerciseStyle',"european",'AssetMinMax', 98,'Name',"partial_lookback_option")
PartialLookbackOpt=3×1 object
3x1 PartialLookback array with properties:
MonitorDate
StrikeScaler
OptionType
Strike
AssetMinMax
ExerciseStyle
ExerciseDate
Name
Создайте BlackScholes Объект модели
Используйте finmodel создать BlackScholes объект модели.
BlackScholesModel = finmodel("BlackScholes",'Volatility',0.32)
BlackScholesModel =
BlackScholes with properties:
Volatility: 0.3200
Correlation: 1
Создайте ratecurve Объект
Создайте плоский ratecurve объект с помощью ratecurve.
Settle = datetime(2018,9,15); Maturity = datetime(2023,9,15); Rate = 0.035; myRC = ratecurve('zero',Settle,Maturity,Rate,'Basis',12)
myRC =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 12
Dates: 15-Sep-2023
Rates: 0.0350
Settle: 15-Sep-2018
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создайте HeynenKat Объект калькулятора цен
Используйте finpricer создать HeynenKat объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".
outPricer = finpricer("analytic",'Model',BlackScholesModel,'DiscountCurve',myRC,'SpotPrice',100,'DividendType',"continuous",'DividendValue',.05,'PricingMethod',"HeynenKat")
outPricer =
HeynenKat with properties:
DiscountCurve: [1x1 ratecurve]
Model: [1x1 finmodel.BlackScholes]
SpotPrice: 100
DividendValue: 0.0500
DividendType: "continuous"
Цена PartialLookback Инструменты
Используйте price вычислить цены и чувствительность для PartialLookback инструменты.
[Price, outPR] = price(outPricer,PartialLookbackOpt,["all"])Price = 3×1
24.8148
25.2306
25.6545
outPR=3×1 object
3x1 priceresult array with properties:
Results
PricerData
outPR.Results
ans=1×7 table
Price Delta Gamma Lambda Vega Theta Rho
______ _______ ________ ______ ______ _______ _______
24.815 0.27297 0.012438 1.1 131.33 -5.0942 -193.51
ans=1×7 table
Price Delta Gamma Lambda Vega Theta Rho
______ _______ ________ ______ ______ _______ _______
25.231 0.27694 0.012349 1.0976 133.05 -5.0265 -198.37
ans=1×7 table
Price Delta Gamma Lambda Vega Theta Rho
______ _______ ________ ______ ______ _______ ______
25.655 0.28099 0.012264 1.0953 134.81 -4.9578 -203.4
Этот пример показывает рабочий процесс, чтобы оценить фиксированную забастовку PartialLookback инструмент, когда вы используете Heston модель и AssetMonteCarlo метод ценообразования.
Создайте PartialLookback Инструментальный объект
Используйте fininstrument создать PartialLookback инструментальный объект.
PartialLookbackOpt = fininstrument("PartialLookback",'ExerciseDate',datetime(2022,9,15),'Strike',102, 'MonitorDate',datetime(2021,9,15),'OptionType',"call",'ExerciseStyle',"european",'Name',"partial_lookback_option")
PartialLookbackOpt =
PartialLookback with properties:
MonitorDate: 15-Sep-2021
StrikeScaler: 1
OptionType: "call"
Strike: 102
AssetMinMax: NaN
ExerciseStyle: "european"
ExerciseDate: 15-Sep-2022
Name: "partial_lookback_option"
Создайте Heston Объект модели
Используйте finmodel создать Hestone объект модели.
HestonModel = finmodel("Heston",'V0',0.032,'ThetaV',0.1,'Kappa',0.003,'SigmaV',0.2,'RhoSV',-0.9)
HestonModel =
Heston with properties:
V0: 0.0320
ThetaV: 0.1000
Kappa: 0.0030
SigmaV: 0.2000
RhoSV: -0.9000
Создайте ratecurve Объект
Создайте плоский ratecurve объект с помощью ratecurve.
Settle = datetime(2018,9,15); Maturity = datetime(2023,9,15); Rate = 0.035; myRC = ratecurve('zero',Settle,Maturity,Rate,'Basis',12)
myRC =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 12
Dates: 15-Sep-2023
Rates: 0.0350
Settle: 15-Sep-2018
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создайте AssetMonteCarlo Объект калькулятора цен
Используйте finpricer создать AssetMonteCarlo объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".
outPricer = finpricer("AssetMonteCarlo",'DiscountCurve',myRC,"Model",HestonModel,'SpotPrice',100,'simulationDates',Settle+calmonths(1):calmonths(1):datetime(2022,9,15))
outPricer =
HestonMonteCarlo with properties:
DiscountCurve: [1x1 ratecurve]
SpotPrice: 100
SimulationDates: [15-Oct-2018 15-Nov-2018 15-Dec-2018 ... ]
NumTrials: 1000
RandomNumbers: []
Model: [1x1 finmodel.Heston]
DividendType: "continuous"
DividendValue: 0
Цена PartialLookback Инструмент
Используйте price вычислить цену и чувствительность для PartialLookback инструмент.
[Price, outPR] = price(outPricer,PartialLookbackOpt,["all"])Price = 19.9479
outPR =
priceresult with properties:
Results: [1x8 table]
PricerData: [1x1 struct]
outPR.Results
ans=1×8 table
Price Delta Gamma Lambda Rho Theta Vega VegaLT
______ _______ _________ ______ ______ ______ _____ ______
19.948 0.93159 0.0084898 4.6701 283.87 1.9218 48.04 2.666
Опция partial lookback дает инвестору право осуществить опцию с самым высоким (или самый низкий) цена актива подчиненного в частичный lookback период.
Частичные lookback опции называются дробными lookback опциями потому что:
Экстремумы (Smax и Smin) проверены во время подмножества жизней опций
Только часть значений плавающей забастовки в действительности
Для последнего введен фактор λ (lambda). λ фактор, представленный дополнительным аргументом StrikeScaler значения имени, константа и включает создание дробной плавающей забастовки lookback опция, где забастовка фиксируется на уровне некоторого процента выше или ниже фактических экстремумов (Smax и Smin).
Для вызовов, когда λ ≥ 1, вызов, пускающий в ход увеличения забастовки
Для помещает, когда 0 ≤ λ ≤ 1, помещенная плавающая забастовка уменьшается
Программное обеспечение Financial Instruments Toolbox™ поддерживает два типа частичных lookback опций: зафиксированный и плавание. Частичная lookback опция фиксированной забастовки похожа на стандартную фиксированную забастовку lookback опция, но lookback период запускается в предопределенную дату (T) после расчетного дня опции. Выплата для этого опции
Max (0, Smax - K) для вызова
Max (0, K-Smin) для помещенного
где
Smax является максимальным значением базового актива во время контрольного периода.
Smin является минимальным значением базового актива во время контрольного периода.
K является ценой исполнения опциона.
Плавающая забастовка частичная lookback опция похожа на стандартную плавающую забастовку lookback опция, но lookback период запускается в, обосновывается и концы в предопределенную дату (T) перед истечением.
Выплата для этого опции
Max (0, S - λ × Smin) для вызова
Max (0, λ × Smax - S) для помещенного
где
Smax является максимальным значением базового актива во время контрольного периода.
Smin является минимальным значением базового актива во время контрольного периода.
K является ценой исполнения опциона.
S является ценой базового актива.
λ, представленный StrikeScaler, степень пристрастия.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.