FXで移動平均を計算する方法
FXにおける移動平均とは
移動平均(MA)とは、価格の系列を新しい系列に変換する統計的な平滑化手法です。FXのチャートでは、通常、各ローソク足の終値(または場合によってはミッド価格)などの価格項目に適用します。
MAは今日の値を計算するのに過去の値を使うため、一般的には「現在の正確な価格」よりも、直近の“トレンド水準”を反映します。主要な入力は次のとおりです:
- 価格系列:平均する値(一般的には各バーの終値)。
- 見ている期間(N):過去の何本のバーを含めるか。
- 手法:通常 単純移動平均(SMA) または 指数移動平均(EMA)。
単純移動平均(SMA)の計算方法
期間NのSMAは、バー t における直近 N 個の価格値の算術平均です。
式:
- SMA(t) = (Price(t) + Price(t-1) + … + Price(t-N+1)) / N
手順:
- 期間の長さ N を選びます(例:20本)。
- 価格項目を選びます(例:ローソク足の終値)。
- 新しいバーごとに、直近の N 本の終値を集めます。
- 合計して N で割ります。
- 最初の N 本以降の各バーについて繰り返します。
重要な前提と制限:
- 結果は N に依存します。期間が長いほどより平滑化されますが、遅れも大きくなります。
- 結果は 時間足(例:1H と 4H)に依存します。バーの並びが変わるためです。
指数移動平均(EMA)の計算方法
EMAも価格を平滑化しますが、古いバーよりも直近のバーにより大きな重みを与えます。
一般的なEMAの定義:
- 最初のEMA値を計算します(多くの場合、最初のN本に対するSMAに基づくなど、プラットフォームの慣習に依存します)。
- その後のバーは再帰的に更新します。
式(再帰形):
- EMA(t) = Price(t) × k + EMA(t-1) × (1 − k)
- k = 2 / (N + 1)
手順:
- N を選び、k = 2/(N+1) を計算します。
- 選んだ初期化方法により EMA(t-1) を確立します。
- 新しいバーごとに、再帰式を適用します。
材料上の制限: チャートツールによってEMAの初期化がわずかに異なる場合があります(特に最初に利用可能な値の部分)。そのため、平滑化定数 k が同じでも、EMA系列の開始部分は異なることがあります。
例:確認と実践的な検証
実装は(特にEMAの初期化や、正確な価格入力の部分で)異なるため、独立した確認が役立ちます。
SMAの確認:
- 小さな期間(例:N = 3)を使います。
- 選んだ直近3つの価格を書き出します。
- 手計算で平均を出し、そのバーに表示されているSMAと比較します。
EMAの確認:
- 同じ N でEMAの式を使い、初期EMAについてプラットフォームの慣習を確認します。
- その初期点から先へ再計算し、後続の値が一致するか確かめます。
よくある落とし穴(確認すべき点):
- close(終値)か mid(ミッド)か open(始値)を使っていますか?
- 特定の時間足のローソク足に基づく値ですか?
- プラットフォームは期間をNとしてラベル付けしていますか、それとも別の解釈をしていますか?
移動平均の関連する制限とリスク
移動平均は予測ではなく説明です。主な制限は次のとおりです:
- 遅行:MAは過去データから作られるため、価格が変化した後に反応します。
- パラメータへの感度:期間の長さ N と手法(SMA vs EMA)によって、シグナルの形が変わり得ます。
- 確実性はない:MAは過去の方向性を要約できますが、将来の結果を保証することはできません。
検証のためには、常に再現可能な入力(正確な価格項目と時間足)に依存し、EMAについては、ツールで最初のEMA値がどのように初期化されるかを確認してください。初期化が異なれば、式が正しくても、初期のEMAポイントは一致しません。