Преобразуйте ценовой ряд в возвратный ряд
Загрузите файл SimulatedStock.mat, который обеспечивает расписание (TMW) для финансовых данных для акций TMW. Затем преобразуйте ценовой ряд в возврат ряд, учитывая первые 10 периодических возвраты TMW.
load SimulatedStock.mat TMW_Close = TMW(1:10,'Close'); [Returns,Intervals] = tick2ret(TMW_Close)
Returns=9×1 timetable
Time Close
___________ ___________
05-Sep-2012 0.0017955
06-Sep-2012 0.013741
07-Sep-2012 -0.022591
10-Sep-2012 -0.011557
11-Sep-2012 -0.014843
12-Sep-2012 -0.0012384
13-Sep-2012 0.0081628
14-Sep-2012 -0.00051245
17-Sep-2012 -0.02902
Intervals = 9x1 duration
24:00:00
24:00:00
24:00:00
72:00:00
24:00:00
24:00:00
24:00:00
24:00:00
72:00:00
datetime ВходИспользование datetime вход для преобразования ценового ряда в возвратный ряд с учетом периодических возвратов двух акций, наблюдаемых в первом, втором, третьем и четвертом кварталах.
TickSeries = [100 80
110 90
115 88
110 91];
TickTimes = datetime({'1/1/2015','1/7/2015','1/16/2015','1/28/2015'},'InputFormat','MM/dd/uuuu');
[Returns,Intervals] = tick2ret(TickSeries,'TickTimes',TickTimes)Returns = 3×2
0.1000 0.1250
0.0455 -0.0222
-0.0435 0.0341
Intervals = 3x1 duration
144:00:00
216:00:00
288:00:00
Data - Данные по ценам активовЗадайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
[Returns,Intervals] = tick2ret(TickSeries,'TickTimes',TickTimes)'TickTimes' - Время наблюдения, связанное с ценами1, 2... NUMOBS принятый для всех активов (по умолчанию) | векторВремя наблюдения, связанное с ценами, задается как разделенная разделенными запятой парами, состоящая из 'TickTimes' и a NUMOBS вектор-столбец элемента монотонно увеличивающегося времени наблюдения, связанного с ценами в Data. Время принимается либо как серийные номера дат (дневные модули), строки дат, массивы datetime, либо как десятичные числа в произвольных модулях (для примера, ежегодно).
Примечание
Если вход Data type является расписанием, время ввода строки в расписании перезаписывает TickTimes вход.
Типы данных: double | datetime | string
'Method' - Метод преобразования цен на активы в возвраты'Simple' (по умолчанию) | вектор со значением 'Simple' или 'Continuous' | строку со значением "Simple" или "Continuous"Метод преобразования цен активов в возвраты, заданный как разделенная разделенными запятой парами, состоящая из 'Method' и строка или векторы символов, указывающие метод преобразования цен на активы в возвраты.
Если метод 'Simple', затем простые периодические возвраты в то время, t вычисляются как:
Returns(t) = Data(t)/Data(t-1) - 1.
Если метод 'Continuous'непрерывные возвраты вычисляются как:
Returns(t) = log(Data(t)/Data(t-1)).
Типы данных: char | string
Returns - Массив временных рядов возвратов активовМассив временных рядов возвратов активов, возвращенный как NUMOBS-1-by- NASSETS массив возвратов активов с тем же типом (матрица, таблица или timetable), что и вход Data. Первая строка содержит самые старые возвраты, а последняя - самые последние. Возвраты по данной строке принимаются в одно и то же время для всех столбцов, и каждый столбец является возвращаемой серией отдельных основных средств.
Intervals - Интервальное время между последовательными ценамиИнтервал времени между последовательными ценами, возвращенный как NUMOBS-1 длина вектора-столбца где Intervals(<reservedrangesplaceholder1>) = TickTimes(t) - TickTimes(t - 1).
Эта функция поддерживает входные Data задается как tall вектора-столбца, длинной таблицы или длинного расписания. Для получения дополнительной информации смотрите tall и Длинные массивы.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.