SMMAの計算例(ワークド例)とは?
端的な答え
SMMA(Smoothed Moving Average:平滑化移動平均)の計算例(ワークド例)では、1つの新しいSMMA値が、前のSMMA値と次の価格観測値からどのように計算されるかを示します。SMMAは再帰型なので、最初に初期のSMMA値(仮定)を置き、その後は同じ計算ルールを繰り返し適用します。
仕組みと定義
SMMAは、時系列を平滑化するために設計された移動平均の一種です。「平滑化」とは、新しい出力値が新しいデータを部分的に反映しつつ、過去データからの記憶(影響)も引き継ぐことを意味します。
SMMAの更新を表す一般的な方法は次のとおりです。
- 平滑化期間を N とします。
- Price[t] を時刻 t における次の入力(例:終値)とします。
- SMMA[t] を Price[t] を処理した後のSMMAとします。
- すると:
- SMMA[t] = (SMMA[t−1] × (N−1) + Price[t]) / N
どの計算例でも、必ず決めておくべき変数と前提は次のとおりです:
- N(期間の長さ) は計算の前に選びます。
- 入力系列(例:終値)を定義する必要があります。同じSMMAでも、入力が違えば結果も変わります。
- 初期値SMMA[0] を定義する必要があります。多くの説明では、最初のN個の観測値の平均に等しいとしますが、最初の価格に設定する場合もあります。ここでは、選択を明示します。
証拠または計算例(完全に数値で)
数学を独立に検算できるように、次の固定条件を仮定します:
- 平滑化期間:N = 4。
- 入力系列:Price[t] は仮定した終値とします。
- 計算例の初期仮定:SMMA[3] は最初の4つの価格の単純平均(これは標準的な初期化の1つです)。
仮定する価格(時刻0〜4):
- Price[0] = 10
- Price[1] = 12
- Price[2] = 11
- Price[3] = 13
- Price[4] = 14
手順1:t = 3 でSMMAを初期化
Price[0]..Price[3] の単純平均:
- (10 + 12 + 11 + 13) / 4 = 46 / 4 = 11.5
したがって:
- SMMA[3] = 11.5
手順2:t = 4 の次のSMMA値を計算
N = 4 を使って更新ルールを適用します:
- SMMA[4] = (SMMA[3] × (N−1) + Price[4]) / N
- SMMA[4] = (11.5 × 3 + 14) / 4
- SMMA[4] = (34.5 + 14) / 4
- SMMA[4] = 48.5 / 4 = 12.125
計算例の結果:
- N = 4 で、上記の初期化を行うと、SMMAは次の価格更新後に 11.5 から 12.125 へ移動します。
これを機械的に読む方法(単独の売買シグナルとして扱わずに):
- 新しい価格(14)は平均を押し上げますが、過去の影響が完全に置き換わるわけではありません。前のSMMAの重みのうち 3/4 が引き継がれるためです。
制限とリスク(重大な失敗パターン)
- 初期化の選択が初期値を変える。 SMMAを別の方法で初期化する(たとえば、SMMA[3]を平均ではなくPrice[3]に設定する)と、同じNと入力でもSMMAの初期の経路が変わります。
- 入力定義が重要。 終値と別の価格系列を使うと、Price[t]が変わるため、SMMAの出力も変わります。
- 反応が遅い。 式は前のSMMAの (N−1)/N を保持するため、急な変化はSMMAに徐々に反映されます。これは速い値動きに遅れを生む可能性があります。
- 自動的な予測精度はない。 移動平均は過去データに対する平滑化の操作であり、未来の方向性を本質的に確認するものではありません。
検証と次の質問
計算例を独立に検証するには、次を再計算します:
- 初期平均(46/4 = 11.5)
- 次の更新(11.5×3 + 14 を計算し、その後4で割る)
別の計算例が欲しい場合は、希望する前提を指定してください(Nの値、入力系列、SMMAの初期化方法)。そうすれば、同じ計算手順を再現できます。
DOCUMENT END