単純移動平均(SMA)とは — 計算式・性質・注意点

仕様

英語名Simple Moving Average
分類トレンド系
既定パラメータ期間 20
出力系列SMA(価格チャートに重ねる)
本サイトの実装ブラウザ内でインクリメンタル計算。既知値テストで検証済み(算出方法と検証方法)

概要

単純移動平均(SMA)は、直近 nn 本の終値を等しい重みで平均した値です。日々の細かな値動きをならし、価格の水準がどのあたりにあるかを連続した線として表します。多くのテクニカル指標(ボリンジャーバンド、ストキャスティクスの平滑化、CCI など)の部品としても使われる、最も基本的な平滑化手法です。

計算式

時点 tt の終値を CtC_t、期間を nn とすると、

SMAt=1n∑i=0n−1Ct−i\mathrm{SMA}_t = \frac{1}{n} \sum_{i=0}^{n-1} C_{t-i}

計算手順

  1. 直近 nn 本の終値を合計する
  2. 合計を nn で割る
  3. 1 本進むごとに、最も古い終値を合計から差し引き、新しい終値を加える(移動和)

最初の n−1n-1 本は平均を取るのに必要な本数がそろわないため、値を持ちません。

性質

一般的な使われ方

SMA は、価格と平均線の位置関係、複数期間の SMA の位置関係、SMA の傾きなどを観察する目的で広く用いられます。短期の SMA が長期の SMA を上抜ける・下抜ける事象は、それぞれ「ゴールデンクロス」「デッドクロス」と呼ばれます。

これらはいずれも過去の価格から機械的に計算された事実であり、その後の値動きを示すものではありません。

注意点

本サイトの実装

循環バッファと移動和により、新しい足が 1 本増えるごとに O(1)O(1) で更新します。TA-Lib の SMA と一致することを既知値テストで確認しています。

計算例(合成データ)

計算例: 固定した乱数で生成した合成データに単純移動平均(既定パラメータ)を適用したものです。実在の銘柄・価格ではありません。ドラッグで移動、ホイール・ピンチで拡大縮小できます。

関連する指標

本解説は上記文献に基づく一般的な見解の紹介であり、指標の解釈は流派・文献により異なります。将来の値動きを予測・保証するものではありません。詳細は免責事項をご覧ください。

本ページには広告が含まれます。