MAを深掘りしていて、平滑移動平均線(SMMA)の計算式とその意味がわからな過ぎたので、中学レベル?高校レベル?の数学で解き明かしてみるよ。
こんなの知らなくてもFXはできるよ(/・ω・)/hahha
移動平均線(MA)については、こちらの記事でまとめているよ
SMMAの式
式はこれ。
SMMA = { ひとつ前のSMMA × (n-1) + 現在価格 } /n
1本前のSMMAが算出できないときは、最初だけSMAと同じ式を使う。
SMA = n本の価格の合計 /n
これらの式に、適用価格を古い順にx1,x2,x3…として、計算してみるよ!
最初のSMMA
「5SMMA」を計算していくことにする。
最初はSMAと同じ式を使うので、
5SMMA=(x1+x2+x3+x4+x5)/5
このあと、どんどんややこしくなるので、最初のSMMAは”E”とおく。
ちなみにnを使って表すとこんな感じになる↓
5SMMA = 5SMA = x1/n + x2/n + x3/n + x4/n + x5/n
2つ目以降のSMMA
式に当てはめていくよ!
今回は a = n-1 と置くことにする。
2つ目の5SMMA
現在の終値に x6 を代入して
5SMMA
= { E × a + x6 } / n
= x6/n + aE/n
3つ目の5SMMA
現在の終値に x7 を代入して
5SMMA
= {( x6/n + aE/n ) × a + x7 } / n
= ( x7 + ax6/n + a²E/n ) / n
= x7/n + ax6/n² + a²E/n²
4つ目の5SMMA
現在の終値に x8 を代入して
5SMMA
= {( x7/n + ax6/n² + a²E/n² ) × a + x8 } / n
= ( x8 + ax7/n + a²x6/n² + a³E/n² ) / n
= x8/n + ax7/n² + a²x6/n³ + a³E/n³
5つ目の5SMMA
現在の終値に x9 を代入して
5SMMA
= {( x8/n + ax7/n² + a²x6/n³ + a³E/n³ ) × a + x9 } / n
= { x9 + ax8/n + a²x7/n² + a³x6/n³ + (a^4)E/n³ } / n
= x9/n + ax8/n² + a²x7/n³ + a³x6/(n^4) + (a^4)E/(n^4)
6つ目の5SMMA
現在の終値に x10 を代入して
5SMMA
= {( x9/n + ax8/n² + a²x7/n³ + a³x6/(n^4) + (a^4)E/(n^4) ) × a + x10 } / n
= { x10 + ax9/n + a²x8/n² + a³x7/n³ + (a^4)x6/(n^4) + (a^5)E/(n^4) } / n
= x10/n + ax9/n² + a²x8/n³ + a³x7/(n^4) + (a^4)x6/(n^5) + (a^5)E/(n^5)
小まとめ:SMMAの式はこうなる!
n-1 = a と置くと、
nSMMA
= 1/n × 最新価格 + a/n² × 1つ前の価格 + a²/n³ × 2つ前の価格 + a³/(n^4) × 3つ前の価格 + …
やっぱりこれもよくわかんねぇ( ;∀;)
解説を試みていくぞ!
SMMAの式からわかること
適用価格n本分のnSMMAの式を↓のようにした理由をまとめていく。
nSMMA
= 1/n × 最新価格 + (n-1)/n² × 1つ前の価格 + (n-1)²/n³ × 2つ前の価格 + (n-1)³/(n^4) × 3つ前の価格 + …
最初のSMMAとしたEはどこへ?
最初のSMMAであるEの係数の推移を見てみる。
SMMA | 1つ目 | 2つ目 | 3つ目 | 4つ目 | 5つ目 | 6つ目 |
Eの係数 | 1 | (n-1)/n | (n-1)²/n² | (n-1)³/n³ | {(n-1)^4}/(n^4) | {(n-1)^5}/(n^5) |
ここから、Nつ目のEの係数は
Eの係数 = {(n-1)/n} ^ (N-1)
になると推察される。
nもNも自然数なので、
(n-1)/n < 1
であるため、N→∞ のとき {(n-1)/n}^(N–1) は限りなく0に近づく。
参考に n=5 のとき、係数Eはこんな感じで推移する。(※x=N-1とする)
から、Eは無視していいと思うのよ(*’ω’*)←
仮で置いただけだし…
いつか消えてなくなるはずなので、削っちゃうよ。
価格の重みづけ具合を可視化!
n本より前の価格も反映されている!?
SMMAの式から、赤字部分を計算して、円グラフに落とし込む。
nSMMA = 1/n × 最新価格 + (n-1)/n² × 1つ前の価格 + (n-1)²/n³ × 2つ前の価格 + (n-1)³/(n^4) × 3つ前の価格 + …
赤字部分の合計は1になるはずなので…円グラフの合計が1になるように調整してみると…
最新価格が青→薄くなるにつれて古い価格の反映度。
そして緑の部分は、n本より前の価格が占める割合。
計算してみると、nSMMAは n本より前の価格も数値に反映されているみたい。
100SMMAだとこんな感じ↓
n本より前の価格が占める割合はnが増えると増えるのだけど、大体30~40%になった。
最新の価格と過去の価格の重みづけの変化
SMMAの式から、赤字部分を計算して、そのままグラフに落とす。
nSMMA = 1/n × 最新価格 + (n-1)/n² × 1つ前の価格 + (n-1)²/n³ × 2つ前の価格 + (n-1)³/(n^4) × 3つ前の価格 + …
ほぼ線形…かな?
最新の価格を重視しつつ、時間経過とともに古い価格の重みを減らしていく感じだね。
まとめ
SMMA = { ひとつ前のSMMA × (n-1) + 現在価格 } /n
SMMAの式を変形していくと
nSMMA = 1/n × 最新価格 + (n-1)/n² × 1つ前の価格 + (n-1)²/n³ × 2つ前の価格 + (n-1)³/(n^4) × 3つ前の価格 + …
という式で表すことができる。
そしてどうやら、nSMMAのn本分の価格よりもさらに過去の価格も反映されているMAみたい…!
(どっかで計算を間違えてなければ…なにか間違えてたら指摘してほしいぜ…)
単純移動平均線(SMA)より、さらに過去の価格の影響を拾ってきちゃう分、価格に対して反応が鈍感になるMA。
人気ないらしいから、エントリートリガーとして使うのは難しいのかもしれない…?
価格に対する重みづけの感じは、すごく合理的に思えたけども(; ・`д・´)…人気ないのか…