535 / 736SMA

Simple moving average

Простая скользящая средняя

SMA — обычное среднее, окно расчёта которого сдвигается с появлением новых цен. Простой пример объясняет равные веса, уход старых значений и разницу между пропуском и нулём.

Simple moving average, или SMA, — простая скользящая средняя: выбранные значения складывают и делят сумму на их количество. На ценовом графике последовательность результатов образует линию, позволяющую увидеть движение без каждого мелкого колебания. Чтобы её понимать, нужно знать исходные цены, длину окна и временной интервал расчёта.

Яна выписывает цены закрытия нескольких свечей и хочет получить краткое представление об этих данных. SMA в объяснении Fidelity — обычное арифметическое среднее: сложить цены и разделить на их количество. Все включённые цены имеют равный вес. Поэтому свеча с большим объёмом торгов не получает преимущества только из-за объёма. Если назначать веса по объёму, получится уже другой вид средней. [1]

Яне нужен обзор постоянной длины, а не среднее за всю историю. Поэтому с появлением новой цены она исключает самую старую. Именно так TradingView описывает скользящее окно SMA. Изменение результата равно разности входящего и уходящего значений, делённой на длину окна. Средняя может измениться, даже если последняя цена осталась такой же, как предыдущая. Ниже это показано на числах. [2]

В TradingView параметр Source выбирает исходную цену. SMA по Close, цене закрытия свечи, может отличаться от средней по High, её максимальной цене. Timeframe задаёт интервал данных индикатора; он не обязательно совпадает с интервалом показанного графика. Поэтому Яна записывает также рынок, длину окна и этот интервал. Само количество наблюдений ещё не говорит, сколько календарных дней охватывает расчёт. [2] [5]

В начале записей Яны пока недостаточно цен для полного выбранного окна. Из определения среднего следует, что нужно решить, как поступить: пока не показывать результат или явно использовать более короткое окно. Незаметно подставлять нули нельзя. Нулевая цена — настоящее числовое значение, снижающее среднее, а не отметка «неизвестно». Это различие важно и для пропусков внутри ряда. [1]

В записи попадает необычно высокая цена. В SMA её вес такой же, как у остальных цен, но большое значение поднимает среднюю. Этот вклад сохраняется, пока цена входит в окно, и исчезает после её исключения. Поэтому Яна может заметить изменение наклона линии из-за ухода старого скачка, а не из-за нового резкого движения рынка. Это следствие расчёта, а не дополнительная информация. [2]

Яна увеличивает период, и короткие колебания становятся менее заметными. Fidelity отмечает, что более длинная SMA обычно сильнее сглаживает, но и больше отстаёт от исходных цен. Мы выбираем, какую часть краткосрочных изменений убрать из вида. Поиск самой красивой линии на прошлом графике сам по себе не доказывает, что настройка лучше отразит будущее движение: будущие цены ещё не вошли в расчёт. [1]

Яна смотрит на живой график, и последняя точка SMA движется. TradingView объясняет, что Close незавершённой свечи ещё не окончателен: он меняется с поступлением данных. Средняя, включающая этот вход, тоже пересчитывается. Поэтому правило, основанное на завершённых закрытиях, должно оценивать завершённые данные. Временное пересечение внутри свечи может исчезнуть к её закрытию. [3]

Цена поднялась выше SMA. Что это означает для Яны? Только точное правило определит вход, выход, размер позиции и расходы. TradingView различает создание и исполнение заявки и предупреждает об overfitting — подгонке правил под случайности конкретной истории. Правило нужно проверить и на отдельных данных, не продолжая его настраивать. Одно пересечение не доказывает ни исполнимость сделки, ни её прибыльность. [4]

Пример · SMA

Цена прежняя, средняя изменилась

Возьмём вымышленные цены закрытия завершённых свечей: 100000, 100030 и 100060 USD/BTC. Их среднее: (100000 + 100030 + 100060) / 3 = 100030 USD/BTC. Следующая свеча снова закрывается на 100060 USD/BTC. Самая старая цена уходит, и теперь расчёт такой: (100030 + 100060 + 100060) / 3 = 100050 USD/BTC. SMA выросла на 20 USD/BTC, хотя последняя цена не изменилась. Более высокое новое значение заменило более низкое старое. Это пример расчёта, а не доходность сделки и не текущие рыночные данные.

Для полной картины прочитайте эту статью вместе с Moving average, Exponential moving average, Moving average crossover, Timeframe, OHLCV, Backtesting. На эту статью также ссылаются Technical indicator, Moving average, Exponential moving average, Moving average crossover.

01Получает ли последняя цена больший вес в SMA?

Нет. В полном окне все включённые цены равновесны. Новая цена меняет результат, заменяя самую старую, а не благодаря особому весу. Новейшим ценам придают больше значения другие методы, например EMA.

02Можно ли записать ноль вместо отсутствующей цены?

Только ценой изменения смысла. Ноль означает нулевую цену, а не отсутствие записи. Решите, не показывать ли результат при нехватке данных или использовать явно обозначенное короткое окно, и проверьте обработку пропусков в конкретном инструменте. Иначе вы можете сравнивать средние, рассчитанные по-разному.

DOC · 001Fidelity — SMAДокументация DOC · 002TradingView — SMAДокументация DOC · 003TradingView — RepaintingДокументация DOC · 004TradingView — StrategiesДокументация DOC · 005TradingView — MTFДокументация
Обновлено: Сначала источники · Не является инвестиционной рекомендацией