| Financial Derivatives Toolbox™ | ![]() |
InstSet = instsetfield(InstSet, 'FieldName',
FieldList,
'Data', DataList)
InstSet = instsetfield(InstSet, 'FieldName',
FieldList,
'Data', DataList, 'Index',
IndexSet, 'Type', TypeList)
InstSet | Variable containing a collection of instruments. Instruments are classified by type; each type can have different data fields. The stored data field is a row vector or string for each instrument. InstSet must be the first argument in the list. |
FieldList | String or number of fields (NFIELDS)-by-1 cell array of strings listing the name of each data field. FieldList cannot be named with the reserved names Type or Index. |
DataList | Number of instruments (NINST)-by-M array or NFIELDS-by-1 cell array of data contents for each field. Each row in a data array corresponds to a separate instrument. Single rows are copied to apply to all instruments to be worked on. The number of columns is arbitrary, and data is padded along columns. |
NINST-by-1 vector of positions of instruments to work on. If TypeList is also entered, instruments referenced must be one of TypeList types and contained in IndexSet. | |
String or number of types (NTYPES)-by-1 cell array of strings restricting instruments worked on to match one of TypeList types. |
Argument value pairs can be entered in any order.
instsetfield sets data for existing instruments in a collection variable.
InstSet = instsetfield(InstSet, 'FieldName', FieldList, 'Data', DataList) resets or adds fields to every instrument.
InstSet = instsetfield(InstSet, 'FieldName', FieldList, 'Data', DataList, 'Index', IndexSet, 'Type', TypeList) resets or adds fields to a subset of instruments.
The output InstSet is a new instrument set variable containing the input data.
Retrieve the instrument set ExampleInstSF from the data file InstSetExamples.mat. ExampleInstSF contains three types of instruments: Option, Futures, and TBill.
load InstSetExamples; ISet = ExampleInstSF; instdisp(ISet) Index Type Strike Price Opt 1 Option 95 12.2 Call 2 Option 100 9.2 Call 3 Option 105 6.8 Call Index Type Delivery F 4 Futures 01-Jul-1999 104.4 Index Type Strike Price Opt 5 Option 105 7.4 Put 6 Option NaN NaN Put Index Type Price 7 TBill 99
Enter data for the option in Index 6: Price 2.9 for a Strike of 95.
ISet = instsetfield(ISet, 'Index',6,...
'FieldName',{'Strike','Price'}, 'Data',{ 95 , 2.9 });
instdisp(ISet)
Index Type Strike Price Opt
1 Option 95 12.2 Call
2 Option 100 9.2 Call
3 Option 105 6.8 Call
Index Type Delivery F
4 Futures 01-Jul-1999 104.4
Index Type Strike Price Opt
5 Option 105 7.4 Put
6 Option 95 2.9 Put
Index Type Price
7 TBill 99
Create a new field Maturity for the cash instrument.
MDate = datenum('7/1/99');
ISet = instsetfield(ISet, 'Type', 'TBill', 'FieldName',...
'Maturity','FieldClass', 'date', 'Data', MDate);
instdisp(ISet)
Index Type Price Maturity
7 TBill 99 01-Jul-1999
Create a new field Contracts for all instruments.
ISet = instsetfield(ISet, 'FieldName', 'Contracts', 'Data', 0); instdisp(ISet) Index Type Strike Price Opt Contracts 1 Option 95 12.2 Call 0 2 Option 100 9.2 Call 0 3 Option 105 6.8 Call 0 Index Type Delivery F Contracts 4 Futures 01-Jul-1999 104.4 0 Index Type Strike Price Opt Contracts 5 Option 105 7.4 Put 0 6 Option 95 2.9 Put 0 Index Type Price Maturity Contracts 7 TBill 99 01-Jul-1999 0
Set the Contracts fields for some instruments.
ISet = instsetfield(ISet,'Index',[3; 5; 4; 7],... 'FieldName','Contracts', 'Data', [1000; -1000; -1000; 6]); instdisp(ISet) Index Type Strike Price Opt Contracts 1 Option 95 12.2 Call 0 2 Option 100 9.2 Call 0 3 Option 105 6.8 Call 1000 Index Type Delivery F Contracts 4 Futures 01-Jul-1999 104.4 -1000 Index Type Strike Price Opt Contracts 5 Option 105 7.4 Put -1000 6 Option 95 2.9 Put 0 Index Type Price Maturity Contracts 7 TBill 99 01-Jul-1999 6
instaddfield, instdisp, instget, instgetcell
![]() | instselect | instswap | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |