setCallExercisePolicy

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

Описание

пример

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

Примеры

свернуть все

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

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

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

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

CallableBond = fininstrument("OptionEmbeddedFixedBond",'Maturity',Maturity,...
                              'CouponRate',0.025,'Period',Period, ...
                              'CallSchedule',CallSchedule)
CallableBond = 
  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: [2x1 datetime]
                    PutDates: [0x1 datetime]
                CallSchedule: [2x1 timetable]
                 PutSchedule: [0x0 timetable]
           CallExerciseStyle: "american"
            PutExerciseStyle: [0x0 string]
                        Name: ""

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

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

CallableBond = setCallExercisePolicy(CallableBond, CallSchedule, "Bermudan") 
CallableBond = 
  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: [2x1 datetime]
                    PutDates: [0x1 datetime]
                CallSchedule: [2x1 timetable]
                 PutSchedule: [0x0 timetable]
           CallExerciseStyle: "bermudan"
            PutExerciseStyle: [0x0 string]
                        Name: ""

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

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

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

CallableBond = setCallExercisePolicy(CallableBond, CallSchedule)   
CallableBond = 
  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: [4x1 datetime]
                    PutDates: [0x1 datetime]
                CallSchedule: [4x1 timetable]
                 PutSchedule: [0x0 timetable]
           CallExerciseStyle: "bermudan"
            PutExerciseStyle: [0x0 string]
                        Name: ""

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

свернуть все

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

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

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

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

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

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

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

свернуть все

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

Введенный в R2020b