tsmovavg

Скользящее среднее значение

tsmovavg будет удален в будущем релизе. Используйте timetable вместо этого. Для получения дополнительной информации смотрите, Преобразовывают Финансовые маневры Объектов Временных рядов в Расписания.

tsmovavg вычисляет простое, экспоненциальное, треугольное, взвешенное, и измененное скользящее среднее значение вектора или объект fints данных. Для получения информации о работе с финансовыми временными рядами (объекты fints) данные, смотрите Работу с Финансовыми Объектами Временных рядов.

Синтаксис

output = tsmovavg(tsobj,'s',lag)
output = tsmovavg(vector,'s',lag,dim)
output = tsmovavg(tsobj,'e',timeperiod)
output = tsmovavg(vector,'e',timeperiod,dim)
output = tsmovavg(tsobj,'t',numperiod)
output = tsmovavg(vector,'t',numperiod,dim)
output = tsmovavg(tsobj,'w',weights)
output = tsmovavg(vector,'w',weights,dim)
output = tsmovavg(tsobj,'m',numperiod)
output = tsmovavg(vector,'m',numperiod,dim)

Описание

пример

output = tsmovavg(tsobj,'s',lag) возвращает простое скользящее среднее значение для финансового объекта временных рядов, tsobj. lag указывает на количество предыдущих точек данных, используемых с текущей точкой данных при вычислении скользящего среднего значения.

output = tsmovavg(vector,'s',lag,dim) возвращает простое скользящее среднее значение для вектора. lag указывает на количество предыдущих точек данных, используемых с текущей точкой данных при вычислении скользящего среднего значения.

пример

output = tsmovavg(tsobj,'e',timeperiod) возвращается экспоненциал взвесил скользящее среднее значение для финансового объекта временных рядов, tsobj. Экспоненциальное скользящее среднее является взвешенным скользящим средним значением, где timeperiod задает период времени. Экспоненциальные скользящие средние уменьшают задержку путем применения большего количества веса к недавним ценам. Например, экспоненциальное скользящее среднее с 10 периодами взвешивает новую цену на 18,18%. Exponential Percentage = 2/(TIMEPER + 1) or 2/(WINDOW_SIZE + 1).

output = tsmovavg(vector,'e',timeperiod,dim) возвращается экспоненциал взвесил скользящее среднее значение для вектора. Экспоненциальное скользящее среднее является взвешенным скользящим средним значением, где timeperiod задает период времени. Экспоненциальные скользящие средние уменьшают задержку путем применения большего количества веса к недавним ценам. Например, экспоненциальное скользящее среднее с 10 периодами взвешивает новую цену на 18,18%. (2/(timeperiod + 1)).

пример

output = tsmovavg(tsobj,'t',numperiod) возвращает треугольное скользящее среднее значение для финансового объекта временных рядов, tsobj. Треугольное скользящее среднее значение дважды - сглаживает данные. tsmovavg вычисляет первое простое скользящее среднее значение с шириной окна ceil(numperiod + 1)/2. Затем это вычисляет второе простое скользящее среднее значение на первое скользящее среднее значение с тем же размером окна.

output = tsmovavg(vector,'t',numperiod,dim) возвращает треугольное скользящее среднее значение для вектора. Треугольное скользящее среднее значение дважды - сглаживает данные. tsmovavg вычисляет первое простое скользящее среднее значение с шириной окна ceil(numperiod + 1)/2. Затем это вычисляет второе простое скользящее среднее значение на первое скользящее среднее значение с тем же размером окна.

пример

output = tsmovavg(tsobj,'w',weights) возвращает взвешенное скользящее среднее значение для финансового объекта временных рядов, tsobj, путем предоставления весов для каждого элемента в движущемся окне. Длина вектора веса определяет размер окна. Если большие весовые коэффициенты используются за более свежие цены и меньшие факторы за предыдущие цены, тренд является более быстро реагирующим к недавним изменениям.

output = tsmovavg(vector,'w',weights,dim) возвращает взвешенное скользящее среднее значение для вектора путем предоставления весов для каждого элемента в движущемся окне. Длина вектора веса определяет размер окна. Если большие весовые коэффициенты используются за более свежие цены и меньшие факторы за предыдущие цены, тренд является более быстро реагирующим к недавним изменениям.

пример

output = tsmovavg(tsobj,'m',numperiod) возвращает измененное скользящее среднее значение для финансового объекта временных рядов, tsobj. Измененное скользящее среднее значение подобно простому скользящему среднему значению. Полагайте, что аргумент numperiod задержка простого скользящего среднего значения. Первое измененное скользящее среднее значение вычисляется как простое скользящее среднее значение. Последующие значения вычисляются путем добавления новой цены и вычитания последнего среднего значения из получившейся суммы.

output = tsmovavg(vector,'m',numperiod,dim) возвращает измененное скользящее среднее значение для вектора. Измененное скользящее среднее значение подобно простому скользящему среднему значению. Полагайте, что аргумент numperiod задержка простого скользящего среднего значения. Первое измененное скользящее среднее значение вычисляется как простое скользящее среднее значение. Последующие значения вычисляются путем добавления новой цены и вычитания последнего среднего значения из получившейся суммы.

