instget

Данные из инструментальной переменной

Синтаксис

[Data_1,Data_2,...,Data_n] = instget(InstSet,'FieldName',FieldList,'Index',IndexSet,'Type',TypeList)

Аргументы

InstSet

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

FieldList

(Необязательно) Количество полей, заданных как NFIELDS-by-1 массив ячеек из символьных векторов, перечисляющий имя каждого поля данных, чтобы соответствовать со значениями данных. записями FieldList может также быть или 'Type' или 'Index'; они возвращают векторы символа текста и индексы соответственно. Значением по умолчанию являются все поля, доступные для возвращенного набора инструментов.

IndexSet

(Необязательно) Количество инструментов, заданных как NINST-by-1 вектор положений инструментов, чтобы продолжить работать. Если TypeList также вводится, инструменты, на которые ссылаются, должны быть одним из типов TypeList и содержавшийся в IndexSet. Значением по умолчанию являются все индексы, доступные в инструментальной переменной.

TypeList

(Необязательно) Количество типов, заданных как NTYPES-by-1 инструменты ограничения массива ячеек из символьных векторов, чтобы совпадать с одним из типов TypeList. Значением по умолчанию являются все типы в инструментальной переменной.

Пары значения аргумента могут быть введены в любой порядок. Переменная InstSet должна быть первым аргументом.

Описание

[Data_1,Data_2,...,Data_n] = instget(InstSet,'FieldName',FieldList,'Index',IndexSet,'Type',TypeList) получает массивы данных из инструментальной переменной.

Data_1 является NINST-by-M массив содержимого данных для первого поля в FieldList. Каждая строка соответствует отдельному инструменту в IndexSet. Недоступные данные возвращены как NaN или как пробелы.

Data_n является NINST-by-M массив содержимого данных для последнего поля в FieldList.

Примеры

Получите инструментальный набор ExampleInst из файла данных. InstSetExamples.mat. ExampleInst содержит три типа инструментов: Option, Futures и TBill.

load InstSetExamples; 
instdisp(ExampleInst)
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      

Извлеките цену от всех инструментов.

P = instget(ExampleInst,'FieldName','Price')
P =

   12.2000
    9.2000
    6.8000
       NaN
    7.4000
    2.9000
   99.0000

Получите все цены и количество сохраненных контрактов.

[P,C] = instget(ExampleInst, 'FieldName', {'Price', 'Contracts'}) 
P =

   12.2000
    9.2000
    6.8000
       Nan
    7.4000
    2.9000
   99.0000

C =

      0
      0
   1000
  -1000
  -1000
      0
      6

Вычислите значение V. Создайте новую переменную ISet, которая добавляет V к ExampleInst.

V = P.*C 
ISet = instsetfield(ExampleInst, 'FieldName', 'Value', 'Data',... 
V); 
instdisp(ISet) 
Index Type   Strike Price Opt  Contracts Value
1     Option  95     12.2 Call    0           0 
2     Option 100      9.2 Call    0           0 
3     Option 105      6.8 Call  1000       6800 

Index Type    Delivery       F     Contracts Value 
4     Futures 01-Jul-1999    104.4 -1000     NaN

Index Type   Strike Price Opt  Contracts Value
5     Option 105     7.4 Put  -1000      -7400 
6     Option  95     2.9 Put     0           0 

Index Type Price Maturity       Contracts Value
7     TBill 99    01-Jul-1999   6         594

Посмотрите только на инструменты, которые имеют ненулевой Contracts.

Ind = find(C ~= 0) 
Ind =

     3
     4
     5
     7

Получите Type и параметры Opt от тех инструментов. (Только опции имеют сохраненное поле 'Opt'.)

[T,O] = instget(ExampleInst, 'Index', Ind, 'FieldName',... 
{'Type', 'Opt'}) 
T =

Option 
Futures
Option 
TBill   

O =

Call
    
Put 

Создайте отчет активов Type, Opt и Value.

rstring = [T, O, num2str(V(Ind))] 
rstring =

Option Call   6800
Futures        NaN
Option Put   -7400
TBill          594

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