Deposit

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

Описание

Создайте и оцените Deposit инструментальный объект, использующий этот рабочий процесс:

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

  2. Используйте ratecurve задавать модель процентной ставки для Deposit инструмент.

  3. Использование finpricer задавать Discount метод ценообразования для Deposit инструмент.

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

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

Создание

Описание

пример

DepositObj = fininstrument(InstrumentType,'Maturity',maturity_date,'Rate',rate_value) создает Deposit объект путем определения InstrumentType и устанавливает свойства для необходимых аргументов пары "имя-значение" Maturity и Rate.

пример

DepositObj = fininstrument(___,Name,Value) устанавливает дополнительные свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, DepositObj = fininstrument("Deposit",'Maturity',datetime(2019,1,30),'Rate',0.027,'Period',2,'Basis',1,'Principal',100,'BusinessDayConvention',"follow",'Name',"deposit_instrument") создает Deposit инструмент с процентной ставкой.027 и зрелость от 30 января 2019. Можно задать несколько аргументов пары "имя-значение".

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

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

Инструментальный тип в виде строки со значением "Deposit" или вектор символов со значением 'Deposit'.

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

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

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

Пример: DepositObj = fininstrument("Deposit",'Maturity',datetime(2019,1,30),'Rate',0.027,'Period',2,'Basis',1,'Principal',100,'BusinessDayConvention',"follow",'Name',"deposit_instrument")
Необходимый Deposit Аргументы в виде пар имя-значение

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

Дата погашения в виде разделенной запятой пары, состоящей из 'Maturity' и datetime, последовательный номер даты, вектор символов даты или строка даты.

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

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

Внесите процентную ставку в виде разделенной запятой пары, состоящей из 'Rate' и скалярное десятичное число.

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

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

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

Частота платежей в год в виде разделенной запятой пары, состоящей из 'Period' и скалярное целое число. Значения для Period : 0, 1, 2, 3, 4, 6, или 12.

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

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

  • 0 — фактический/фактический

  • 1 — 30/360 (СИА)

  • 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 — ШИНА/252

Для получения дополнительной информации смотрите Базис.

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

Основная сумма в виде разделенной запятой пары, состоящей из 'Principal' и числовой скаляр.

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

Соглашение рабочего дня в виде разделенной запятой пары, состоящей из 'BusinessDayConvention' и строка или вектор символов. Выбор для соглашения рабочего дня определяет, как обработаны нерабочие дни. Нерабочие дни заданы как выходные плюс любая другая дата, что компании не открыты (например, установленные законом праздники). Значения:

  • "actual" — Нерабочие дни эффективно проигнорированы. Потоки наличности, которые падают в нерабочие дни, приняты, чтобы быть распределенными в фактическую дату.

  • "follow" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день.

  • "modifiedfollow" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день. Однако, если следующий рабочий день находится в различном месяце, предыдущий рабочий день принят вместо этого.

  • "previous" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день.

  • "modifiedprevious" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день. Однако, если предыдущий рабочий день находится в различном месяце, следующий рабочий день принят вместо этого.

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

Праздники, используемые в вычислении рабочих дней в виде разделенной запятой пары, состоящей из 'Holidays' и даты с помощью datetimes, последовательные числа даты, массив ячеек векторов символов даты или массив строки даты. Например:

H = holidays(datetime('today'),datetime(2025,12,15));
DepositObj = fininstrument("deposit",'Maturity',datetime(2025,12,15),'Rate',0.027,'Holidays',H)

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

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

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

Свойства

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

Дата погашения, возвращенная как datetime.

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

Внесите процентную ставку, возвращенную как скалярное десятичное число.

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

Частота платежей в год, возвращенный как скалярное целое число.

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

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

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

Основная сумма, возвращенная как числовой скаляр.

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

Соглашение рабочего дня, возвращенное как строка.

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

Праздники используются в вычислении рабочих дней, возвращенных как datetimes.

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

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

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

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

cashflowsВычисляет поток наличности для FixedBond, FloatBondподкачка, FRA, или Deposit инструмент

Примеры

свернуть все

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

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

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

DepositObj = fininstrument("Deposit",'Maturity',datetime(2019,3,15),'Rate',0.0195,'Period',2,'Basis',1,'Principal',100,'Name',"deposit_instrument")
DepositObj = 
  Deposit with properties:

                     Rate: 0.0195
                   Period: 2
                    Basis: 1
                 Maturity: 15-Mar-2019
                Principal: 100
    BusinessDayConvention: "actual"
                 Holidays: NaT
                     Name: "deposit_instrument"

Создайте ratecurve Объект

Создайте ratecurve объект с помощью ratecurve.

Settle = datetime(2018,9,15);
Type = 'zero';
ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';
ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';
ZeroDates = Settle + ZeroTimes;
 
myRC = ratecurve('zero',Settle,ZeroDates,ZeroRates)
myRC = 
  ratecurve with properties:

                 Type: "zero"
          Compounding: -1
                Basis: 0
                Dates: [10x1 datetime]
                Rates: [10x1 double]
               Settle: 15-Sep-2018
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

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

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

outPricer = finpricer("Discount", 'DiscountCurve',myRC)
outPricer = 
  Discount with properties:

    DiscountCurve: [1x1 ratecurve]

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

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

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

       Results: [1x2 table]
    PricerData: []

outPR.Results
ans=1×2 table
     Price        DV01   
    _______    __________

    0.97249    4.8225e-05

Больше о

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

Введенный в R2020a