ConvertibleBond объект прибора
Создать и оценить ConvertibleBond объект инструмента с использованием этого рабочего процесса:
Использовать fininstrument для создания ConvertibleBond объект прибора.
Использовать finmodel для указания BlackScholes модель для ConvertibleBond инструмент.
Использовать finpricer для указания FiniteDifference метод ценообразования для ConvertibleBond инструмент.
Дополнительные сведения об этом потоке операций см. в разделе Начало работы с потоками операций с использованием объектной структуры для расчета цен на финансовые инструменты.
Для получения дополнительной информации о доступных моделях и методах ценообразования для ConvertibleBond см. раздел Выбор приборов, моделей и прайсеров.
создает ConvertibleBondObj = fininstrument(InstrumentType,'CouponRate',couponrate_value,'Maturity',maturity_date,'ConversionRatio',conversion_ratio_value)ConvertibleBond путем указания объекта InstrumentType и задает свойства для необходимых аргументов пары имя-значение CouponRate, Maturity, и ConversionRatio.
задает дополнительные свойства, используя аргументы пары имя-значение в дополнение к требуемым аргументам в предыдущем синтаксисе. Например, ConvertibleBondObj = fininstrument(___,Name,Value)ConvertibleBondObj = fininstrument("ConvertibleBond",'CouponRate',CouponRate, 'Maturity',Maturity,'ConversionRatio',ConvRatio,'Period',Period,'Spread',Spread,'CallSchedule',CallSchedule,'CallExerciseStyle',"american") создает ConvertibleBond инструмент с американским упражнением и расписанием вызовов. Можно указать несколько аргументов пары имя-значение.
InstrumentType - Тип прибора"ConvertibleBond" | символьный вектор со значением 'ConvertibleBond'Тип прибора, указанный как строка со значением "ConvertibleBond" или символьный вектор со значением 'ConvertibleBond'.
Типы данных: char | string
ConvertibleBond Аргументы пары «имя-значение»Укажите требуемые и необязательные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
ConvertibleBondObj = fininstrument("ConvertibleBond",'CouponRate',CouponRate, 'Maturity',Maturity,'ConversionRatio',ConvRatio,'Period',Period,'Spread',Spread,'CallSchedule',CallSchedule,'CallExerciseStyle',"american")ConvertibleBond Аргументы пары «имя-значение»'CouponRate' - Купонная ставка для ConvertibleBond объектКупонная ставка для ConvertibleBond объект, указанный как разделенная запятыми пара, состоящая из 'CouponRate' как скалярное десятичное число для годовой ставки или расписания, где первый столбец - даты, а второй столбец - связанные ставки. Дата указывает последний день, когда действительна ставка купона.
Типы данных: double | timetable
'Maturity' - Дата погашения для ConvertibleBond объектДата погашения для ConvertibleBond объект, указанный как разделенная запятыми пара, состоящая из 'Maturity' и скалярное значение datetime, порядковый номер даты, вектор символов даты или строка даты.
Если используется вектор символов даты или строка даты, формат должен быть распознаваемым по datetime потому что Maturity свойство сохраняется как datetime.
Типы данных: char | double | string | datetime
'ConversionRatio' - Количество акций, конвертируемых из одной облигацииКоличество акций, конвертируемых из одной облигации, указанной как пара, разделенная запятыми, состоящая из 'ConversionRatio' и скалярное число или расписание, где первый столбец - даты, а второй столбец - связанные отношения. Дата в первом столбце указывает последний день действительности коэффициента пересчета.
Типы данных: double | timetable
ConvertibleBond Аргументы пары «имя-значение»'Spread' - количество базисных пунктов по базисной ставке;0 (по умолчанию) | скалярный числовойКоличество базисных точек над эталонной скоростью, указанной как пара, разделенная запятыми, состоящая из 'Spread' и скалярный числовой.
Типы данных: double
'CallSchedule' - Расписание вызовов[ ] (по умолчанию) | расписаниеРасписание вызовов, указанное как пара, разделенная запятыми, состоящая из 'CallSchedule' и расписание дат звонков и забастовок.
Если вы используете вектор символов даты или строку даты для дат в этом расписании, формат должен быть распознан по datetime потому что CallSchedule свойство сохраняется как datetime.
Примечание
Для ConvertibleBond инструмент, вы можете использовать CallSchedule с CallExerciseStyle и PutSchedule с PutExerciseStyle одновременно.
Типы данных: timetable
'CallExerciseStyle' - Стиль упражнения опциона вызова"European" (по умолчанию) | строка со значением "European", "American", или "Bermudan" | символьный вектор со значением 'European', 'American', или 'Bermudan'Стиль упражнения опциона вызова, заданный как разделенная запятыми пара, состоящая из 'CallExerciseStyle' и скалярный строковый или символьный вектор.
Типы данных: string | char
'PutSchedule' - График размещения [ ] (по умолчанию) | расписаниеГрафик размещения, указанный как разделенная запятыми пара, состоящая из 'PutSchedule' и расписание дат звонков и забастовок.
Если вы используете вектор символов даты или строку даты для дат в этом расписании, формат должен быть распознан по datetime потому что PutSchedule свойство сохраняется как datetime.
Примечание
Для него ConvertibleBond инструмент, вы можете использовать CallSchedule с CallExerciseStyle и PutSchedule с PutExerciseStyle одновременно.
Типы данных: timetable
'PutExerciseStyle' - Стиль упражнений Put Option"European" (по умолчанию) | строка со значением "European", "American", или "Bermudan" | символьный вектор со значением 'European', 'American', или 'Bermudan'Стиль упражнения Put option, заданный как разделенная запятыми пара, состоящая из 'PutExerciseStyle' и скалярный строковый или символьный вектор.
Типы данных: string | char
'Period' - Периодичность платежей в год2 (по умолчанию) | целое числоЧастота платежей в год, указанная как разделенная запятыми пара, состоящая из 'Period' и скалярное целое число. Возможные значения для Period являются 1, 2, 3, 4, 6, и 12.
Типы данных: double
'Basis' - База подсчета дней 0 (факт/факт) (по умолчанию) | целое число от 0 кому 13База подсчета дней, указанная как пара, разделенная запятыми, состоящая из 'Basis' и скалярное целое число, используя одно из следующих значений:
0 - фактическое/фактическое
1 - 30/360 (SIA)
2 - фактическое/360
3 - фактическое/365
4 - 30/360 (PSA)
5 - 30/360 (ISDA)
6 - 30/360 (европейский)
7 - фактический/365 (японский)
8 - фактические/фактические (ICMA)
9 - фактические/360 (ICMA)
10 - фактически/365 (ICMA)
11 - 30/360E (ICMA)
12 - фактическое/365 (ISDA)
13 - BUS/252
Дополнительные сведения см. в разделе Базис.
Типы данных: double
'Principal' - Условная основная сумма или график основной стоимости100
(по умолчанию) | скалярное числовое | расписаниеУсловная сумма основного долга или график стоимости основного долга, указанный как пара, разделенная запятыми, состоящая из 'Principal' и скалярное числовое или расписание.
Principal принимает timetable, где первый столбец - даты, а второй столбец - связанное условное основное значение. Дата указывает последний день, когда действительным является основное значение.
Типы данных: double | timetable
'DaycountAdjustedCashFlow' - Флаг, указывающий, корректируется ли денежный поток для соглашения по подсчету днейfalse
(по умолчанию) | значение true или falseФлаг, указывающий, корректируется ли денежный поток для соглашения по подсчету дней, указанного как пара, разделенная запятыми, состоящая из 'DaycountAdjustedCashFlow' и скалярный логический со значением true или false.
Типы данных: logical
'BusinessDayConvention' - Соглашения по рабочим дням"actual"
(по умолчанию) | строка | символьный векторСоглашения о рабочих днях, указанные как пара, разделенная запятыми, состоящая из 'BusinessDayConvention' и скалярный строковый или символьный вектор. Выбор соглашения о рабочих днях определяет, как обрабатываются дни, не связанные с бизнесом. Дни, не связанные с бизнесом, определяются как выходные дни, а также любая другая дата, когда предприятия не открыты (например, официальные праздники). Возможные значения:
"actual" - Дни, не связанные с бизнесом, фактически игнорируются. Предполагается, что денежные потоки, приходящиеся на нерабочие дни, распределяются на фактическую дату.
"follow" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить на следующий рабочий день.
"modifiedfollow" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить на следующий рабочий день. Однако если следующий рабочий день находится в другом месяце, вместо него используется предыдущий рабочий день.
"previous" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить в предыдущий рабочий день.
"modifiedprevious" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить в предыдущий рабочий день. Однако если предыдущий рабочий день находится в другом месяце, вместо него принимается следующий рабочий день.
Типы данных: char | string
'Holidays' - Праздники, используемые в вычислительных рабочих дняхNaT
(по умолчанию) | datetime | массив ячеек векторов символов даты | массив строк даты | серийные номера датПраздники, используемые в вычислительных рабочих днях, указанные как пара, разделенная запятыми, состоящая из 'Holidays' и даты с использованием времени даты, серийных номеров дат, массива ячеек векторов символов даты или массива строк даты. Ниже приведен пример.
H = holidays(datetime('today'),datetime(2025,12,15));
ConvertibleBondObj = fininstrument("ConvertibleBond",'CouponRate',0.34,'Maturity',datetime(2025,12,15),...
'ConversionRatio',ConvRatio,'CallSchedule',schedule,'CallExerciseStyle',"american",'Holidays',H)Типы данных: double | cell | datetime | string
'EndMonthRule' - флаг правила конца месяца для генерации дат, когда Maturity Дата окончания месяца с 30 или менее днямиtrue (в действии) (по умолчанию) | значение true или falseФлаг правила конца месяца для генерации дат при Maturity - дата окончания месяца с 30 или менее днями, указанная как пара, разделенная запятыми, состоящая из 'EndMonthRule' и скалярное логическое значение true или false.
Если установить EndMonthRule кому false, программное обеспечение игнорирует правило, что означает, что дата платежа всегда совпадает с числовым днем месяца.
Если установить EndMonthRule кому true, программа устанавливает правило, означающее, что дата платежа всегда является последним фактическим днем месяца.
Типы данных: logical
'IssueDate' - Дата выпуска облигацийNaT
(по умолчанию) | datetime | серийный номер даты | вектор символов даты | строка датыДата выпуска облигаций, указанная как пара, разделенная запятыми, состоящая из 'IssueDate' и скалярное значение datetime, порядковый номер даты, вектор символов даты или строка даты.
Если используется вектор символов даты или строка даты, формат должен быть распознаваемым по datetime потому что IssueDate свойство сохраняется как datetime.
Типы данных: double | char | string | datetime
'FirstCouponDate' - нерегулярная дата первого купонаNaT
(по умолчанию) | datetime | серийный номер даты | вектор символов даты | строка датыНеправильная дата первого купона, указанная как пара, разделенная запятыми, состоящая из 'FirstCouponDate' и скалярное значение datetime, порядковый номер даты, вектор символов даты или строка даты.
При указании обоих FirstCouponDate и LastCouponDate, FirstCouponDate имеет приоритет при определении структуры купонных выплат. Если не указать FirstCouponDateдаты оплаты денежного потока определяются из других входных данных.
Если используется вектор символов даты или строка даты, формат должен быть распознаваемым по datetime потому что FirstCouponDate свойство сохраняется как datetime.
Типы данных: double | char | string | datetime
'LastCouponDate' - нерегулярная дата последнего купонаNaT
(по умолчанию) | datetime | серийный номер даты | вектор символов даты | строка датыНеправильная дата последнего купона, указанная как пара, разделенная запятыми, состоящая из 'LastCouponDate' и скалярное значение datetime, порядковый номер даты, вектор символов даты или строка даты.
При указании LastCouponDate но не FirstCouponDate, LastCouponDate определяет структуру купона облигации. Купонная структура облигации усечена при LastCouponDateнезависимо от того, куда она попадает, и следует только дата денежного потока погашения облигации. Если не указать LastCouponDateдаты оплаты денежного потока определяются из других входных данных.
Если используется вектор символов даты или строка даты, формат должен быть распознаваемым по datetime потому что LastCouponDate свойство сохраняется как datetime.
Типы данных: double | char | string | datetime
'StartDate' - Форвардная дата начала платежейNaT
(по умолчанию) | datetime | серийный номер даты | вектор символов даты | строка датыПрямая дата начала платежей, указанная как пара, разделенная запятыми, состоящая из 'StartDate' и скалярное значение datetime, порядковый номер даты, вектор символов даты или строка даты.
Если используется вектор символов даты или строка даты, формат должен быть распознаваемым по datetime потому что StartDate свойство сохраняется как datetime.
Типы данных: char | double | string | datetime
'Name' - Определяемое пользователем имя прибора" "
(по умолчанию) | строка | символьный векторОпределяемое пользователем имя прибора, указанное как пара, разделенная запятыми, состоящая из 'Name' и скалярный строковый или символьный вектор.
Типы данных: char | string
CouponRate - Годовая ставка купонаГодовая ставка купона, возвращаемая как скалярное десятичное число или расписание.
Типы данных: double | timetable
Maturity - Дата погашенияДата погашения, возвращенная в качестве даты и времени.
Типы данных: datetime
ConversionRatio - Количество акций, конвертируемых из одной облигацииКоличество акций, конвертируемых из одной облигации, возвращаемое в виде скалярного числа или расписания.
Типы данных: double | timetable
Spread - количество базисных пунктов по базисной ставке;Количество базисных точек над эталонной скоростью, возвращаемое в виде числа.
Типы данных: double
CallSchedule - Расписание вызовов Расписание вызовов, возвращенное в виде расписания.
Типы данных: timetable
PutSchedule - График размещенияПоставьте график, вернули как расписание.
Типы данных: timetable
Period - Купоны в год2 (по умолчанию) | целое числоКупоны в год, возвращаемые как скалярное целое число.
Типы данных: double
Basis - База подсчета дней 0 (факт/факт) (по умолчанию) | целое число от 0 кому 13Базисное число дней, возвращаемое как скалярное целое число.
Типы данных: double
Principal - Условная основная сумма или график основной стоимости100
(по умолчанию) | скалярное числовое | расписаниеУсловная основная сумма или основное значение, возвращаемое как скалярное число или расписание.
Типы данных: timetable | double
DaycountAdjustedCashFlow - Флаг, указывающий, корректируется ли денежный поток для соглашения по подсчету днейfalse
(по умолчанию) | значение true или false
Флаг, указывающий, возвращается ли денежный поток, скорректированный для соглашения о подсчете дней, как скалярный логический со значением true или false.
Типы данных: logical
BusinessDayConvention - Соглашения по рабочим дням"actual"
(по умолчанию) | строкаУсловные обозначения рабочего дня, возвращенные в виде строки
Типы данных: string
Holidays - Праздники, используемые в вычислительных рабочих дняхNaT (по умолчанию) | datetimeПраздники, используемые в вычислительных рабочих днях, возвращенные в качестве дат.
Типы данных: datetime
EndMonthRule - флаг правила конца месяца для генерации дат, когда Maturity Дата окончания месяца с 30 или менее днямиtrue (в действии) (по умолчанию) | значение true или false
Флаг правила конца месяца для генерации дат при Maturity - дата окончания месяца с 30 или менее днями, возвращаемая как скалярная логическая дата.
Типы данных: logical
IssueDate - Дата выпуска облигацийNaT
(по умолчанию) | datetimeДата выпуска облигаций, возвращенная в качестве даты и времени.
Типы данных: datetime
FirstCouponDate - нерегулярная дата первого купонаNaT
(по умолчанию) | datetimeНерегулярная дата первого купона, возвращенная в качестве даты и времени.
Типы данных: datetime
LastCouponDate - нерегулярная дата последнего купонаNaT
(по умолчанию) | datetimeНерегулярная дата последнего купона, возвращенная в качестве даты и времени.
Типы данных: datetime
StartDate - Форвардная дата начала платежейNaT
(по умолчанию) | datetimeДата начала отправки платежей, возвращенная в качестве даты и времени.
Типы данных: datetime
CallExerciseStyle - Стиль упражнения опциона вызова"European" (по умолчанию) | строка со значением "European", "American", или "Bermuda"Это свойство доступно только для чтения.
Стиль упражнения опциона вызова, возвращаемый в виде строки со значением "European", "American", или "Bermuda".
Типы данных: string
PutExerciseStyle - Стиль упражнений Put Option"European" (по умолчанию) | строка со значением "European", "American", или "Bermuda"Это свойство доступно только для чтения.
Стиль упражнения Put option, возвращаемый в виде строки со значением "European", "American", или "Bermuda".
Типы данных: string
Name - Определяемое пользователем имя прибора" "
(по умолчанию) | строкаОпределяемое пользователем имя инструмента, возвращаемое в виде строки.
Типы данных: string
setCallExercisePolicy | Установка политики упражнений вызова для OptionEmbeddedFixedBond, OptionEmbeddedFloatBond, или ConvertibleBond инструмент |
setPutExercisePolicy | Задать политику упражнений put для OptionEmbeddedFixedBond, OptionEmbeddedFloatBond, или ConvertibleBond инструмент |
В этом примере показан поток операций для оценки ConvertibleBond инструмент при использовании BlackScholes модель и FiniteDifference способ ценообразования.
Создать ConvertibleBond Объект КИП
Использовать fininstrument для создания ConvertibleBond объект прибора.
CouponRate = 0; Maturity = datetime(2014,10,1); ConvRatio = 2; Period = 1; Spread = 0.05; CallExDates = datetime(2014,10,1); CallStrike = 115; CallSchedule = timetable(CallExDates, CallStrike); ConvBond = fininstrument("ConvertibleBond",'CouponRate',CouponRate,'Maturity',Maturity,'ConversionRatio',ConvRatio,'Period',Period,'Spread',Spread,'CallSchedule',CallSchedule,'CallExercisestyle',"american",'Name',"Convertible_Bond")
ConvBond =
ConvertibleBond with properties:
CouponRate: 0
ConversionRatio: 2
Spread: 0.0500
Period: 1
Basis: 0
EndMonthRule: 1
Principal: 100
DaycountAdjustedCashFlow: 0
BusinessDayConvention: "actual"
Holidays: NaT
Maturity: 01-Oct-2014
IssueDate: NaT
FirstCouponDate: NaT
LastCouponDate: NaT
StartDate: NaT
CallSchedule: [1x1 timetable]
PutSchedule: [0x0 timetable]
CallExerciseStyle: "american"
PutExerciseStyle: [0x0 string]
Name: "Convertible_Bond"
Создать BlackScholes Объект модели
Использовать finmodel для создания BlackScholes объект модели.
AssetPrice = 50; Volatility = 0.3; BSModel = finmodel("BlackScholes",'Volatility',Volatility)
BSModel =
BlackScholes with properties:
Volatility: 0.3000
Correlation: 1
Создать ratecurve Объект
Создать ratecurve объект с использованием ratecurve.
StartDate = datetime(2014,1,1); EndDate = datetime(2015,1,1); Rate = 0.1; ZeroCurve = ratecurve('zero',StartDate,EndDate,Rate,'Compounding',-1,'Basis',1)
ZeroCurve =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 1
Dates: 01-Jan-2015
Rates: 0.1000
Settle: 01-Jan-2014
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создать FiniteDifference Объект прайсера
Использовать finpricer для создания FiniteDifference pricer object и используйте ratecurve объект для 'DiscountCurve' аргумент пары имя-значение.
outPricer = finpricer("FiniteDifference",'Model',BSModel,'SpotPrice',AssetPrice,'DiscountCurve',ZeroCurve)
outPricer =
FiniteDifference with properties:
DiscountCurve: [1x1 ratecurve]
Model: [1x1 finmodel.BlackScholes]
SpotPrice: 50
GridProperties: [1x1 struct]
DividendType: "continuous"
DividendValue: 0
Цена ConvertibleBond Инструмент
Использовать price для расчета цены и чувствительности для ConvertibleBond инструмент.
[Price, outPR] = price(outPricer,ConvBond,"all")Price = 104.3812
outPR =
priceresult with properties:
Results: [1x7 table]
PricerData: [1x1 struct]
outPR.Results
ans=1×7 table
Price Delta Gamma Lambda Theta Rho Vega
______ ______ _______ _______ _______ _______ ______
104.38 1.3012 0.04195 0.62329 0.72984 -21.883 17.947
Конвертируемая облигация - это финансовый инструмент, сочетающий особенности собственного капитала и долга.
Конвертируемая облигация - это облигация со встроенным опционом для превращения ее в фиксированное количество акций. Держатель конвертируемой облигации имеет право, но не обязательство, обменять конвертируемое обеспечение на заранее определенное количество акций по предварительно установленной цене. Компонент долга определяется на основе купонных выплат и основной суммы долга. Компонент собственного капитала обеспечивается функцией преобразования.
Конвертируемые облигации имеют несколько определяющих признаков:
Купон - Купоны в конвертируемых облигациях, как правило, ниже, чем купоны в ванильных облигациях, поскольку инвесторы готовы взять более низкий купон за возможность участвовать в акциях компании посредством конвертации.
Срок погашения - большинство конвертируемых облигаций выпущено с длительными сроками погашения. Конвертируемые облигации с краткосрочным погашением обычно не имеют пущенных или пущенных резервов.
Коэффициент конвертации - коэффициент конверсии - это количество акций, которое владелец конвертируемой облигации получает от реализации опциона колл конвертируемой облигации. Коэффициент пересчета представляет собой номинальную стоимость конвертируемой облигации, деленную на конверсионную цену собственного капитала.
Например, коэффициент конверсии 25 означает, что облигация может быть обменена на 25 акций акций. Это также подразумевает конверсионную цену в размере 40 долл. США (1000/25). Это, 40 долларов, цена, по которой владелец купил бы акции. Это может быть выражено в виде соотношения или в виде конверсионной цены и указано в контракте наряду с другими положениями.
Тип опции:
Callable convertible - конвертируемая облигация, вызываемая эмитентом. Эмитент облигационных сил, устраняющих преимущество, заключающееся в том, что конвертация осуществляется по усмотрению держателя облигаций. При обращении держатель облигаций может либо конвертировать облигацию, либо погашать облигацию по цене обращения. Этот вариант позволяет эмитенту контролировать цену конвертируемой облигации и при необходимости рефинансировать долг новой, более дешевой облигацией.
Puttable convertible: конвертируемая облигация с функцией put, которая позволяет держателю облигаций продать облигацию с премией на определенную дату. Этот вариант защищает владельца от роста процентных ставок, сокращая год до срока погашения.
После создания ConvertibleBond , можно изменить CallSchedule и CallExerciseStyle использование setCallExercisePolicy. Вы можете изменить PutSchedule и PutExerciseStyle значения с использованием setPutExercisePolicy.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.