KemnaVorst

Создание KemnaVorst объект ценника для Asian инструмент с использованием BlackScholes модель

Описание

Создайте и оцените Asian объект инструмента со BlackScholes модель и KemnaVorst метод ценообразования с использованием этого рабочего процесса:

  1. Использовать fininstrument для создания Asian объект прибора.

  2. Использовать finmodel для задания BlackScholes модель для Asian прибора.

  3. Использовать finpricer для задания KemnaVorst объект ценника для Asian прибора.

Дополнительные сведения об этом рабочем процессе см. в разделе Запуске с рабочими процессами с использованием объектной среды для ценообразования финансовых инструментов.

Для получения дополнительной информации о доступных инструментах, моделях и методах ценообразования для Asian инструмент, см. «Выбор инструментов», «Модели» и «Цены».

Создание

Описание

пример

KemnaVorstPricerObj = finpricer(PricerType,'DiscountCurve',ratecurve_obj,'Model',model,'SpotPrice',spotprice_value) создает KemnaVorst объект прейскуранта путем определения PricerType и устанавливает свойства для необходимых аргументов пары "имя-значение" DiscountCurve, Model, и SpotPrice.

пример

KemnaVorstPricerObj = finpricer(___,Name,Value) задать необязательные свойства с помощью дополнительных пар "имя-значение" в дополнение к необходимым аргументам в предыдущем синтаксисе. Для примера, KemnaVorstPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BSModel,'SpotPrice',1000,'DividendType',"continuous",'DividendValue',100,'PricingMethod',"KemnaVorst") создает KemnaVorst объект прейскуранта.

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

расширить все

Тип прейскуранта, заданный как строка со значением "Analytic" или вектор символов со значением 'Analytic'.

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

KemnaVorst Аргументы в виде пар имя-значение

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

Пример: KemnaVorstPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BSModel,'SpotPrice',1000,'DividendType',"continuous",'DividendValue',100,'PricingMethod',"KemnaVorst")
Требуемая KemnaVorst Аргументы в виде пар имя-значение

расширить все

ratecurve объект для дисконтирования денежных потоков, заданный как разделенная разделенными запятой парами, состоящая из 'DiscountCurve' и имя ранее созданного ratecurve объект.

Примечание

Задайте плоскую ratecurve объект для DiscountCurve. Если вы используете нефлят ratecurve объект, программное обеспечение использует скорость в ratecurve объект в Maturity и принимает, что значение является постоянным для срока службы опции.

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

Модель, заданная как разделенная разделенными запятой парами, состоящая из 'Model' и имя ранее созданного BlackScholes моделировать объект используя finmodel.

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

Текущая цена базового актива, заданная как разделенная разделенными запятой парами, состоящая из 'SpotPrice' и скаляр неотрицательную цифру.

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

Необязательные KemnaVorst Аргументы в виде пар имя-значение

расширить все

Тип дивидендов по акциям, заданный как разделенная разделенными запятой парами, состоящая из 'DividendType' и строка или вектор символов. DividendType должен быть "cash" для фактических дивидендов в долларах или "continuous" для непрерывного дивидендного выражения.

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

Сумма дивидендов для базового акций, заданная как разделенная разделенными запятой парами, состоящая из 'DividendValue' и число скаляра для суммы дивидендов или расписания для графика дивидендов.

Примечание

DividendValue должен быть скаляром для "continuous" DividendType или расписание для "cash" DividendType.

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

Аналитический метод ценообразования, заданный как разделенная разделенными запятой парами, состоящая из 'PricingMethod' и строка или вектор символов.

Примечание

Метод ценообразования по умолчанию для BlackScholes модель является BlackScholes цена.

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

Свойства

расширить все

Это свойство доступно только для чтения.

ratecurve объект для дисконтирования денежных потоков, возвращенный как ratecurve объект.

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

Модель, возвращенная как BlackScholes объект модели.

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

Текущая цена базового актива, возвращенная в виде скалярного неотрицательного числа.

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

Это свойство доступно только для чтения.

Тип дивидендов по акциям, возвращенный как строка. DividendType является либо "cash" для фактических дивидендов в долларах или "continuous" для непрерывного дивидендного выражения.

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

Сумма дивидендов или график дивидендов для базовых акций, возвращенные в виде скалярного числа для дивидендного выражения или расписания для дивидендного графика.

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

Аналитический метод ценообразования, возвращенный как строка.

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

Функции объекта

priceВычислите цену для процентной ставки, собственного капитала или кредитного производного инструмента с Analytic калькулятор цен

Примеры

свернуть все

Этот пример показывает рабочий процесс, чтобы оценить Asian инструмент, когда вы используете BlackScholes модель и KemnaVorst метод ценообразования.

Создание Asian Объект прибора

Использование fininstrument для создания Asian объект прибора.

AsianOpt = fininstrument("Asian",'ExerciseDate',datetime(2022,9,15),'Strike',105,'OptionType',"put",'ExerciseStyle',"european",'AverageType',"geometric",'Name',"asian_option")
AsianOpt = 
  Asian with properties:

          OptionType: "put"
              Strike: 105
         AverageType: "geometric"
        AveragePrice: 0
    AverageStartDate: NaT
       ExerciseStyle: "european"
        ExerciseDate: 15-Sep-2022
                Name: "asian_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"

Создание KemnaVorst Объект прейскуранта

Использование finpricer для создания KemnaVorst и используйте объект pricer ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".

outPricer = finpricer("analytic",'Model',BlackScholesModel,'DiscountCurve',myRC,'SpotPrice',100,'DividendType',"continuous",'DividendValue',.05,'PricingMethod',"KemnaVorst")
outPricer = 
  KemnaVorst with properties:

    DiscountCurve: [1x1 ratecurve]
            Model: [1x1 finmodel.BlackScholes]
        SpotPrice: 100
    DividendValue: 0.0500
     DividendType: "continuous"

Ценовые Asian Инструмент

Использование price вычислить цену и чувствительность для Asian прибора.

[Price, outPR] = price(outPricer,AsianOpt,["all"])
Price = 18.1186
outPR = 
  priceresult with properties:

       Results: [1x7 table]
    PricerData: []

outPR.Results 
ans=1×7 table
    Price      Delta        Gamma      Lambda     Vega       Rho       Theta 
    ______    ________    _________    ______    ______    _______    _______

    18.119    -0.44689    0.0087391    -3.025    64.582    -251.23    -1.5738

Введенный в R2020a