Финансовый объект временных рядов используется, как будто это был MATLAB® структура. (См. документацию MATLAB для описания структур MATLAB или как использовать MATLAB в целом.)
Эта часть примера принимает, что вы знаете, как использовать MATLAB и знакомы со структурами MATLAB. Терминология похожа на ту из структуры MATLAB. Финансовый термин объекта временных рядов является взаимозаменяемым полем термина структуры MATLAB.
Финансовый объект временных рядов всегда содержит три имен компонентов: desc
(поле описания), freq
(поле индикатора частоты), и dates
DateVector . Если вы создаете объект с помощью конструктора fints
, значением по умолчанию для поля описания является вектор знака пробела (''
). Если вы создаете объект из текстового использования файла данных ascii2fts
, значением по умолчанию является имя текстового файла данных. Значением по умолчанию для поля индикатора частоты является 0
(Unknown
частота). Объекты, созданные из операций, могут принять значение по умолчанию установка на 0
. Например, если вы решаете выбрать значения выборочно от объекта, частоты новой объектной силы не совпасть с тем из объекта, из которого это прибыло.
Вектор даты dates
не имеет множества значений по умолчанию. Когда вы создаете объект, необходимо предоставить вектор даты. Можно изменить вектор даты позже, но во время создания объекта необходимо обеспечить набор дат.
Итоговый компонент финансового объекта временных рядов является одним или несколькими серийными векторами данных. Если вы не предоставляете имя для ряда данных, именем по умолчанию является series1
. Если вы имеете несколько рядов данных в объекте и не предоставляете имена, значением по умолчанию является ряд имени, сопровождаемый номером, например, series1
, series2
, и series3
.
Вот осуществление о том, как извлечь данные из финансового объекта временных рядов. Как упомянуто прежде, можно думать об объекте как о структуре MATLAB. Подсветите каждую линию в упражнении в Браузере документации MATLAB, нажмите правую кнопку мыши и выберите Evaluate Selection, чтобы выполнить его.
Чтобы начаться, создайте финансовый объект временных рядов, названный myfts
:
dates = (datenum('05/11/99'):datenum('05/11/99')+100)'; data_series1 = exp(randn(1, 101))'; data_series2 = exp(randn(1, 101))'; data = [data_series1 data_series2]; myfts = fints(dates, data)
myfts
объект выглядит так:
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints (line 165) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) myfts = desc: (none) freq: Unknown (0) 'dates: (101)' 'series1: (101)' 'series2: (101)' '11-May-1999' [ 2.8108] [ 0.9323] '12-May-1999' [ 0.2454] [ 0.5608] '13-May-1999' [ 0.3568] [ 1.5989] '14-May-1999' [ 0.5255] [ 3.6682] '15-May-1999' [ 1.1862] [ 5.1284] '16-May-1999' [ 3.8376] [ 0.4952] '17-May-1999' [ 6.9329] [ 2.2417] '18-May-1999' [ 2.0987] [ 0.3579] '19-May-1999' [ 2.2524] [ 3.6492] '20-May-1999' [ 0.8669] [ 1.0150] '21-May-1999' [ 0.9050] [ 1.2445] '22-May-1999' [ 0.4493] [ 5.5466] '23-May-1999' [ 1.6376] [ 0.1251] '24-May-1999' [ 3.4472] [ 1.1195] '25-May-1999' [ 3.6545] [ 0.3374]...
В объекте существует больше дат; только первые несколько линий показывают здесь.
Примечание
Фактические данные в вашем series1
и series2
отличается от вышеупомянутого из-за использования случайных чисел.
Теперь создайте другой объект только со значениями для series2
:
srs2 = myfts.series2
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/subsref (line 106) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) srs2 = desc: (none) freq: Unknown (0) 'dates: (101)' 'series2: (101)' '11-May-1999' [ 0.9323] '12-May-1999' [ 0.5608] '13-May-1999' [ 1.5989] '14-May-1999' [ 3.6682] '15-May-1999' [ 5.1284] '16-May-1999' [ 0.4952] '17-May-1999' [ 2.2417] '18-May-1999' [ 0.3579] '19-May-1999' [ 3.6492] '20-May-1999' [ 1.0150] '21-May-1999' [ 1.2445] '22-May-1999' [ 5.5466] '23-May-1999' [ 0.1251] '24-May-1999' [ 1.1195] '25-May-1999' [ 0.3374]...
Новый объект srs2
содержит все даты в myfts
, но единственным рядом данных является series2
. Имя ряда данных сохраняет свое имя от исходного объекта, myfts
.
Примечание
Выход от ссылки на поле ряда данных или индексации финансового объекта временных рядов всегда является другим финансовым объектом временных рядов. Исключения ссылаются на описание, индикатор частоты и поля дат, и индексируют в поле дат.
Функция fts2mat
извлекает даты и/или серийные значения данных от объекта и размещает их в вектор или матрицу. Поведение по умолчанию извлекает только значения в вектор или матрицу. Посмотрите на следующий пример:
srs2_vec = fts2mat(myfts.series2)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/subsref (line 106) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/fts2mat (line 29) srs2_vec = 0.9323 0.5608 1.5989 3.6682 5.1284 0.4952 2.2417 0.3579 3.6492 1.0150 1.2445 5.5466 0.1251 1.1195 0.3374...
Если вы хотите включать даты в выходную матрицу, обеспечьте второй входной параметр и установите его на 1
. Это приводит к матрице, первый столбец которой является вектором из последовательных чисел даты:
format long g srs2_mtx = fts2mat(myfts.series2, 1)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/subsref (line 106) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/fts2mat (line 29) srs2_mtx = 730251 0.932251754559576 730252 0.560845677519876 730253 1.59888712183914 730254 3.6681500883527 730255 5.12842215360269 730256 0.49519254119977 730257 2.24174134286213 730258 0.357918065917634 730259 3.64915665824198 730260 1.01504236943148 730261 1.24446420606078 730262 5.54661849025711 730263 0.12507959735904 730264 1.11953883096805 730265 0.337398214166607
Векторный srs2_vec
содержит series2
значения. Матричный srs2_mtx
содержит даты в первом столбце и значениях series2
ряд данных во втором. Даты в первом столбце находятся в последовательном формате даты. Последовательный формат даты является представлением формата вектора символов даты (например, последовательная дата = 1
эквивалентно до 01 января 0000). (Последовательный вектор даты может включать информацию времени суток.)
long g
формат отображения отображает числа без возведения в степень. (Чтобы вернуться к формату отображения по умолчанию, используйте format short
. (См. format
для описания форматов отображения MATLAB.) Помнят, что и вектор и матрица имеют 101 строку данных как в исходном объекте myfts
но показаны усеченными здесь.
fints
| ascii2fts
| fts2mat
| datestr
| ftsbound
| boxcox
| diff
| fillts
| filter
| lagts
| leadts
| peravg
| smoothts
| tsmovavg
| convertto
| resamplets
| toannual
| todaily
| tomonthly
| toquarterly
| tosemi
| toweekly