Main Content

instfloat

Construct floating-rate instrument

Description

example

InstSet = instfloat(Spread,Settle,Maturity) creates a new instrument set containing Float instruments.

example

InstSet = instfloat(InstSet,Spread,Settle,Maturity) adds Float instruments to an existing instrument set.

example

InstSet = instfloat(___,FloatReset,Basis,Principal,EndMonthRule,CapRate,FloorRate) adds optional arguments.

example

[FieldList,ClassList,TypeString] = instfixed lists field meta-data for the Float instrument.

Examples

collapse all

Define the characteristics of the floating-rate instrument.

Spread = 2;
Settle = datetime(2013,3,15);
Maturity = datetime(2013,3,18);
FloatReset = 4;
Basis = 1;
Principal = 1000;
EndMonthRule = 1;
CapRate = 0.35;
FloorRate = 0.27;

Create the new floating-rate instrument.

ISet = instfloat(Spread, Settle, Maturity, FloatReset, Basis, Principal, ...
EndMonthRule, CapRate, FloorRate)
ISet = struct with fields:
        FinObj: 'Instruments'
    IndexTable: [1x1 struct]
          Type: {'Float'}
     FieldName: {{9x1 cell}}
    FieldClass: {{9x1 cell}}
     FieldData: {{9x1 cell}}

Display the floating-rate instrument.

instdisp(ISet)
Index Type  Spread Settle         Maturity       FloatReset Basis Principal EndMonthRule CapRate FloorRate
1     Float 2      15-Mar-2013    18-Mar-2013    4          1     1000      1            0.35    0.27     
 

Input Arguments

collapse all

Instrument variable, specified only when adding Float instruments to an existing instrument set. For more information on the InstSet variable, see instget.

Data Types: struct

Number of basis points over the reference rate, specified as a scalar or an NINST-by-1 vector.

Data Types: double

Settlement date, specified as a scalar or an NINST-by-1 vector using a datetime array, string array, or date character vectors.

To support existing code, instfloat also accepts serial date numbers as inputs, but they are not recommended.

Maturity date, specified as a scalar or an NINST-by-1 vector using a datetime array, string array, or date character vectors representing the maturity date for each floating-rate note.

To support existing code, instfloat also accepts serial date numbers as inputs, but they are not recommended.

(Optional) Frequency of payments per year, specified as a scalar or an NINST-by-1 vector.

Data Types: double

(Optional) Day count basis, specified as a scalar or an NINST-by-1 vector.

  • 0 = actual/actual

  • 1 = 30/360 (SIA)

  • 2 = actual/360

  • 3 = actual/365

  • 4 = 30/360 (PSA)

  • 5 = 30/360 (ISDA)

  • 6 = 30/360 (European)

  • 7 = actual/365 (Japanese)

  • 8 = actual/actual (ICMA)

  • 9 = actual/360 (ICMA)

  • 10 = actual/365 (ICMA)

  • 11 = 30/360E (ICMA)

  • 12 = actual/365 (ISDA)

  • 13 = BUS/252

For more information, see Basis.

Data Types: double

(Optional) Notional principal amounts, specified as a scalar, vector, or cell array.

Principal accepts a NINST-by-1 vector or NINST-by-1 cell array, where each element of the cell array is a NumDates-by-2 cell array and the first column is dates and the second column is its associated notional principal value. The date indicates the last day that the principal value is valid.

Data Types: cell | double

(Optional) End-of-month rule flag for generating dates when Maturity is an end-of-month date for a month having 30 or fewer days, specified a scalar nonnegative integer 0 or 1 or an NINST-by-1 vector.

  • 0 = Ignore rule, meaning that a payment date is always the same numerical day of the month.

  • 1 = Set rule on, meaning that a payment date is always the last actual day of the month.

Data Types: logical

(Optional) Annual cap rate, specified as a scalar or an NINST-by-1 decimal annual rate or NINST-by-1 cell array, where each element is a NumDates-by-2 cell array, and the cell array first column is dates, and the second column is associated cap rates. The date indicates the last day that the cap rate is valid.

Data Types: double | cell

(Optional) Annual floor rate, specified as a scalar or an NINST-by-1 decimal annual rate or NINST-by-1 cell array, where each element is a NumDates-by-2 cell array, and the cell array first column is dates, and the second column is associated floor rates. The date indicates the last day that the floor rate is valid.

Data Types: double | cell

Output Arguments

collapse all

Variable containing a collection of instruments, returned as a structure. Instruments are broken down by type and each type can have different data fields. Each stored data field has a row vector or string for each instrument. For more information on the InstSet variable, see instget.

Name of each data field for a Float instrument, returned as an NFIELDS-by-1 cell array of character vectors.

Data class for each field, returned as an NFIELDS-by-1 cell array of character vectors. The class determines how arguments are parsed. Valid character vectors are 'dble', 'date', and 'char'.

Type of instrument, returned as a character vector. For a Float instrument, TypeString = 'Float'.

More About

collapse all

Floating-Rate Note

A floating-rate note is a security like a bond, but the interest rate of the note is reset periodically, relative to a reference index rate, to reflect fluctuations in market interest rates.

Version History

Introduced in R2012b

expand all