DeMarker(iDeMarker)関数|MT4インディケータ

2024年10月1日

執筆者

佐川直弘(株式会社トリロジー取締役)

MetaTrader 4(MT4)を使ったFX自動売買において、テクニカル指標の理解と活用は非常に重要です。この記事では、DeMarker(iDeMarker)インディケータについて、初心者にもわかりやすく解説します。

DeMarker(iDeMarker)とは?

DeMarker(デマーカー)インディケータは、トーマス・デマークによって開発されたテクニカル指標で、価格の買われ過ぎや売られ過ぎを評価するために使用されます。DeMarkerは、価格の変動を正規化し、0から1の範囲で表示されます。値が0.7を超えると買われ過ぎ、0.3を下回ると売られ過ぎと判断されます。

iDeMarkerの計算方法

MT4では、DeMarkerを計算するためにiDeMarker()関数を使用します。この関数は以下のように定義されています。

関数仕様
double iDeMarker(
    string symbol,   // 通貨ペア種類
    int timeframe,   // 時間軸種類
    int period,      // 移動平均の期間
    int shift        // 取得するバーの位置(0が最新のバーを表し、1~が過去のバーに遡っていきます)
);

この関数は、指定された通貨ペアと時間軸におけるDeMarkerの値を返します。

引数の説明

symbol
通貨ペアの種類を指定します。例えば、"EURUSD"や"GBPJPY"など。
timeframe
時間軸の種類を指定します。例えば、1分足(1)、5分足(5)、1時間足(60)など。
period
移動平均の期間を指定します。
shift
取得するバーの位置を指定します。0が最新のバーを表し、1以上の数値が過去のバーを表します。

サンプルコード

以下に、iDeMarker()関数を使用して最新のバーのDeMarker値を取得するサンプルコードを示します。

サンプルコード
// EURUSDの1時間足で最新のバーのDeMarker値を取得する例
double demarker_value = iDeMarker(“EURUSD", PERIOD_H1, 14, 0);
Print(“EURUSDの1時間足の最新のDeMarker値: “, demarker_value);

このサンプルコードでは、"EURUSD"の1時間足における最新のDeMarker値を取得し、ターミナルウィンドウに表示します。

以下は、DeMarker値を使って買われ過ぎや売られ過ぎを判断する簡単な例です。

応用例
// EURUSDの1時間足でDeMarker値を使って買われ過ぎや売られ過ぎを判断する例
double demarker_current = iDeMarker(“EURUSD", PERIOD_H1, 14, 0);

if (demarker_current > 0.7) {
    Print(“買われ過ぎシグナル: DeMarker値が0.7を超えています。");
} else if (demarker_current < 0.3) {
    Print(“売られ過ぎシグナル: DeMarker値が0.3を下回っています。");
} else {
    Print(“DeMarker値は正常範囲内です。");
}

このコードは、DeMarker値が0.7を超える場合に買われ過ぎシグナルを、0.3を下回る場合に売られ過ぎシグナルを生成します。

まとめ

DeMarker(iDeMarker)インディケータは、価格の買われ過ぎや売られ過ぎを評価するための強力なツールです。MT4のiDeMarker()関数を使用することで、簡単にこのインディケータの値を取得し、トレード戦略に活用することができます。初心者の方も、この基本的な使い方を理解して、実際のトレードに応用してみてください。

MQL4

Posted by 佐川直弘