setPutExercisePolicy

Установите политику упражнений put для OptionEmbeddedFixedBond, OptionEmbeddedFloatBond, или ConvertibleBond инструмент

Описание

пример

UpdatedInstrumentObject = setPutExercisePolicy(InstrumentObject,exerciseSchedule,exerciseStyle) устанавливает политику put example для OptionEmbeddedFixedBond, OptionEmbeddedFloatBond, или ConvertibleBond прибора.

Примеры

свернуть все

В этом примере показано, как использовать setPutExercisePolicy сохранение непротиворечивости между расписанием упражнений и стилем упражнений при использовании OptionEmbeddedFixedBond объект прибора.

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

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

Maturity = datetime(2024,1,1);
Strike = [100;100];
ExerciseDates = [datetime(2020,1,1); datetime(2024,1,1)];
Period = 1;
PutSchedule =  timetable(ExerciseDates,Strike,'VariableNames',{'Strike Schedule'}); 

PuttableBond = fininstrument("OptionEmbeddedFixedBond",'Maturity',Maturity,...
                              'CouponRate',0.025,'Period',Period, ...
                              'PutSchedule',PutSchedule)
PuttableBond = 
  OptionEmbeddedFixedBond with properties:

                  CouponRate: 0.0250
                      Period: 1
                       Basis: 0
                EndMonthRule: 1
                   Principal: 100
    DaycountAdjustedCashFlow: 0
       BusinessDayConvention: "actual"
                    Holidays: NaT
                   IssueDate: NaT
             FirstCouponDate: NaT
              LastCouponDate: NaT
                   StartDate: NaT
                    Maturity: 01-Jan-2024
                   CallDates: [0x1 datetime]
                    PutDates: [2x1 datetime]
                CallSchedule: [0x0 timetable]
                 PutSchedule: [2x1 timetable]
           CallExerciseStyle: [0x0 string]
            PutExerciseStyle: "american"
                        Name: ""

Установите стиль упражнения на Бермудские острова

Использование setPutExercisePolicy для определения PutExerciseStyle как Bermudan.

PuttableBond = setPutExercisePolicy(PuttableBond, PutSchedule, "Bermudan") 
PuttableBond = 
  OptionEmbeddedFixedBond with properties:

                  CouponRate: 0.0250
                      Period: 1
                       Basis: 0
                EndMonthRule: 1
                   Principal: 100
    DaycountAdjustedCashFlow: 0
       BusinessDayConvention: "actual"
                    Holidays: NaT
                   IssueDate: NaT
             FirstCouponDate: NaT
              LastCouponDate: NaT
                   StartDate: NaT
                    Maturity: 01-Jan-2024
                   CallDates: [0x1 datetime]
                    PutDates: [2x1 datetime]
                CallSchedule: [0x0 timetable]
                 PutSchedule: [2x1 timetable]
           CallExerciseStyle: [0x0 string]
            PutExerciseStyle: "bermudan"
                        Name: ""

Использование setPutExercisePolicy для изменения PutSchedule и продолжить использование бермудского стиля упражнений.

Strike = [100; 101;102;103];
ExerciseDates = [datetime(2018,1,1);datetime(2020,1,1);datetime(2022,1,1);datetime(2024,1,1)];

PutSchedule =  timetable(ExerciseDates,Strike,'VariableNames',{'Strike Schedule'}); 

PuttableBond = setPutExercisePolicy(PuttableBond, PutSchedule)   
PuttableBond = 
  OptionEmbeddedFixedBond with properties:

                  CouponRate: 0.0250
                      Period: 1
                       Basis: 0
                EndMonthRule: 1
                   Principal: 100
    DaycountAdjustedCashFlow: 0
       BusinessDayConvention: "actual"
                    Holidays: NaT
                   IssueDate: NaT
             FirstCouponDate: NaT
              LastCouponDate: NaT
                   StartDate: NaT
                    Maturity: 01-Jan-2024
                   CallDates: [0x1 datetime]
                    PutDates: [4x1 datetime]
                CallSchedule: [0x0 timetable]
                 PutSchedule: [4x1 timetable]
           CallExerciseStyle: [0x0 string]
            PutExerciseStyle: "bermudan"
                        Name: ""

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

свернуть все

Объект инструмента, заданный с помощью ранее созданного OptionEmbeddedFixedBond, OptionEmbeddedFloatBond, или ConvertibleBond объект прибора.

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

Поставьте расписание упражнений, заданное как расписание. Расписание должно содержать оба exerciseDate значение и Strike информацию.

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

Поместите стиль упражнения опции, заданный как скалярная строка или вектор символов.

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

Выходные аргументы

свернуть все

Обновленный инструмент, возвращенный как объект.

Введенный в R2020b