IkedaKunitomo

Создайте IkedaKunitomo объект калькулятора цен для DoubleBarrier инструмент с помощью BlackScholes модель

Описание

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

  1. Использование fininstrument создать DoubleBarrier инструментальный объект.

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

  3. Использование finpricer задавать IkedaKunitomo объект калькулятора цен для DoubleBarrier инструмент.

Для получения дополнительной информации об этом рабочем процессе смотрите Начало работы с Рабочими процессами Используя Основанную на объектах Среду для Оценки Финансовых инструментов.

Для получения дополнительной информации о доступных инструментах, моделях и методах ценообразования для DoubleBarrier инструмент, смотрите, Выбирают Instruments, Models и Pricers.

Создание

Описание

пример

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

пример

IkedaKunitomoPricerObj = finpricer(___,Name,Value) устанавливает дополнительные свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, IkedaKunitomoPricerObj = finpricer("Analytic",'Model','BSModel','DiscountCurve',ratecurve_obj,'SpotPrice',100,'DividendValue',0.025,'PricingMethod',"IkedaKunitomo") создает IkedaKunitomo объект калькулятора цен. Можно задать несколько аргументов пары "имя-значение".

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

развернуть все

Тип калькулятора цен в виде строки со значением "Analytic" или вектор символов со значением 'Analytic'.

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

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

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

Пример: IkedaKunitomoPricerObj = finpricer("Analytic",'Model','BSModel','DiscountCurve',ratecurve_obj,'SpotPrice',100,'DividendValue',0.025,'PricingMethod',"IkedaKunitomo")
Необходимый IkedaKunitomo Аргументы в виде пар имя-значение

развернуть все

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

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

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

Примечание

Задайте плоский ratecurve объект для DiscountCurve.

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

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

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

Дополнительный IkedaKunitomo Аргументы в виде пар имя-значение

развернуть все

Дивидендная доходность в виде разделенной запятой пары, состоящей из 'DividendValue' и скалярное неотрицательное числовое значение.

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

Тип дивиденда в виде разделенной запятой пары, состоящей из 'DividendType' и строка или вектор символов.

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

Уровни искривления верхних и более низких барьеров в виде разделенной запятой пары, состоящей из 'Curvature' и вектор, где первый уровень является верхним искривлением барьера (d1) и второй уровень, является более низким искривлением барьера (d2). Возможные уровни искривления следующие:

  • d1 = d2 = 0 соответствует двум плоским контурам.

  • d1 <0 <d2 соответствует экспоненциально растущей нижней границе и экспоненциально затухающему верхнему контуру.

  • d1> 0> d2 соответствует выпуклой нисходящей нижней границе и выпуклому восходящему верхнему контуру.

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

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

Примечание

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

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

Свойства

развернуть все

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

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

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

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

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

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

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

Дивидендная доходность, возвращенная как скаляр, неотрицательный числовой.

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

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

Тип дивиденда, возвращенный как строка.

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

Уровни искривления верхних и более низких барьеров, возвращенных как вектор, где первый уровень является верхним искривлением барьера (d1) и второй уровень, являются более низким искривлением барьера (d2).

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

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

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

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

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

Примеры

свернуть все

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

Создайте DoubleBarrier Инструментальный объект

Используйте fininstrument создать DoubleBarrier инструментальный объект.

DoubleBarrierOpt = fininstrument("DoubleBarrier",'Strike',100,'ExerciseDate',datetime(2020,8,15),'OptionType',"call",'ExerciseStyle',"European",'BarrierType',"DKO",'BarrierValue',[110 80],'Name',"doublebarrier_option")
DoubleBarrierOpt = 
  DoubleBarrier with properties:

       OptionType: "call"
           Strike: 100
     BarrierValue: [110 80]
    ExerciseStyle: "european"
     ExerciseDate: 15-Aug-2020
      BarrierType: "dko"
           Rebate: [0 0]
             Name: "doublebarrier_option"

Создайте BlackScholes Объект модели

Используйте finmodel создать BlackScholes объект модели.

BlackScholesModel = finmodel("BlackScholes","Volatility",.3)
BlackScholesModel = 
  BlackScholes with properties:

     Volatility: 0.3000
    Correlation: 1

Создайте ratecurve Объект

Создайте плоский ratecurve объект с помощью ratecurve.

Settle = datetime(2017,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-2017
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

Создайте IkedaKunitomo Объект калькулятора цен

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

outPricer = finpricer("Analytic","DiscountCurve",myRC,"Model",BlackScholesModel,'SpotPrice',100,'Curvature',[0.03 -0.03],'DividendValue',0.029,"PricingMethod","IkedaKunitomo")
outPricer = 
  IkedaKunitomo with properties:

    DiscountCurve: [1x1 ratecurve]
            Model: [1x1 finmodel.BlackScholes]
        SpotPrice: 100
    DividendValue: 0.0290
     DividendType: "continuous"
        Curvature: [0.0300 -0.0300]

Цена DoubleBarrier Инструмент

Используйте price вычислить цену и чувствительность для DoubleBarrier инструмент.

[Price, outPR] = price(outPricer,DoubleBarrierOpt,["all"])
Price = 5.6848e-04
outPR = 
  priceresult with properties:

       Results: [1x7 table]
    PricerData: []

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

    0.00056848    -3.7713e-05    -4.2071e-06    -6.6339    -0.031332    0.0008912    -0.00035113

Введенный в R2020b