Documentation Center

  • 評価版
  • 製品アップデート

instoptfloat

Create option instrument on floating-rate note or add instrument to current portfolio

Syntax

  • InstSet = instoptfloat(FloatIndex,OptSpec,Strike,ExerciseDates) example
  • InstSet = instoptfloat(FloatIndex,OptSpec,Strike,ExerciseDates,AmericanOpt) example
  • InstSet = instoptfloat(InstSetOld,___)
  • [FieldList,ClassList,TypeString] = instoptfloat

Description

example

InstSet = instoptfloat(FloatIndex,OptSpec,Strike,ExerciseDates) to specify an European option for a floating-rate note.

example

InstSet = instoptfloat(FloatIndex,OptSpec,Strike,ExerciseDates,AmericanOpt) to specify an American or Bermuda option for a floating-rate note.

InstSet = instoptfloat(InstSetOld,___) to add instruments to an existing portfolio.

[FieldList,ClassList,TypeString] = instoptfloat lists the field metadata for the 'OptFloat' instrument.

Examples

expand all

Create an Instrument Portfolio with a Call Option for a Floating-Rate Note

Define the floating-rate note:

Settle = 'Nov-1-2012';
Maturity   = 'Nov-1-2015';
Spread = 50;
Reset = 1;

Create InstSet:

InstSet = instfloat(Spread, Settle, Maturity, Reset)
InstSet = 

        FinObj: 'Instruments'
    IndexTable: [1x1 struct]
          Type: {'Float'}
     FieldName: {{9x1 cell}}
    FieldClass: {{9x1 cell}}
     FieldData: {{9x1 cell}}

Display the instrument:

instdisp(InstSet)
Index Type  Spread Settle         Maturity       FloatReset Basis Principal EndMonthRule CapRate FloorRate
1     Float 50     01-Nov-2012    01-Nov-2015    1          0     100       1            Inf     -Inf     
 

Add a European call option to the instrument portfolio:

OptSpec = 'call';
Strike = 100;
ExerciseDates = 'Nov-1-2015';

Create InstSet:

InstSet = instoptfloat(InstSet, 1, OptSpec, Strike, ExerciseDates)
InstSet = 

        FinObj: 'Instruments'
    IndexTable: [1x1 struct]
          Type: {2x1 cell}
     FieldName: {2x1 cell}
    FieldClass: {2x1 cell}
     FieldData: {2x1 cell}

Display the instrument:

instdisp(InstSet)
Index Type  Spread Settle         Maturity       FloatReset Basis Principal EndMonthRule CapRate FloorRate
1     Float 50     01-Nov-2012    01-Nov-2015    1          0     100       1            Inf     -Inf     
 
Index Type     UnderInd OptSpec Strike ExerciseDates  AmericanOpt
2     OptFloat 1        call    100    01-Nov-2015    0          
 

Input Arguments

expand all

FloatIndex — Indices pointing to underlying instruments vector of nonnegative integers

Indices pointing to underlying instruments of Type 'Float' specified by a NINST-by-1 vector. The instruments of Type 'Float' are also stored in the InstSet variable. For more information, see instfloat.

Data Types: double

OptSpec — Definition of option string | cell array of strings

Definition of option as 'call' or 'put' specified as a NINST-by-1 cell array of strings for 'call' or 'put'.

Data Types: char | cell

Strike — Option strike price values for European, Bermuda, or American optionnonnegative integer | vector of nonnegative integers

Option strike price values for option (European, Bermuda or American) specified as nonnegative integers using as NINST-by-NSTRIKES vector of strike price values.

  • For a European or Bermuda option — NINST-by-NSTRIKES matrix of strike price values. Each row is the schedule for one option. If an option has fewer than NSTRIKES exercise opportunities, the end of the row is padded with NaNs.

  • For an American Option — NINST-by-1 vector of strike price values for each option.

Data Types: single | double

ExerciseDates — Exercise date for option (European, Bermuda, or American) nonnegative integer | vector of nonnegative integers

Exercise date for option (European, Bermuda, or American) specified as nonnegative integers using a NINST-by-NSTRIKES or NINST-by-2 vector of for the option exercise dates, depending on the option type.

  • For a European or Bermuda option — NINST-by-NSTRIKES matrix of exercise dates. Each row is the schedule for one option. For a European option, there is only one ExerciseDate on the option expiry date

  • For an American option — NINST-by-2 vector of exercise date boundaries. For each instrument, the option can be exercised on any coupon date between or including the pair of dates on that row. If only one non-NaN date is listed, or if ExerciseDates is NINST-by-1, the option can be exercised between the underlying bond Settle date and the single listed ExerciseDate.

Data Types: char | cell

AmericanOpt — Option type0 if AmericanOpt is NaN or not entered (default) | scalar | vector of positive integers[0,1]

Option type specified as NINST-by-1 positive integer scalar flags with values.

  • For an European or Bermuda option — AmericanOpt is 0 for each European or Bermuda option.

  • For an American option — AmericanOpt is 1 for each American option. The AmericanOpt argument is required to invoke American exercise rules.

Data Types: single | double

Output Arguments

expand all

InstSet — Variable containing a collection of instrumentsscalar | vector

Variable containing a collection of instruments returned as a scalar or vector with the instruments 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.

FieldList — Data field for instrument typestring | cell array

Data field for instrument type returned as a NFIELDS-by-1 cell array of strings listing the name of each data field for this instrument type.

ClassList — Data class of each fieldstring with value: 'dble', 'date', 'char' | cell array with values: 'dble', 'date', 'char'

Data class of each field returned as aNFIELDS-by-1 cell array of strings listing the data class of each field. The class determines how arguments will be parsed.

TypeString — Type of instrument addedstring with value 'OptFloat'

Type of instrument added returned as a string. The string for a floating-rate option instrument is TypeString = 'OptFloat'.

See Also

|

Was this topic helpful?