>>> На главную <<<

Статья на вики

Общее название для семейства функций, значения которых в каждой точке определения равны некоторому среднему значению исходной функции за предыдущий период. Математически - это один из видов свертки.

Используются (в том числе) в аналитике [market-stocks]. На базе скольязих средних построен алгоритм [arima-alghoritm]. Основная задача - сглаживание краткосрочных колебаний во временных рядах.

Виды скользящих средних:

SMA - это среднее за некоторый период

\[SMA = \frac{A_1 + A_2 + ... + A_n}{n}\]

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

WMA - иногда при построении скользящей средней некоторые значения исходной функции целесообразно сделать более значимыми. Например, если предполагается, что внутри интервала сглаживания имеет место нелинейная тенденция, или, в случае временных рядов, последние — более актуальные — данные могут быть весомее предыдущих. Бывает, что исходная функция многомерна, то есть представлена сразу несколькими связанными рядами. В этом случае может возникнуть необходимость объединить в итоговой функции скользящей средней все полученные данные. Например, временные ряды биржевых цен обычно для каждого момента времени представлены как минимум двумя значениями — ценой сделки и её объёмом. Необходим инструмент для вычисления скользящей средней цены, взвешенной по объёму.

WMA (точнее линейно взвешенное скользящее среднее) — скользящее среднее, при вычислении которого вес каждого члена исходной функции, начиная с меньшего, равен соответствующему члену арифметической прогрессии. То есть, при вычислении WMA для временного ряда, мы считаем последние значения исходной функции более значимы чем предыдущие, причём функция значимости линейно убывающая.

EMA - разновидность WMA, использует веса, которые убывают экспоненциально и никогда не равны нулю.

\[EMA = (Value_{today} * (\frac{Smothing}{1 + Days})) + EMA_{Yesteday} * (1 - (\frac{Smothing}{1 + Days}))\]

Здесь $Smothing$ - сглаживающий вес

Возможны EMA произвольного порядка.

Кроме того, применяются:

Пример реализации на python

pyEx - поставщик данных

смотри ссылку

Смотри [pandas-rolling-window]

>>> На главную <<<