Binary

Binary инструментальный объект

Описание

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

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

  2. Использование finmodel задавать BlackScholes или Bachelier модель для Binary инструментальный объект.

  3. Выберите метод ценообразования.

    • При использовании BlackScholes модель, использовать finpricer задавать BlackScholes или AssetMonteCarlo метод ценообразования для одного или нескольких Binary инструменты.

    • При использовании Bachelier модель, использовать finpricer задавать AssetMonteCarlo метод ценообразования для одного или нескольких Binary инструменты.

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

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

Создание

Описание

пример

BinaryOpt = fininstrument(InstrumentType,'Strike',strike_value,'ExerciseDate',exercise_date,'PayoffValue',payoff_value) создает Binary инструментальный объект для одного или нескольких Бинарных инструментов путем определения InstrumentType и свойства наборов с помощью необходимых аргументов пары "имя-значение" Strike, ExerciseDate, и PayoffValue.

пример

BinaryOpt = fininstrument(___,Name,Value) устанавливает дополнительные свойства с помощью дополнительных аргументов пары "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, BinaryOpt = fininstrument("Binary",'Strike',100,'ExerciseDate',datetime(2019,1,30),'PayoffValue',110,'OptionType',"put",'Name',"binary_option") создает Binary пут-опцион с PayoffValue из 110. Можно задать несколько аргументов пары "имя-значение".

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

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

Инструментальный тип в виде строки со значением "Binary", вектор символов со значением 'Binary', NINST- 1 массив строк со значениями "Binary", или NINST- 1 массив ячеек из символьных векторов со значениями 'Binary'.

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

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

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

Пример: BinaryOpt = fininstrument("Binary",'Strike',100,'ExerciseDate',datetime(2019,1,30),'PayoffValue',110,'OptionType',"put",'Name',"binary_option")
Необходимый Binary Аргументы в виде пар имя-значение

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

Значение цены исполнения опциона опции в виде разделенной запятой пары, состоящей из 'Strike' и скалярное неотрицательное значение или NINST- 1 вектор из неотрицательных значений.

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

Дата осуществления опции в виде разделенной запятой пары, состоящей из 'ExerciseDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.

Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что ExerciseDate свойство хранится как datetime.

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

Значение выплаты опции в виде разделенной запятой пары, состоящей из 'PayoffValue' и скалярное числовое значение или NINST- 1 числовой вектор.

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

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

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

Тип опции в виде разделенной запятой пары, состоящей из 'OptionType' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.

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

Осуществление опции разрабатывает в виде разделенной запятой пары, состоящей из 'ExerciseStyle' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.

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

Пользовательское имя для инструмента в виде разделенной запятой пары, состоящей из 'Name' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.

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

Свойства

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

Значение цены исполнения опциона опции, возвращенное как скалярное неотрицательное значение или NINST- 1 вектор из неотрицательных значений.

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

Дата осуществления опции, возвращенная как datetime или NINST- 1 вектор из datetimes.

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

Значение выплаты опции, возвращенное как скалярное числовое значение или NINST- 1 вектор из числовых значений.

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

Тип опции, возвращенный как скалярная строка или NINST- 1 массив строк со значениями "call" или "put".

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

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

Стиль осуществления опции, возвращенный как скалярная строка или NINST- 1 массив строк со значением "European".

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

Пользовательское имя для инструмента, возвращенного как скалярная строка или NINST- 1 массив строк.

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

Примеры

свернуть все

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

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

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

BinaryOpt = fininstrument("Binary",'ExerciseDate',datetime(2022,9,15),'Strike',1000,'PayoffValue',130,'OptionType',"put",'Name',"binary_option")
BinaryOpt = 
  Binary with properties:

       OptionType: "put"
     ExerciseDate: 15-Sep-2022
           Strike: 1000
      PayoffValue: 130
    ExerciseStyle: "european"
             Name: "binary_option"

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

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

