Money Flow Index(iMFI)関数|MT4インディケータ
佐川直弘(株式会社トリロジー取締役)
MetaTrader 4(MT4)を使ったFX自動売買において、テクニカル指標の理解と活用は非常に重要です。この記事では、Money Flow Index(iMFI)インディケータについて、初心者にもわかりやすく解説します。
Money Flow Index(iMFI)とは?
Money Flow Index(マネーフローインデックス、MFI)は、価格と取引量を基にしたテクニカル指標で、売買の強さを評価するために使用されます。MFIは、相対力指数(RSI)と類似していますが、取引量も考慮する点が異なります。MFIの値が80以上の場合は過買い、20以下の場合は過売りとされ、トレンドの転換点を見極めるために使用されます。
iMFIの計算方法
MT4では、Money Flow Indexを計算するためにiMFI()関数を使用します。この関数は以下のように定義されています。
- 関数仕様
- double iMFI(
string symbol, // 通貨ペア種類
int timeframe, // 時間軸種類
int period, // 移動平均の期間
int shift // 取得するバーの位置(0が最新のバーを表し、1~が過去のバーに遡っていきます)
);
この関数は、指定された通貨ペアと時間軸におけるMoney Flow Indexの値を返します。
引数の説明
- symbol
- 通貨ペアの種類を指定します。例えば、"EURUSD"や"GBPJPY"など。
- timeframe
- 時間軸の種類を指定します。例えば、1分足(1)、5分足(5)、1時間足(60)など。
- period
- 移動平均の期間を指定します。
- shift
- 取得するバーの位置を指定します。0が最新のバーを表し、1以上の数値が過去のバーを表します。
サンプルコード
以下に、iMFI()関数を使用して最新のバーのMoney Flow Index値を取得するサンプルコードを示します。
- サンプルコード
- // EURUSDの1時間足で最新のバーのMoney Flow Index値を取得する例
double mfi_value = iMFI(“EURUSD", PERIOD_H1, 14, 0);
Print(“EURUSDの1時間足の最新のMoney Flow Index値: “, mfi_value);
このサンプルコードでは、"EURUSD"の1時間足における最新のMoney Flow Index値を取得し、ターミナルウィンドウに表示します。
以下は、Money Flow Indexを使って買いシグナルや売りシグナルを判断する簡単な例です。
- 応用例
- // EURUSDの1時間足でMoney Flow Indexを使って買いシグナルや売りシグナルを判断する例
double mfi_current = iMFI(“EURUSD", PERIOD_H1, 14, 0);
double mfi_previous = iMFI(“EURUSD", PERIOD_H1, 14, 1);
if (mfi_current > 80 && mfi_previous <= 80) {
Print(“売りシグナル: Money Flow Indexが80を超えました。");
} else if (mfi_current < 20 && mfi_previous >= 20) {
Print(“買いシグナル: Money Flow Indexが20を下回りました。");
}
このコードは、Money Flow Indexが80を超えた場合に売りシグナルを、20を下回った場合に買いシグナルを生成します。
まとめ
Money Flow Index(iMFI)インディケータは、価格と取引量を基に売買の強さを評価するための強力なツールです。MT4のiMFI()関数を使用することで、簡単にこのインディケータの値を取得し、トレード戦略に活用することができます。初心者の方も、この基本的な使い方を理解して、実際のトレードに応用してみてください。
ディスカッション
コメント一覧
まだ、コメントがありません