Lookback
инструмент
Создайте и оцените Lookback
объект инструмента, использующий этот рабочий процесс:
Использовать fininstrument
для создания Lookback
объект прибора.
Использовать finmodel
для задания BlackScholes
, Heston
, Bates
, или Merton
модель для Lookback
прибора.
При использовании BlackScholes
модель, использование finpricer
для задания ConzeViswanathan
, AssetTree
, или GoldmanSosinGatto
метод ценообразования для Lookback
прибора.
При использовании BlackScholes
, Heston
, Bates
, или Merton
модель, использование finpricer
для задания AssetMonteCarlo
метод ценообразования для Lookback
прибора.
Дополнительные сведения об этом рабочем процессе см. в разделе Запуске с рабочими процессами с использованием объектной среды для ценообразования финансовых инструментов.
Для получения дополнительной информации о доступных моделях и методах ценообразования для Lookback
инструмент, см. «Выбор инструментов», «Модели» и «Цены».
создает LookbackObj
= fininstrument(InstrumentType
,'Strike
',strike_value,'ExerciseDate
',exercise_date)Lookback
объект путем определения InstrumentType
и устанавливает свойства для необходимых аргументов пары "имя-значение" Strike
и ExerciseDate
.
The Lookback
инструмент поддерживает фиксированные и плавающие опции поиска удара. Для получения дополнительной информации о Lookback
инструмент, см. Подробнее о.
устанавливает необязательные свойства с помощью дополнительных пар "имя-значение" в дополнение к необходимым аргументам в предыдущем синтаксисе. Для примера, LookbackObj
= fininstrument(___,Name,Value
)LookbackObj = fininstrument("Lookback",'Strike',100,'ExerciseDate',datetime(2019,1,30),'OptionType',"put",'ExerciseStyle',"European",'Name',"lookback_option")
создает Lookback
поставьте опцию с европейским упражнением. Можно задать несколько аргументы пары "имя-значение".
InstrumentType
- Тип КИПиА"Lookback"
| вектор символов с 'Lookback'
значений
Тип инструмента, заданный как строка со значением "Lookback"
или вектор символов со значением 'Lookback'
.
Типы данных: char
| string
Lookback
Аргументы в виде пар имя-значениеУкажите требуемые и необязательные разделенные запятой пары 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'
и скаляр неотрицательное числовое значение для фиксированного ударного Lookback
опция или NaN
для плавающего ударного Lookback
опция.
Примечание
Используйте ConzeViswanathan
цена для фиксированного ударного Lookback
опция и использовать GoldmanSosinGatto
цена для плавающего ударного Lookback
опция.
Типы данных: double
'ExerciseDate'
- Дата выполнения опцииДата выполнения опции, заданная как разделенная разделенными запятой парами, состоящая из 'ExerciseDate'
и скалярное значение datetime, серийный номер даты, вектор символов даты или строка даты.
Примечание
Для европейской опции существует только один ExerciseDate
на дату истечения срока действия опции.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что ExerciseDate
свойство сохранено как datetime.
Типы данных: double
| char
| string
| datetime
Lookback
Аргументы в виде пар имя-значение'OptionType'
- Тип опции "call"
(по умолчанию) | строку со значением "call"
или "put"
| вектор символов с 'call'
значений
или 'put'
Тип опции, заданный как разделенная разделенными запятой парами, состоящая из 'OptionType'
и скалярную строку или вектор символов.
Типы данных: char
| string
'ExerciseStyle'
- Стиль упражнения опции"European"
(по умолчанию) | строку со значением "European"
или "American"
| вектор символов с 'European'
значений
или 'American'
Опция стиль упражнения, заданный как разделенная запятой пара, состоящий из 'ExerciseStyle'
и скалярную строку или вектор символов.
Типы данных: string
| char
'AssetMinMax'
- Максимальная или минимальная базовая цена активовNaN
где SpotPrice
базового актива используется (по умолчанию) | скалярным числом Максимальная или минимальная базовая цена актива, заданная как разделенная разделенными запятой парами, состоящая из 'AssetMinMax'
и скалярным числом.
Типы данных: double
'Name'
- Определяемое пользователем имя прибора" "
(по умолчанию) | строку | вектор символовОпределяемое пользователем имя инструмента, заданное как разделенная разделенными запятой парами, состоящая из 'Name'
и скалярную строку или вектор символов.
Типы данных: char
| string
Strike
- значение цены опционной доставкиОпциональное значение цены доставки, возвращаемое как скалярное неотрицательное число.
Типы данных: double
ExerciseDate
- Дата выполнения опцииДата выполнения опции, возвращенная как datetime.
Типы данных: datetime
OptionType
- Тип опции"call"
(по умолчанию) | строку со значением "call"
или "put"
Тип опции, возвращенный как строка со значением "call"
или "put"
.
Типы данных: string
ExerciseStyle
- Стиль упражнения опции"European"
(по умолчанию) | строку со значением "European"
или "American"
Опция стиле упражнения возвращается как строка со значением "European"
или "American"
.
Типы данных: string
AssetMinMax
- Максимальная или минимальная базовая цена активовNaN
где SpotPrice
базового актива используется (по умолчанию) | скалярным числом Максимальная или минимальная базовая цена актива, возвращенная в виде скалярного числа.
Типы данных: double
Name
- Определяемое пользователем имя прибора" "
(по умолчанию) | строкуОпределяемое пользователем имя инструмента, возвращаемое как строка.
Типы данных: string
Этот пример показывает рабочий процесс, чтобы оценить LookBack
инструмент, когда вы используете BlackScholes
модель и ConzeViswanathan
метод ценообразования.
Создание Lookback
Объект прибора
Использование fininstrument
для создания Lookback
объект прибора.
LookbackOpt = fininstrument("Lookback",'Strike',105,'ExerciseDate',datetime(2022,9,15),'OptionType',"put",'ExerciseStyle',"european",'Name',"lookback_option")
LookbackOpt = Lookback with properties: OptionType: "put" Strike: 105 AssetMinMax: NaN ExerciseStyle: "european" ExerciseDate: 15-Sep-2022 Name: "lookback_option"
Создание BlackScholes
Объект модели
Использование finmodel
для создания BlackScholes
объект модели.
BlackScholesModel = finmodel("BlackScholes",'Volatility',0.2)
BlackScholesModel = BlackScholes with properties: Volatility: 0.2000 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"
Создание ConzeViswanathan
Объект прейскуранта
Использование finpricer
для создания ConzeViswanathan
и используйте объект pricer ratecurve
объект для 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("analytic","Model",BlackScholesModel,"DiscountCurve",myRC,"SpotPrice",100,"DividendValue",0.25,"DividendType","continuous","PricingMethod","ConzeViswanathan")
outPricer = ConzeViswanathan with properties: DiscountCurve: [1x1 ratecurve] Model: [1x1 finmodel.BlackScholes] SpotPrice: 100 DividendValue: 0.2500 DividendType: "continuous"
Ценовые Lookback
Инструмент
Использование price
вычислить цену и чувствительность для Lookback
прибора.
[Price, outPR] = price(outPricer,LookbackOpt,["all"])
Price = 57.8786
outPR = priceresult with properties: Results: [1x7 table] PricerData: []
outPR.Results
ans=1×7 table
Price Delta Gamma Lambda Vega Theta Rho
______ ________ _____ ________ ______ _______ _______
57.879 -0.33404 0 -0.57714 32.587 -5.1863 -350.41
Этот пример показывает рабочий процесс, чтобы оценить LookBack
инструмент, когда вы используете BlackScholes
модель и AssetTree
метод ценообразования.
Создание Lookback
Объект прибора
Использование fininstrument
для создания Lookback
объект прибора.
LookbackOpt = fininstrument("Lookback",'Strike',105,'ExerciseDate',datetime(2022,9,15),'OptionType',"put",'ExerciseStyle',"european",'Name',"lookback_option")
LookbackOpt = Lookback with properties: OptionType: "put" Strike: 105 AssetMinMax: NaN ExerciseStyle: "european" ExerciseDate: 15-Sep-2022 Name: "lookback_option"
Создание BlackScholes
Объект модели
Использование finmodel
для создания BlackScholes
объект модели.
BlackScholesModel = finmodel("BlackScholes",'Volatility',0.2)
BlackScholesModel = BlackScholes with properties: Volatility: 0.2000 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"
Создание AssetTree
Объект прейскуранта
Использование finpricer
для создания AssetTree
объект цены для дерева собственных средств LR и используйте ratecurve
объект для 'DiscountCurve'
аргумент пары "имя-значение".
NumPeriods = 15; LRPricer = finpricer("AssetTree",'DiscountCurve',myRC,'Model',BlackScholesModel,'SpotPrice',150,'PricingMethod',"LeisenReimer",'Maturity',datetime(2022,9,15),'NumPeriods',NumPeriods)
LRPricer = LRTree with properties: InversionMethod: PP1 Strike: 150 Tree: [1x1 struct] NumPeriods: 15 Model: [1x1 finmodel.BlackScholes] DiscountCurve: [1x1 ratecurve] SpotPrice: 150 DividendType: "continuous" DividendValue: 0 TreeDates: [1x15 datetime]
LRPricer.Tree
ans = struct with fields:
Probs: [2x15 double]
ATree: {1x16 cell}
dObs: [1x16 datetime]
tObs: [1x16 double]
Ценовые Lookback
Инструмент
Использование price
вычислить цену и чувствительность для Lookback
прибора.
[Price, outPR] = price(LRPricer,LookbackOpt,["all"])
Price = 3.9412
outPR = priceresult with properties: Results: [1x7 table] PricerData: []
outPR.Results
ans=1×7 table
Price Delta Gamma Vega Lambda Rho Theta
______ ________ _________ ______ _______ _______ _______
3.9412 -0.13312 -0.011131 67.684 -5.0757 -73.857 -1.0383
Этот пример показывает рабочий процесс, чтобы оценить LookBack
инструмент, когда вы используете BlackScholes
модель и AssetMonetCarlo
метод ценообразования.
Создание Lookback
Объект прибора
Использование fininstrument
для создания Lookback
объект прибора.
LookbackOpt = fininstrument("Lookback",'Strike',105,'ExerciseDate',datetime(2022,9,15),'OptionType',"put",'ExerciseStyle',"european",'Name',"lookback_option")
LookbackOpt = Lookback with properties: OptionType: "put" Strike: 105 AssetMinMax: NaN ExerciseStyle: "european" ExerciseDate: 15-Sep-2022 Name: "lookback_option"
Создание BlackScholes
Объект модели
Использование finmodel
для создания BlackScholes
объект модели.
BlackScholesModel = finmodel("BlackScholes",'Volatility',0.2)
BlackScholesModel = BlackScholes with properties: Volatility: 0.2000 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"
Создание AssetMonteCarlo
Объект прейскуранта
Использование finpricer
для создания AssetMonteCarlo
и используйте объект pricer ratecurve
объект для 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("AssetMonteCarlo",'DiscountCurve',myRC,"Model",BlackScholesModel,'SpotPrice',200,'simulationDates',datetime(2022,9,15))
outPricer = GBMMonteCarlo with properties: DiscountCurve: [1x1 ratecurve] SpotPrice: 200 SimulationDates: 15-Sep-2022 NumTrials: 1000 RandomNumbers: [] Model: [1x1 finmodel.BlackScholes] DividendType: "continuous" DividendValue: 0
Ценовые Lookback
Инструмент
Использование price
вычислить цену и чувствительность для Lookback
прибора.
[Price, outPR] = price(outPricer,LookbackOpt,["all"])
Price = 1.8553
outPR = priceresult with properties: Results: [1x7 table] PricerData: [1x1 struct]
outPR.Results
ans=1×7 table
Price Delta Gamma Lambda Rho Theta Vega
______ _________ __________ _______ _______ ________ ______
1.8553 -0.040442 0.00062792 -4.3596 -39.426 -0.71345 42.311
Этот пример показывает рабочий процесс, чтобы оценить LookBack
инструмент, когда вы используете Bates
модель и AssetMonetCarlo
метод ценообразования.
Создание Lookback
Объект прибора
Использование fininstrument
для создания Lookback
объект прибора.
LookbackOpt = fininstrument("Lookback",'Strike',105,'ExerciseDate',datetime(2022,9,15),'OptionType',"put",'ExerciseStyle',"european",'Name',"lookback_option")
LookbackOpt = Lookback with properties: OptionType: "put" Strike: 105 AssetMinMax: NaN ExerciseStyle: "european" ExerciseDate: 15-Sep-2022 Name: "lookback_option"
Создание Bates
Объект модели
Использование finmodel
для создания Bates
объект модели.
BatesModel = finmodel("Bates",'V0',0.032,'ThetaV',0.1,'Kappa',0.003,'SigmaV',0.2,'RhoSV',0.9,'MeanJ',0.11,'JumpVol',.023,'JumpFreq',0.02)
BatesModel = Bates with properties: V0: 0.0320 ThetaV: 0.1000 Kappa: 0.0030 SigmaV: 0.2000 RhoSV: 0.9000 MeanJ: 0.1100 JumpVol: 0.0230 JumpFreq: 0.0200
Создание 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
и используйте объект pricer ratecurve
объект для 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("AssetMonteCarlo",'DiscountCurve',myRC,"Model",BatesModel,'SpotPrice',100,'simulationDates',datetime(2022,9,15))
outPricer = BatesMonteCarlo with properties: DiscountCurve: [1x1 ratecurve] SpotPrice: 100 SimulationDates: 15-Sep-2022 NumTrials: 1000 RandomNumbers: [] Model: [1x1 finmodel.Bates] DividendType: "continuous" DividendValue: 0
Ценовые Lookback
Инструмент
Использование price
вычислить цену и чувствительность для Lookback
прибора.
[Price, outPR] = price(outPricer,LookbackOpt,["all"])
Price = 7.3592
outPR = priceresult with properties: Results: [1x8 table] PricerData: [1x1 struct]
outPR.Results
ans=1×8 table
Price Delta Gamma Lambda Rho Theta Vega VegaLT
______ ________ ___________ _______ _______ _________ ______ _______
7.3592 -0.83923 -3.5527e-15 -11.404 -29.431 -0.030786 31.941 0.71394
Опция lookback является зависящей от пути опцией, основанной на максимальном или минимальном значении, которого базовый актив достигает в течение всего срока службы опции.
Программное обеспечение Financial Instruments Toolbox™ поддерживает два типа опций поиска: фиксированный и плавающий. Опции фиксированного поиска имеют заданную цену доставки, в то время как опции плавающего поиска имеют цену доставки, определяемую путем актива. Для получения дополнительной информации см. Раздел «Опция поиска».
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.