exponenta event banner

Депозит

Deposit объект прибора

Описание

Создать и оценить Deposit объект инструмента с использованием этого рабочего процесса:

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

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

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

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

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

Создание

Описание

пример

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 (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' и скалярный числовой.

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

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

  • "actual" - Дни, не связанные с бизнесом, фактически игнорируются. Предполагается, что денежные потоки, приходящиеся на нерабочие дни, распределяются на фактическую дату.

  • "follow" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить на следующий рабочий день.

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

  • "previous" - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить в предыдущий рабочий день.

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

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

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

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

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

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

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

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

Базисное число дней, возвращаемое как скалярное целое число.

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

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

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

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

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

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

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

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

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

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

cashflowsВычисляет денежный поток для FixedBond, FloatBond, Swap, 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 pricer object и используйте 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