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) предыдущие точки данных и текущая точка данных.

Примечание

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

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

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

Примечание

Длина весов (N) определяет размер окна скользящей средней (windowSize). 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

Примечание

Initialpoints аргумент применяется ко всем type спецификации, за исключением 'exponential' и 'modified' варианты.

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

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

свернуть все

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

Ссылки

[1] Ахелис, С. Б. Технический анализ от А до З. Второе издание. Макгроу-Хилл, 1995, стр. 184-192.

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