exponenta event banner

movavg

Скользящее среднее значение финансовых временных рядов

movavg обновляется, чтобы принять входные данные как матрицу, table, или timetable.

Синтаксис для movavg изменился. Поддержка входных параметров больше не поддерживается Lead и Lag, только один windowSize поддерживается, и существует только один выходной аргумент (ma). Если вы хотите вычислить начальные и отстающие скользящие средние значения, вам нужно запустить movavg дважды и отрегулируйте windowSize.

Описание

пример

ma = movavg(Data,type,windowSize) вычисляет скользящее среднее значение ( MA) финансовых временных рядов.

пример

ma = movavg(___,Initialpoints) добавляет необязательный аргумент для Initialpoints.

пример

ma = movavg(Data,type,weights) вычисляет скользящее среднее значение ( MA) финансовых временных рядов с помощью 'custom' type и weights.

пример

ma = movavg(___,Initialpoints) добавляет необязательный аргумент для Initialpoints.

Примеры

свернуть все

Загрузите файл SimulatedStock.mat, который обеспечивает расписание (TMW) для финансовых данных.

load SimulatedStock.mat
type = 'linear';
windowSize = 14;
ma = movavg(TMW_CLOSE,type,windowSize)
ma = 1000×1

  100.2500
  100.3433
  100.8700
  100.4916
   99.9937
   99.3603
   98.8769
   98.6364
   98.4348
   97.8491
      ⋮

Загрузите файл SimulatedStock.mat, который обеспечивает расписание (TMW) для финансовых данных.

load SimulatedStock.mat 
type = 'linear';
malag=movavg(TMW_CLOSE,type,20) % Lagging moving average
malag = 1000×1

  100.2500
  100.3423
  100.8574
  100.4943
  100.0198
   99.4230
   98.9728
   98.7509
   98.5688
   98.0554
      ⋮

malead=movavg(TMW_CLOSE,type,3) % Leading moving average
malead = 1000×1

  100.2500
  100.3580
  101.0900
  100.4300
   99.3183
   97.8217
   97.0833
   97.1950
   97.4133
   96.1133
      ⋮

Постройте график начальных и отстающих скользящих средних значений.

plot(TMW_CLOSE(1:100))
hold on
plot(malead(1:100))
plot(malag(1:100))
hold off
legend('Actual','Lead','Lag')

Figure contains an axes. The axes contains 3 objects of type line. These objects represent Actual, Lead, Lag.

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

свернуть все

Данные для финансового ряда, заданные как ориентированная на столбцы матрица, таблица или расписание. Расписания и таблицы должны содержать переменные только с числовым типом.

Типы данных: double | table | timetable

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

Типы данных: char | string

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

Примечание

The windowSize аргумент применяется только к скользящим средним значениям, чьи type является 'simple', 'square-root', 'linear', 'square', 'exponential', 'triangular', или 'modified'.

Типы данных: double

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

Примечание

Длина весов (N) определяет размер окна скользящего среднего (windowSize). The weights аргумент применяется только к 'custom' type скользящего среднего значения.

Чтобы вычислить скользящее среднее значение с пользовательскими весами, веса (w) сначала нормируются так, что суммируются до единицы:

W(i) = w(i)/sum(w), for i = 1,2,...,N

Нормированные веса (W) затем используются, чтобы сформировать N взвешенное скользящее среднее значение (y) входных данных (x):

y(t) = W(1)*x(t) + W(2)*x(t-1) + ... + W(N)*x(t-N)

Начальные значения скользящего среднего значения в пределах размера окна затем корректируются в соответствии с методом, заданным в аргументе пары "имя-значение" Initialpoints.

Типы данных: double

(Необязательно) Указывает, как скользящее среднее значение вычисляется в начальных точках (прежде чем будет достаточно данных для заполнения окна), задается в виде символьного вектора или строки с использованием одного из следующих значений:

  • 'shrink' - Инициализирует скользящее среднее значение таким образом, чтобы начальные точки включали только наблюдаемые данные

  • 'zero' - Инициализирует начальные точки с 0

  • 'fill' - Заполняет начальные точки NaNs

Примечание

The Initialpoints аргумент применяется ко всем type спецификации кроме 'exponential' и 'modified' опции.

Типы данных: char | string

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

свернуть все

Серия скользящего среднего, возвращенная с одинаковым числом строк (M) и того же типа (матрица, таблица или расписание), что и вход Data.

Ссылки

[1] Achelis, S.B. Технический анализ от A до Z. Second Edition. McGraw-Hill, 1995, pp. 184-192.

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