instaddfield

Добавьте новые инструменты к набору приборов

Описание

пример

InstSetNew = instaddfield(InstSet,Name,Value) добавляет инструменты в существующий набор приборов InstSet. Область выхода InstSetNew - новый набор приборов, содержащий входные данные.

пример

InstSet = instaddfield(Name,Value) создает переменную инструмента InstSet.

Примеры

свернуть все

Создайте портфель вокруг следующих опций июля.

Strike = (95:5:105)' 
Strike = 3×1

    95
   100
   105

CallP = [12.2; 9.2; 6.8] 
CallP = 3×1

   12.2000
    9.2000
    6.8000

Введите три опции вызова с полями данных Strike, Price, и Opt.

InstSet = instaddfield('Type','Option','FieldName',...
{'Strike','Price','Opt'}, 'Data',{ Strike, CallP, 'Call'}); 
instdisp(InstSet) 
Index Type   Strike Price Opt 
1     Option  95    12.2  Call
2     Option 100     9.2  Call
3     Option 105     6.8  Call
 

Добавьте фьючерсный контракт и установите класс анализа входов.

InstSet = instaddfield(InstSet,'Type','Futures',... 
'FieldName',{'Delivery','F'},'FieldClass',{'date','dble'},... 
'Data' ,{'01-Jul-99',104.4 });  
instdisp(InstSet) 
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
 

Добавьте опцию put.

FN = instfields(InstSet,'Type','Option') 
FN = 3x1 cell
    {'Strike'}
    {'Price' }
    {'Opt'   }

InstSet = instaddfield(InstSet,'Type','Option',...
'FieldName',FN, 'Data',{105, 7.4, 'Put'}); 
instdisp(InstSet)
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 
 

Сделайте заполнитель для другого размещения.

InstSet = instaddfield(InstSet,'Type','Option',...
'FieldName','Opt','Data','Put') 
InstSet = struct with fields:
        FinObj: 'Instruments'
    IndexTable: [1x1 struct]
          Type: {2x1 cell}
     FieldName: {2x1 cell}
    FieldClass: {2x1 cell}
     FieldData: {2x1 cell}

instdisp(InstSet)
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 
 

Добавьте кассовый инструмент.

InstSet = instaddfield(InstSet, 'Type', 'TBill',... 
'FieldName','Price','Data',99)  
InstSet = struct with fields:
        FinObj: 'Instruments'
    IndexTable: [1x1 struct]
          Type: {3x1 cell}
     FieldName: {3x1 cell}
    FieldClass: {3x1 cell}
     FieldData: {3x1 cell}

instdisp(InstSet) 
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   
 

Входные параметры

свернуть все

Переменная инструмента, содержащая набор инструментов, указанный как InstSet структура. Инструменты классифицируются по типам; каждый тип может иметь различные поля данных. Сохраненное поле данных является вектором-строкой или вектором символов для каждого инструмента.

Типы данных: struct

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: InstSet = instaddfield('Type','Option','FieldName',{'Strike','Price','Opt'},'Data',{Strike,CallP,'Call'})

Имя каждого поля данных для инструмента, заданное как разделенная разделенными запятой парами, состоящая из 'FieldName' и NFIELDS-by- 1 массив ячеек из векторов символов.

Типы данных: char | cell

Содержимое данных для каждого поля, заданное как разделенная разделенными запятой парами, состоящая из 'Data' и NINST-by- M массив или NFIELDS-by- 1 массив ячеек.

Типы данных: double | cell

Класс данных каждого поля, заданный как разделенная разделенными запятой парами, состоящая из 'FieldClass' и NFIELDS-by- 1 массив ячеек из векторов символов.

Типы данных: char | cell

Тип добавленного инструмента, заданный как разделенная разделенными запятой парами, состоящая из 'Type' и вектор символов. Инструменты разных типов могут иметь различные FieldName наборов.

Типы данных: char

Выходные аргументы

свернуть все

Переменная набора инструментов, содержащая новые входные данные, добавленные в существующее InstSet , возвращается как структура.

Новая переменная Instrument set, содержащая входные данные, возвращается как структура.

Представлено до R2006a