Kirk

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

Описание

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

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

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

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

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

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

Создание

Описание

пример

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

пример

KirkPricerObj = finpricer(___,Name,Value) задать необязательные свойства с помощью дополнительных пар "имя-значение" в дополнение к необходимым аргументам в предыдущем синтаксисе. Для примера, KirkPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BSModel,'SpotPrice',[100;105],'DividendValue',[2.5,2.8],'PricingMethod',"Kirk") создает Kirk объект прейскуранта.

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

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

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

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

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

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

Пример: KirkPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BSModel,'SpotPrice',[100;105],'DividendValue',[2.5,2.8],'PricingMethod',"Kirk")
Требуемая Kirk Аргументы в виде пар имя-значение

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание

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

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

Свойства

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примеры

свернуть все

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

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

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

SpreadOpt = fininstrument("Spread",'Strike',5,'ExerciseDate',datetime(2021,9,15),'OptionType',"put",'ExerciseStyle',"european",'Name',"spread_option")
SpreadOpt = 
  Spread with properties:

       OptionType: "put"
           Strike: 5
    ExerciseStyle: "european"
     ExerciseDate: 15-Sep-2021
             Name: "spread_option"

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

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

BlackScholesModel = finmodel("BlackScholes",'Volatility',[0.2 , 0.1])
BlackScholesModel = 
  BlackScholes with properties:

     Volatility: [0.2000 0.1000]
    Correlation: [2x2 double]

Создание 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"

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

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

outPricer = finpricer("analytic",'Model',BlackScholesModel,'DiscountCurve',myRC,'SpotPrice',[103,105],'DividendValue',[0.025 , 0.028],'PricingMethod',"Kirk")
outPricer = 
  Kirk with properties:

    DiscountCurve: [1x1 ratecurve]
            Model: [1x1 finmodel.BlackScholes]
        SpotPrice: [103 105]
    DividendValue: [0.0250 0.0280]
     DividendType: "continuous"

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

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

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

       Results: [1x7 table]
    PricerData: []

outPR.Results
ans=1×7 table
    Price            Delta                    Gamma                   Lambda                Vega           Theta       Rho  
    ______    ____________________    ______________________    __________________    ________________    _______    _______

    17.861    -0.44663     0.58229    0.0093493     0.008195    -2.5756     3.3578    59.518    27.176    -1.7801    -8.1715

Введенный в R2020a