Вычислите потоки наличности для YearYearInflationSwap
инструмент
вычисляет потоки наличности для outCF
= inflationCashflows(inpInstrumentObject
,Settle
,inpInflationCurve
)YearYearInflationSwap
инструментальный объект.
inflationcurve
и калькулятор цен инфляции и вычисляет потоки наличностиЭтот пример показывает рабочий процесс, чтобы оценить YearYearInflationSwap
инструмент, когда вы используете inflationcurve
возразите и Inflation
метод ценообразования. Затем используйте inflationCashflows
вычислить потоки наличности для YearYearInflationSwap
инструмент.
Создайте ratecurve
Объект
Создайте ratecurve
объект с помощью ratecurve
.
Settle = datetime(2021,1,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; ZeroCurve = ratecurve('zero',Settle,ZeroDates,ZeroRates)
ZeroCurve = ratecurve with properties: Type: "zero" Compounding: -1 Basis: 0 Dates: [10x1 datetime] Rates: [10x1 double] Settle: 15-Jan-2021 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"
Создайте inflationcurve
Объект
Создайте inflationcurve
объект с помощью inflationcurve
.
BaseDate = datetime(2020,10,1); InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]'; InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]'; InflationDates = BaseDate + InflationTimes; myInflationCurve = inflationcurve(InflationDates,InflationIndexValues)
myInflationCurve = inflationcurve with properties: Basis: 0 Dates: [10x1 datetime] InflationIndexValues: [10x1 double] ForwardInflationRates: [9x1 double] Seasonality: [12x1 double]
Создайте YearYearInflationSwap
Инструментальный объект
Используйте fininstrument
создать YearYearInflationSwap
инструментальный объект.
Maturity = datetime(2025,1,1); FixedInflationRate = 0.015; Notional = 2000; YYInflationSwap = fininstrument("YearYearInflationSwap",'Maturity',Maturity,'FixedInflationRate',FixedInflationRate,'Notional',Notional,'Name',"YYInflationSwap_instrument")
YYInflationSwap = YearYearInflationSwap with properties: Notional: 2000 FixedInflationRate: 0.0150 Basis: 0 Lag: 3 Maturity: 01-Jan-2025 Name: "YYInflationSwap_instrument"
Создайте Inflation
Объект калькулятора цен
Используйте finpricer
создать Inflation
объект калькулятора цен и использование ratecurve
объект с 'DiscountCurve'
аргумент пары "имя-значение" и inflationcurve
объект с 'InflationCurve'
аргумент пары "имя-значение".
outPricer = finpricer("Inflation",'DiscountCurve',ZeroCurve,'InflationCurve',myInflationCurve)
outPricer = Inflation with properties: DiscountCurve: [1x1 ratecurve] InflationCurve: [1x1 inflationcurve]
Цена YearYearInflationSwap
Инструмент
Используйте price
вычислить цену и чувствительность для YearYearInflationSwap
инструмент.
[Price,outPR] = price(outPricer,YYInflationSwap,"all")
Price = 12.5035
outPR = priceresult with properties: Results: [1x1 table] PricerData: []
outPR.Results
ans=table
Price
______
12.504
Вычислите потоки наличности для YearYearInflationSwap
Инструмент
Используйте inflationCashflows
вычислить потоки наличности для YearYearInflationSwap
инструмент.
outCF = inflationCashflows(YYInflationSwap,datetime(2021,1,15),myInflationCurve)
outCF=4×2 timetable
Time Var1 Var2
___________ ____ ______
01-Jan-2022 -30 40
01-Jan-2023 -30 29.412
01-Jan-2024 -30 28.986
01-Jan-2025 -30 34.286
inflationcurve
и калькулятор цен инфляции и вычисляет потоки наличностиЭтот пример показывает рабочий процесс, чтобы оценить несколько YearYearInflationSwap
инструмент, когда вы используете inflationcurve
возразите и Inflation
метод ценообразования. Затем используйте inflationCashflows
вычислить потоки наличности для YearYearInflationSwap
инструменты.
Создайте ratecurve
Объект
Создайте ratecurve
объект с помощью ratecurve
.
Settle = datetime(2021,1,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; ZeroCurve = ratecurve('zero',Settle,ZeroDates,ZeroRates)
ZeroCurve = ratecurve with properties: Type: "zero" Compounding: -1 Basis: 0 Dates: [10x1 datetime] Rates: [10x1 double] Settle: 15-Jan-2021 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"
Создайте inflationcurve
Объект
Создайте inflationcurve
объект с помощью inflationcurve
.
BaseDate = datetime(2019,10,1); InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]'; InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]'; InflationDates = BaseDate + InflationTimes; myInflationCurve = inflationcurve(InflationDates,InflationIndexValues)
myInflationCurve = inflationcurve with properties: Basis: 0 Dates: [10x1 datetime] InflationIndexValues: [10x1 double] ForwardInflationRates: [9x1 double] Seasonality: [12x1 double]
Создайте YearYearInflationSwap
Инструментальный объект
Используйте fininstrument
создать YearYearInflationSwap
инструментальный объект для трех Индексированных Инфляцией инструментов Подкачки В годовом исчислении.
Maturity = datetime([2024,1,1 ; 2024,11,1 ; 2024,12,1]); FixedInflationRate = 0.015; Notional = [20000 ; 30000 ; 40000]; YYInflationSwap = fininstrument("YearYearInflationSwap",'Maturity',Maturity,'FixedInflationRate',FixedInflationRate,'Notional',Notional,'Name',"YYInflationSwap_instrument")
YYInflationSwap=3×1 object
3x1 YearYearInflationSwap array with properties:
Notional
FixedInflationRate
Basis
Lag
Maturity
Name
Создайте Inflation
Объект калькулятора цен
Используйте finpricer
создать Inflation
объект калькулятора цен и использование ratecurve
объект с 'DiscountCurve'
аргумент пары "имя-значение" и inflationcurve
объект с 'InflationCurve'
аргумент пары "имя-значение".
outPricer = finpricer("Inflation",'DiscountCurve',ZeroCurve,'InflationCurve',myInflationCurve)
outPricer = Inflation with properties: DiscountCurve: [1x1 ratecurve] InflationCurve: [1x1 inflationcurve]
Цена YearYearInflationSwap
Инструменты
Используйте price
вычислить цены и чувствительность для YearYearInflationSwap
инструменты.
[Price,outPR] = price(outPricer,YYInflationSwap,"all")
Price = 3×1
26.0701
18.1540
1.3201
outPR=1×3 object
1x3 priceresult array with properties:
Results
PricerData
outPR.Results
ans=table
Price
_____
26.07
ans=table
Price
______
18.154
ans=table
Price
______
1.3201
Вычислите потоки наличности для YearYearInflationSwap
Инструменты
Используйте inflationCashflows
вычислить потоки наличности для YearYearInflationSwap
инструменты.
outCF = inflationCashflows(YYInflationSwap(1),datetime(2021,1,15),myInflationCurve)
outCF=3×2 timetable
Time Var1 Var2
___________ ____ ______
01-Jan-2022 -300 294.12
01-Jan-2023 -300 289.86
01-Jan-2024 -300 342.86
outCF = inflationCashflows(YYInflationSwap(2),datetime(2021,1,15),myInflationCurve)
outCF=4×2 timetable
Time Var1 Var2
___________ ____ ______
01-Nov-2021 -450 467.39
01-Nov-2022 -450 435.85
01-Nov-2023 -450 500.98
01-Nov-2024 -450 413.63
outCF = inflationCashflows(YYInflationSwap(3),datetime(2021,1,15),myInflationCurve)
outCF=4×2 timetable
Time Var1 Var2
___________ ____ ______
01-Dec-2021 -600 605.42
01-Dec-2022 -600 580.41
01-Dec-2023 -600 676.99
01-Dec-2024 -600 537.7
inpInstrumentObject
— Объект InstrumentYearYearInflationSwap
объектИнструментальный объект, заданное использование ранее созданного инструмента возражает для YearYearInflationSwap
.
Примечание
Если inpInstrumentObject
вектор из инструментов, необходимо использовать inflationCashflows
отдельно с каждым инструментом.
Типы данных: object
Settle
— Расчетный день для инструментального потока наличностиРасчетный день для инструментального потока наличности в виде скаляра с помощью datetime, последовательного номера даты, вектора символов даты или строки даты.
Примечание
Settle
дата, которую вы задаете, должна быть перед Maturity
дата YearYearInflationSwap
инструмент.
Типы данных: double |
char
| datetime
| string
inpInflationCurve
— Кривая инфляцииinflationcurve
объектКривая инфляции, заданное использование ранее созданной инфляции изгибает объект с помощью inflationcurve
.
Типы данных: object
outCF
— Выведите поток наличностиВыведите поток наличности, возвращенный как расписание.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.