MQL4MQL5 テクニカル指標

iMFI()

できること
マネーフローインデックス(MFI)の値を取得する
対応
MQL4・MQL5

iMFI() とは

MFI(価格と出来高から計算する、出来高加重の RSI のような指標)を計算する関数です。0〜100 の値で、80 以上が買われすぎ、20 以下が売られすぎの目安とされます。FX の出来高はティック数です。

iMFI() の書式と引数

MQL4 の場合MT4

double iMFI(string symbol, int timeframe, int period, int shift)
引数型省略時説明
symbolstring必須銘柄名。チャートの銘柄なら _Symbol(NULL も可)。
timeframeint必須時間足。0 または PERIOD_CURRENT でチャートの時間足。
periodint必須期間(14)。
shiftint必須値を取得するバーの位置。0 が現在(未確定)のバー、1 が確定したひとつ前のバー。

戻り値(MQL4)

MFI の値(0〜100)。

MQL5 の場合MT5

int iMFI(
   string symbol,
   ENUM_TIMEFRAMES period,
   int ma_period,
   ENUM_APPLIED_VOLUME applied_volume
)
引数型省略時説明
symbolstring必須銘柄名。チャートの銘柄なら _Symbol(NULL も可)。
periodENUM_TIMEFRAMES必須時間足。PERIOD_CURRENT でチャートの時間足。
ma_periodint必須期間(14)。
applied_volumeENUM_APPLIED_VOLUME必須出来高の種類。VOLUME_TICK(ティック出来高)または VOLUME_REAL。

戻り値(MQL5)

インジケーターのハンドル。

iMFI() の使い方(コード例)

MQL4

Print("MFI:", DoubleToString(iMFI(_Symbol, 0, 14, 1), 1));

MQL5

int h = iMFI(_Symbol, PERIOD_CURRENT, 14, VOLUME_TICK);
double v[];
if(h != INVALID_HANDLE && CopyBuffer(h, 0, 1, 1, v) == 1)
   Print("MFI:", DoubleToString(v[0], 1));
IndicatorRelease(h);

OnTick()・OnStart() などの関数の中に書いて使う例です。MetaEditor でコンパイルできることを確認済みです。

iMFI() の注意点

  • MQL5 では値ではなく「ハンドル」が返ります。ハンドルは OnInit() で1回だけ作り、CopyBuffer() で値を読み出します。

関連する関数

テクニカル指標の関数一覧

← MQL関数リファレンスで、ほかの関数を探す

サイバーシグナルインジケーターと8大特典プレゼント

MT4/MT5自動売買EAサイバーラッシュ無料プレゼント

MT4/MT5自動売買EAサイバードラゴン無料プレゼント

グルグルトレイン(グルトレ)EAを無料プレゼント

ライントレードEAサイバートレナビを無料プレゼント

ゴトー日の東京仲値が狙える自動売買EA

LINE友だち追加

注目記事ランキング

  1. 1

    【サクソバンクチャート】月曜日の早朝から動く為替レート

  2. 2

    【MT4/MT5対応】チャート上に手書きできる描画インジケーターの無料配布

  3. 3

    【サンデーダウ・サンデードル円】土日に動く中東レートの表示方法と見方を解説

  4. 4

    【先着50名】グルトレEAを無料プレゼントしています!

  5. 5

    保護中: 【勝率UP!】曜日や日・月別為替相場の動きでFXを見極める

  6. 6

    【MT4/MT5対応】「sign_alert」シグナルアラートやメール送信するインジケーターの無料配布

  7. 7

    無料メールマガジン「マナブ式FX」|毎朝6時、今日の為替相場予想が届く

  8. 8

    【原油・金】WTIとゴールドの商品レート一覧と見やすいチャート

  9. 9

    VQインジケーターとは?MT4/MT5版を無料配布【設定例つき】

  10. 10

    【バイナリーオプション攻略法】全勝!+497,363円の利益が出た手法とは?

TOP
CLOSE