FX-EA System Projectはこちら公式ラインに登録して
プレゼントをもらう

【MQL】指定したカスタムインジケーターの値を返す『iCustom関数』についてわかりやすく説明してみた

MQL EA iCustom関数MT4EA作成

iCustom関数

iCustom関数は、指定したカスタムインジケーターの値を返す関数です。

iCustom関数は、独自インジケーターを組み込む際に利用することが多いです。

また、EAを作る際に外部のサインを出すインジケーターがあった時に、

iCustom関数を利用するとインジケーターフォルダに有るインジケーターを自由に呼び出すことが可能です。

サインインジケーターを自動売買化する際によく利用されます。

iCustom関数の定義

double  iCustom(
   string       symbol,     // 通貨ペア
   int          timeframe,  // 時間軸
   string       name        // コンパイルしたカスタムインジケータプログラム名(ファイルパス付)
   ...                       // カスタムインジケータの入力パラメータ(必要な場合)
   int          mode        // ラインインデックス
   int          shift       // shift
   );

 

iCustom関数の引数の説明

iCustom関数の引数の説明をします。

項目名説明
stringsymbolシンボル名
inttimeframe時間枠
stringnameコンパイルしたカスタムインジケータプログラム名
…..カスタムインジケータの入力パラメータ
intmodeラインインデックス
intshiftいくつ前の値を取得するか

symbol

インジケータ計算するデータの通貨ペア名。

NULLは現在の通貨ぺアを意味します。

timeframe

時間軸。

ENUM_TIMEFRAMES列挙の値を指定します。

0は現在の時間軸を意味します。

name

コンパイルされたカスタムインジケータプログラム名。

インジケータディレクトリ(\MQL4\Indicators)から検索されます。

サブディレクトリに配置されている場合は、”サブディレクトリ名\\カスタムインジケータ名”で指定します。

カスタムインジケータの入力パラメータです。

 

渡された入力パラメータの順序は、カスタムインジケータの宣言順に対応させる必要があります。

mode

ラインインデックス。0~7の範囲で指定できます。

SetIndexBuffer()関数で指定したインデックスと一致する必要があります。

shift

インジケータバッファから取得する値のインデックス。

(現在バーを基準にして、指定した時間軸のバー数分を過去方向へシフト)

iCustom関数を学ぶための本

iCustom関数を学ぶための本があります。

iCustomで変幻自在のメタトレーダー
  • 単行本:3,080円
  • Kindle:2,310円


単行本
購入はこちら


Kindle
購入はこちら

まとめ

iCustom関数はプログラミング初心者は使わないほうが良いですが、

少しずつMQLプログラミングを学び始めたら用途に合わせて活用すると幅が広がります。

コメント

タイトルとURLをコピーしました