アフィリエイト広告を利用しています

広告

posted by fanblog

広告

posted by fanblog
2013年07月26日
第6回 指数平滑移動平均線
(1) 指数平滑移動平均線の計算式

本日の移動平均=α × 本日の終値+(1-α) × 前日の移動平均
α=2 / (周期+1)


コンピュータで効率的に計算するためこの式を変形すると下記のとおりです。

本日の移動平均 = (2 × 本日の終値 + (周期 - 1) × 前日の移動平均) / (周期 + 1)

(2) 指数平滑移動平均線の計算

Private Function 指数平滑移動平均線算出(データ配列, 周期, 実表示本数)

n = UBound(データ配列)
ReDim a(1 To 実表示本数, 1 To 1)

表示開始行 = n - 実表示本数 + 1
移動平均 = データ配列(1, 1)

j = 1
For i = 1 To n
  移動平均 = (2 * データ配列(i, 1) + (周期 - 1) * 移動平均) / (周期 + 1)

  If i >= 表示開始行 Then
    a(j, 1) = 移動平均
    j = j + 1
  End If
Next i

指数平滑移動平均線算出 = a

End Function


指数平滑移動平均線算出の関数です。
入力引数はデータ配列, 周期, 実表示本数です。
データ配列は終値配列です。元データ400本をそのまま渡します。これは画面に表示されないデータも計算対象になるからです。
周期は何本の平均をとるかの指定です。21とか13等の数値です。プロパティシートで設定します。
実表示本数は画面に表示する本数です。データが400本あってもすべて表示するわけではないので100とか200とかの数値です。プロパティシートで設定します。

出力は指数平滑移動平均配列です。

(3) 指数平滑移動平均線の表示
(4) 複数の指数平滑移動平均線の表示
(5) Y軸の設定

単純移動平均線と同様です。 こちら をご参照下さい。

(6) プロパティシート




指数平滑移動平均線のB列をTRUEにしてC列以降に周期を入力して下さい。何本でも指数平滑移動平均線を表示することができます。
使用方法は単純移動平均線と同様です。 こちら をご参照下さい。



エクセルファイルです。

    ダウンロード


前へ   次へ

Posted by vbafan at 14:04 | この記事のURL
この記事のURL

×

この広告は30日以上新しい記事の更新がないブログに表示されております。