Создайте объект финансовых временных рядов из ASCII-файла
ascii2fts
не рекомендуется. Использовать timetable
вместо этого. Для получения дополнительной информации смотрите Преобразование финтов финансовых временных рядов в Timetables.
tsobj = ascii2fts(filename,descrow,colheadrow,skiprows) tsobj = ascii2fts(filename,timedata,descrow,colheadrow,skiprows)
| Файл данных ASCII |
| (Необязательно) Номер строки в файле данных, содержащем описание для поля описания объекта финансовых временных рядов |
| (Необязательно) Номер строки с заголовками/именами столбцов |
| (Необязательно) Скаляр или вектор номеров строк, которые будут пропущены в файле данных |
| Установите значение |
tsobj = ascii2fts(filename,descrow,colheadrow,skiprows)
создает объект финансовых временных рядов tsobj
из ASCII-файла с именем filename
. Эта форма функции может только считать файл данных без информации о времени суток и создавать объект финансовых временных рядов без информации о времени. Если информация о времени присутствует в ASCII-файле, появляется сообщение об ошибке.
Общий формат текстового файла данных:
Может содержать текстовые строки заголовка.
Может содержать информацию о заголовке столбца. Информация о заголовке столбца должна непосредственно предшествовать столбцам ряда данных, если только skiprows
задан.
Самый левый столбец должен быть столбцом дат.
Даты должны быть в допустимом формате даты вектора символов:
'ddmmmyy'
или 'ddmmmyyyy'
'mm/dd/yy'
или 'mm/dd/yyyy'
'dd-mmm-yy'
или 'dd-mmm-yyyy'
'mmm.dd,yy'
или 'mmm.dd,yyyy'
Информация о времени должна быть в 'hh:mm'
формат.
Каждый столбец должен быть разделен либо пространствами, либо вкладка.
tsobj = ascii2fts(filename, timedata, descrow, colheadrow, skiprows)
создает объект финансовых временных рядов, содержащий данные времени суток. Задайте timedata
на 'T'
создание объекта финансовых временных рядов, содержащего данные времени суток. Информация о времени ascii должна быть в 'hh:mm'
формат для ascii2fts
.
Пример 1. Если файл данных не содержит ни описания, ни строк заголовка столбца,
1/3/95 36.75 36.9063 36.6563 36.875 1167900 1/4/95 37 37.2813 36.625 37.1563 1994700 ...
можно создать из него объект финансовых временных рядов с самой простой формой ascii2fts
функция:
myinc = ascii2fts('my_inc.dat')
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In ascii2fts (line 64) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) myinc = desc: my_inc.dat freq: Unknown (0) 'dates: (2)' 'series1: (2)' 'series2: (2)' 'series3: (2)'... '03-Jan-1995' [ 36.7500] [ 36.9063] [ 36.6563] '04-Jan-1995' [ 37] [ 37.2813] [ 36.6250]
Пример 2: Если ваш файл данных содержит описание и информацию о заголовке столбца с серией данных сразу после строки заголовка столбца,
International Business Machines Corporation (IBM) Daily prices (1/3/95 to 4/5/99) DATE OPEN HIGH LOW CLOSE VOLUME 1/3/95 36.75 36.9063 36.6563 36.875 1167900 1/4/95 37 37.2813 36.625 37.1563 1994700 ...
необходимо указать номера строк, содержащие описание и заголовки столбцов:
ibm = ascii2fts('ibm9599.dat', 1, 3)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In ascii2fts (line 64) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) ibm = desc: International Business Machines Corporation (IBM) freq: Unknown (0) 'dates: (2)' 'OPEN: (2)' 'HIGH: (2)' 'LOW: (2)' ... '03-Jan-1995' [ 36.7500] [ 36.9063] [ 36.6563] '04-Jan-1995' [ 37] [ 37.2813] [ 36.6250]
Пример 3: Если ваш файл данных содержит строки между заголовками столбцов и рядами данных, например,
Staples, Inc. (SPLS) Daily prices DATE OPEN HIGH LOW CLOSE VOLUME Starting date: 04/08/1996 Ending date: 04/07/1999 4/8/96 19.50 19.75 19.25 19.375 548500 4/9/96 19.75 20.125 19.375 20 1135900 ...
вы должны указать, чтобы ascii2fts
строки в файле, которые должны быть пропущены. Предположим, что вы вызвали файл данных, содержащий данные Staples (staples.dat
).
spls = ascii2fts('staples.dat', 1, 3, [4 5])
Команда выше указывает, что четвертая и пятая строки в файле должны быть пропущены при создании объекта финансовых временных рядов:
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In ascii2fts (line 64) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) spls = desc: Staples, Inc. (SPLS) freq: Unknown (0) 'dates: (2)' 'OPEN: (2)' 'HIGH: (2)' 'LOW: (2)' '08-Apr-1996' [ 19.5000] [ 19.7500] [19.2500] '09-Apr-1996' [ 19.7500] [ 20.1250] [19.3750]
Пример 4: Создайте объект финансовых временных рядов, содержащий информацию о времени суток.
Сначала создайте файл данных с информацией о времени:
dates = ['01-Jan-2001';'01-Jan-2001'; '02-Jan-2001'; ... '02-Jan-2001'; '03-Jan-2001';'03-Jan-2001']; times = ['11:00';'12:00';'11:00';'12:00';'11:00';'12:00']; serial_dates_times = [datenum(dates), datenum(times)]; data = round(10*rand(6,2)); stat = fts2ascii('myfts_file2.txt',serial_dates_times,data, ... {'dates';'times';'Data1';'Data2'},'My FTS with Time')
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fts2ascii (line 60) stat = 1
Теперь прочитайте файл данных назад и создайте объект финансовых временных рядов:
MyFts = ascii2fts('myfts_file2.txt','t',1,2,1)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In ascii2fts (line 64) Warning: FINTS will be removed in a future release. Use TIMETABLE instead. > In fints/display (line 66) MyFts = desc: My FTS with Time freq: Unknown (0) 'dates: (6)' 'times: (6)' 'Data1: (6)' 'Data2: (6)' '01-Jan-2001' '11:00' [ 9] [ 4] ' " ' '12:00' [ 7] [ 9] '02-Jan-2001' '11:00' [ 2] [ 1] ' " ' '12:00' [ 4] [ 4] '03-Jan-2001' '11:00' [ 9] [ 8] ' " ' '12:00' [ 9] [ 0]