instrangefloat

Construct range note instrument

Syntax

ISet = instrangefloat(Spread,Settle,Maturity,RateSched,
Reset,Basis,Principal,EndMonthRule)

Description

ISet = instrangefloat(Spread,Settle,Maturity,RateSched,
Reset,Basis,Principal,EndMonthRule)
creates a new range instrument from data arrays.

Input Arguments

Spread

Number of basis points over the reference rate.

Settle

NINST-by-1 vector of dates representing the settle date of the floating-rate note.

Maturity

NINST-by-1 vector of dates representing the maturity date of the floating-rate note.

RateSched

NINST-by-1 vector of structures representing the range of rates within which cash flows are nonzero. Each element of the structure array contains two fields:

  • RateSched.DatesNDates-by-1 cell array of dates corresponding to the range schedule.

  • RateSched.RatesNDates-by-2 array with the first column containing the lower bound of the range and the second column containing the upper bound of the range. Cash flow for date RateSched.Dates(n) is nonzero for rates in the range RateSched.Rates(n,1) < Rate < RateSched.Rate (n,2).

Reset

(Optional) NINST-by-1 vector representing the frequency of payments per year.

Default: 1

Basis

(Optional) Day-count basis of the instrument. A vector of integers.

  • 0 = actual/actual

  • 1 = 30/360 (SIA)

  • 2 = actual/360

  • 3 = actual/365

  • 4 = 30/360 (BMA)

  • 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/actual (ISDA)

  • 13 = BUS/252

For more information, see basis.

Default: 0 (actual/actual)

Principal

(Optional) NINST-by-1 vector of the notional principal amount.

Default: 100

EndMonthRule

(Optional) NINST-by-1 vector for end-of-month rule. Values are 1 (in effect) and 0 (not in effect).

Default: 1 (in effect)

    Note:   Data arguments are number of instruments NINST-by-1 vectors, scalar, or empty. Fill unspecified entries in vectors with NaN. Only one data argument is required to create the instrument. You can omit or pass the others as empty matrices []. However, you cannot price the instrument when using the range note pricing function if you are missing any of the required input arguments.

Output Arguments

ISet

Variable containing a collection of instruments. Instruments are divided by type and each type can have different data fields. Each stored data field has a row vector or string for each instrument. Values are:

  • FieldListNFIELDS-by-1 cell array of strings listing the name of each data field for this instrument type.

  • ClassListNFIELDS-by-1 cell array of strings listing the data class of each field. The class determines how arguments are parsed. Valid strings are'dble', 'date', and 'char'.

  • TypeString — String specifying the type of instrument added. TypeString = 'RangeFloat'.

For more information, on ISet see instget.

Examples

expand all

Create a Range Note Instrument

Create an instrument portfolio with a range note.

Spread = 100;
Settle = 'Jan-1-2011';
Maturity = 'Jan-1-2014';

RateSched.Dates = {'Jan-1-2012'; 'Jan-1-2013'  ; 'Jan-1-2014'};
RateSched.Rates  = [0.045 0.055; 0.0525  0.0675; 0.06 0.08];

% Create InstSet
InstSet = instrangefloat(Spread, Settle, Maturity, RateSched);

% Display the portfolio instrument
instdisp(InstSet)
Index Type       Spread Settle         Maturity       RateSched FloatReset Basis Principal EndMonthRule
1     RangeFloat 100    01-Jan-2011    01-Jan-2014    [Struct]  1          0     100       1           
 

Add a second range note instrument to the portfolio. Second Range Note:

Spread2 = 200;
Settle2 = 'Jan-1-2011';
Maturity2 = 'Jan-1-2013';
RateSched2.Dates = {'Jan-1-2012'; 'Jan-1-2013'};
RateSched2.Rates  = [0.048 0.059; 0.055  0.068];

InstSet = instrangefloat(InstSet, Spread2, Settle2, Maturity2, RateSched2);

% Display the portfolio instrument
instdisp(InstSet)
Index Type       Spread Settle         Maturity       RateSched FloatReset Basis Principal EndMonthRule
1     RangeFloat 100    01-Jan-2011    01-Jan-2014    [Struct]  1          0     100       1           
2     RangeFloat 200    01-Jan-2011    01-Jan-2013    [Struct]  1          0     100       1           
 

More About

expand all

Range Note Instrument

A range note is a structured (market-linked) security whose coupon rate is equal to the reference rate as long as the reference rate is within a certain range. If the reference rate is outside of the range, the coupon rate is 0 for that period. This type of instrument entitles the holder to cash flows that depend on the level of some reference interest rate and are floored to be positive. The note holder gets directs exposure to the reference rate. In return for the drawback that no interest will be paid for the time the range is left, they offer higher coupon rates than comparable standard products, like vanilla floating notes.

References

Jarrow, Robert, Modelling Fixed Income Securities and Interest Rate Options, Stanford Economics and Finance, 2nd edition, 2002.

Was this topic helpful?