Примеры

свернуть все

Загрузите финансовый объект временных рядов, dis для акций Диснея и посмотрите на еженедельные данные для этих временных рядов.

load disney.mat
weekly = toweekly(dis);
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.
dates = (weekly.dates);
price = fts2mat(weekly.CLOSE);
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. For more information, see <a href="matlab:web(fullfile(docroot, 'finance/convert-from-fints-to-timetables.html'))">Convert Financial Time Series Objects (fints) to Timetables</a>.

Установите the|lag | входной параметр для размера окна для скользящего среднего значения.

window_size = 12;

Вычислите простое скользящее среднее значение.

simple = tsmovavg(price,'s',window_size,1);
Warning: TSMOVAVG will be removed in a future release. Use MOVAVG instead.

Вычислите экспоненциал взвесил скользящее среднее значение скользящего среднего значения.

exp = tsmovavg(price,'e',window_size,1);
Warning: TSMOVAVG will be removed in a future release. Use MOVAVG instead.

Вычислите треугольное скользящее среднее значение скользящего среднего значения.

tri = tsmovavg(price,'t',window_size,1);
Warning: TSMOVAVG will be removed in a future release. Use MOVAVG instead.

Вычислите взвешенное скользящее среднее значение скользящего среднего значения.

semi_gaussian = [0.026 0.045 0.071 0.1 0.12 0.138];
semi_gaussian = [semi_gaussian fliplr(semi_gaussian)];
weighted = tsmovavg(price,'w',semi_gaussian,1);
Warning: TSMOVAVG will be removed in a future release. Use MOVAVG instead.

Вычислите измененное скользящее среднее значение скользящего среднего значения.

modif = tsmovavg(price,'m',window_size,1);
Warning: TSMOVAVG will be removed in a future release. Use MOVAVG instead.

Постройте результаты для пяти вычислений скользящего среднего значения для акций Диснея.

plot(dates,price,...
    dates,simple,...
    dates,exp,...
    dates,tri,...
    dates,weighted,...
    dates,modif)
datetick
legend('Stock Price','Simple','Exponential','Triangular','Weighted',...
    'Modified','Location','NorthWest')
title('Disney Weekly Price & Moving Averages')

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

свернуть все

Финансовый объект временных рядов задал использование объекта временных рядов, созданного с помощью fints.

lag является параметром, указывающим на количество предыдущих точек данных, которые будут использоваться в сочетании с текущей точкой данных при вычислении простого скользящего среднего значения.

Количество предыдущих точек данных, заданных как неотрицательное целое число. Lag указывает на размер окна или количество периодов скользящего среднего значения.

Набор наблюдений, заданных как вектор или матрица.

Размерность, которая задает направление расчета, заданная как положительное целое число со значением 1 или 2. dim является дополнительным входным параметром, и если он не включен как вход, значение по умолчанию, 2 принят. Значение по умолчанию dim = 2 указывает на ориентированную на строку матрицу, где каждая строка является переменной, и каждый столбец является наблюдением.

Если dim = 1, вход принят, чтобы быть вектор-столбцом или ориентированной на столбец матрицей, где каждый столбец является переменной и каждой строкой наблюдение.

Экспоненциальное скользящее среднее является взвешенным скользящим средним значением, где timeperiod является периодом времени экспоненциального скользящего среднего. Экспоненциальные скользящие средние уменьшают задержку путем применения большего количества веса к недавним ценам. Например, 10 экспоненциальных скользящих средних периода взвешивают новую цену на 18,18%.

Exponential Percentage = 2/(TIMEPER + 1) or 2/(WINDOW_SIZE + 1)

Период отрезка времени, заданный как неотрицательное целое число.

Треугольное скользящее среднее значение является двойным сглаживанием данных. Первое простое скользящее среднее значение вычисляется с шириной окна ceil(numperiod + 1)/2. Затем второе простое скользящее среднее значение вычисляется на первое скользящее среднее значение с тем же размером окна.

Измененное скользящее среднее значение подобно простому скользящему среднему значению. Полагайте, что аргумент numperiod lag простого скользящего среднего значения. Первое измененное скользящее среднее значение вычисляется как простое скользящее среднее значение. Последующие значения вычисляются путем добавления новой цены и вычитания последнего среднего значения из получившейся суммы.

Количество периодов, рассмотренных заданными как неотрицательное целое число.

Взвешенное скользящее среднее значение вычисляется с вектором веса, weights. Длина вектора веса определяет размер окна. Если большие весовые коэффициенты используются за более свежие цены и меньшие факторы за предыдущие цены, тренд является более быстро реагирующим к недавним изменениям.

Веса для каждого элемента в окне, заданном как вектор весов.

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

свернуть все

Вычисление скользящего среднего значения, возвращенное как вектор или матрица. output, возвращенный в tsmovavg, идентичен в формате входу.

Ссылки

[1] Achelis, Технический анализ Стивена Б. от А до Я. Второй Выпуск. McGraw-Hill, 1995, стр 184–192.

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