移動平均線の値を取得するiMA()関数(MQL4)

インディケータ取得関数iMA()

移動平均線の値を取得します。

書式

double  iMA(
	string       symbol,       // 通貨ペアを指定
	int          timeframe,    // 時間軸を指定する(定数)
	int          ma_period,    // MAの平均期間(ローソク足の数)を指定
	int          ma_shift,     // MAシフト(ローソク足何本分を右にずらすか指定)
	int          ma_method,    // MAの平均化メソッド(平均線の種類を指定)
	int          applied_price,// 適用価格(終値や始値などを指定)(定数)
	int		shift         // シフト(過去の値を参照できる、ローソク足数で指定
	);

引数

double  iMA(
	NULL,       // 現在のチャートの通貨ペアの値を取得する。
	PERIOD_CURRENT,// 時間軸を指定する(定数)
	12,   		// ローソク足12本の移動平均
	0,     		// 移動平均線を右にずらさない
	MODE_SMA,    // 単純移動平均線を指定
	PRICE_CLOSE,	// 平均を出すための値を終値に指定
	0         	// 現在の値を取得
	);

実際のインディケータでiMA()関数の引数を確認してみる

double  iMA(
画像左青枠			NULL,       // 現在のチャートの通貨ペアの値を取得する。
画像右青枠			PERIOD_CURRENT,// 時間軸を指定する(定数)
期間:				12,   		// ローソク足12本の移動平均
表示移動:			10,     		// 移動平均線を右に10ずらす
移動平均の種別:		        MODE_SMA,    // 単純移動平均線を指定(Simple)
適用価格:			PRICE_CLOSE,	// 平均を出すための値を終値に指定(Close)
					0         	// 現在の値を取得
	);

スタイルは指定できない。

戻り値

mt4のMAの設定画面
実際にGBP/USDでiMA()関数を使って移動平均線の値を取得した時の画像が↓↓↓
実行結果:1.308204166666665

void OnTick(){

	if(flag){
		double currentIma = iMA(NULL,PERIOD_CURRENT,12,0,MODE_SMA,PRICE_CLOSE,0);
		Print(currentIma);
		flag = false;
	}
}

MT4のチャート上の移動平均線を表示した時

ローソク足10本分右に平均線を動かすサンプル

実行結果:1.307894166666665

void OnTick(){

	if(flag){
		double currentIma = iMA(NULL,PERIOD_CURRENT,12,10,MODE_SMA,PRICE_CLOSE,0);
		Print(currentIma);
		flag=false;
	}
}

シェアする

  • このエントリーをはてなブックマークに追加

フォローする