BlackScholesModel = finmodel("BlackScholes",'Volatility',.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 объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".

outPricer = finpricer("AssetMonteCarlo",'DiscountCurve',myRC,"Model",BlackScholesModel,'SpotPrice',102,'simulationDates',datetime(2022,9,15))
outPricer = 
  GBMMonteCarlo with properties:

      DiscountCurve: [1x1 ratecurve]
          SpotPrice: 102
    SimulationDates: 15-Sep-2022
          NumTrials: 1000
      RandomNumbers: []
              Model: [1x1 finmodel.BlackScholes]
       DividendType: "continuous"
      DividendValue: 0

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

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

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

       Results: [1x7 table]
    PricerData: [1x1 struct]

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

    113.02      0        0        0       -451.98    3.9582     0  

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

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

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

BinaryOpt = fininstrument("Binary",'ExerciseDate',datetime([2022,9,15 ; 2022,10,15 ; 2022,11,15]),'Strike',[1000 ; 2000 ; 3000],'PayoffValue',130,'OptionType',"put",'Name',"binary_option")
BinaryOpt=3×1 object
  3x1 Binary array with properties:

    OptionType
    ExerciseDate
    Strike
    PayoffValue
    ExerciseStyle
    Name

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

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

BlackScholesModel = finmodel("BlackScholes",'Volatility',0.28)
BlackScholesModel = 
  BlackScholes with properties:

     Volatility: 0.2800
    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"

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

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

outPricer = finpricer("analytic",'DiscountCurve',myRC,'Model',BlackScholesModel,'SpotPrice',800,'DividendValue',0.045)
outPricer = 
  BlackScholes with properties:

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

Цена Binary Инструменты

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

[Price, outPR] = price(outPricer,BinaryOpt,["all"])
Price = 3×1

   87.4005
  109.9703
  111.9328

outPR=3×1 object
  3x1 priceresult array with properties:

    Results
    PricerData

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

    87.4     -0.075973    -3.1264e-05    -0.6954    -23.084    3.2599    -592.61

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

    109.97    -0.014137    -4.4054e-05    -0.10284    -32.196    4.8405    -495.01

ans=1×7 table
    Price       Delta         Gamma        Lambda       Vega      Theta       Rho  
    ______    __________    __________    _________    _______    ______    _______

    111.93    -0.0027668    -1.279e-05    -0.019775    -9.4868    4.2144    -475.57

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

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

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

BinaryOpt = fininstrument("Binary",'ExerciseDate',datetime(2022,9,15),'Strike',1000,'PayoffValue',130,'OptionType',"put",'Name',"binary_option")
BinaryOpt = 
  Binary with properties:

       OptionType: "put"
     ExerciseDate: 15-Sep-2022
           Strike: 1000
      PayoffValue: 130
    ExerciseStyle: "european"
             Name: "binary_option"

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

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

MertonModel = finmodel("Merton",'Volatility',0.45,'MeanJ',0.02,'JumpVol',0.07,'JumpFreq',0.09)
MertonModel = 
  Merton with properties:

    Volatility: 0.4500
         MeanJ: 0.0200
       JumpVol: 0.0700
      JumpFreq: 0.0900

Создайте 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",MertonModel,'SpotPrice',102,'simulationDates',datetime(2022,9,15))
outPricer = 
  MertonMonteCarlo with properties:

      DiscountCurve: [1x1 ratecurve]
          SpotPrice: 102
    SimulationDates: 15-Sep-2022
          NumTrials: 1000
      RandomNumbers: []
              Model: [1x1 finmodel.Merton]
       DividendType: "continuous"
      DividendValue: 0

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

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

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

       Results: [1x7 table]
    PricerData: [1x1 struct]

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

    112.45      0        0        0       -449.72    3.9384     0  

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

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

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

BinaryOpt = fininstrument("Binary",'ExerciseDate',datetime(2022,9,15),'Strike',1000,'PayoffValue',130,'OptionType',"put",'Name',"binary_option")
BinaryOpt = 
  Binary with properties:

       OptionType: "put"
     ExerciseDate: 15-Sep-2022
           Strike: 1000
      PayoffValue: 130
    ExerciseStyle: "european"
             Name: "binary_option"

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

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

BachelierModel = finmodel("Bachelier",'Volatility',.2)
BachelierModel = 
  Bachelier 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 объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".

outPricer = finpricer("AssetMonteCarlo",'DiscountCurve',myRC,"Model",BachelierModel,'SpotPrice',102,'simulationDates',datetime(2022,9,15))
outPricer = 
  BachelierMonteCarlo with properties:

      DiscountCurve: [1x1 ratecurve]
          SpotPrice: 102
    SimulationDates: 15-Sep-2022
          NumTrials: 1000
      RandomNumbers: []
              Model: [1x1 finmodel.Bachelier]
       DividendType: "continuous"
      DividendValue: 0

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

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

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

       Results: [1x7 table]
    PricerData: [1x1 struct]

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

    113.02      0        0        0       -451.98    3.9582     0  

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

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

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

BinaryOpt = fininstrument("Binary",'ExerciseDate',datetime(2022,9,15),'Strike',1000,'PayoffValue',130,'OptionType',"put",'Name',"binary_option")
BinaryOpt = 
  Binary with properties:

       OptionType: "put"
     ExerciseDate: 15-Sep-2022
           Strike: 1000
      PayoffValue: 130
    ExerciseStyle: "european"
             Name: "binary_option"

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

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

BlackScholesModel = finmodel("BlackScholes",'Volatility',0.28)
BlackScholesModel = 
  BlackScholes with properties:

     Volatility: 0.2800
    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"

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

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

outPricer = finpricer("analytic",'DiscountCurve',myRC,'Model',BlackScholesModel,'SpotPrice',800,'DividendValue',0.045)
outPricer = 
  BlackScholes with properties:

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

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

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

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

       Results: [1x7 table]
    PricerData: []

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

    87.4     -0.075973    -3.1264e-05    -0.6954    -23.084    3.2599    -592.61

Больше о

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

Введенный в R2020b