MQL4(MT4) ObjectGetShiftByValueの使い方

MQL4 Reference
スポンサーリンク

ObjectGetShiftByValue()の使い方

MQL4 (MT4)のObjectGetShiftByValue()の使い方をChatGPTに確認しました。
賢いですね。きちんとした回答を詳しくもらえました。

使用GPTs:EA Creator

MT4 MQL4のObjectGetShiftByValueの使い方を実装例を交えて教えて下さい。補足で気を付ける点なども教えて下さい。

使い方

ObjectGetShiftByValue関数は、MetaTrader 4 (MT4) プラットフォームのMQL4言語で、指定された価格におけるチャート上の特定のオブジェクトのバーポジション(時間軸上の位置)を取得するために使用されます。この関数は、価格レベルがオブジェクトにどのように対応しているかを知りたい場合に便利です。

ObjectGetShiftByValue関数の使用法

この関数は、指定された価格レベルに対応するチャート上の特定のオブジェクトの時間軸(バーのインデックス)上の位置を取得します。特に、トレンドラインや水平線などの価格に依存するオブジェクトにおいて、指定された価格がそのオブジェクトにどのように対応しているかを知りたい場合に使用します。

int ObjectGetShiftByValue(
   string object_name,   // オブジェクト名
   double value          // 価格
);
  • object_name: バーポジションを取得したいオブジェクトの名前です。
  • value: 対応するバーポジションを知りたい価格レベルです。

使用例: 水平線オブジェクトにおける特定の価格レベルのバーポジションを取得

以下の例では、”MyHorizontalLine”という名前の水平線オブジェクトに対して、指定された価格レベル1.1500におけるバーポジションを取得し、それを出力します。

void OnStart()
{
    string objectName = "MyHorizontalLine"; // 水平線オブジェクトの名前
    double priceLevel = 1.1500; // 取得したい価格レベル

    // 指定価格における水平線のバーポジションを取得
    int shift = ObjectGetShiftByValue(objectName, priceLevel);

    if(shift != -1)
    {
        Print("価格 ", priceLevel, " における '", objectName, "' のバーポジション: ", shift);
    }
    else
    {
        Print("指定された価格に対応するバーポジションが見つかりませんでした。");
    }
}

注意点

  • オブジェクトの種類: この関数は、価格レベルに依存するオブジェクト(例えば、水平線、トレンドラインなど)に対してのみ意味があります。価格レベルが関係ないオブジェクト(テキストオブジェクトなど)には使用できません。
  • 戻り値の解釈: 関数が-1を返した場合、指定された価格に対応するバーポジションが見つからなかったことを意味します。これは、価格がオブジェクトの範囲外であるか、その他の理由で計算できない場合に発生します。
  • オブジェクトの存在: 指定されたオブジェクト名がチャート上に存在し、正しい名前が使用されていることを確認してください。存在しないオブジェクト名が指定された場合、関数は有効なバーポジションを返すことができません。

ObjectGetShiftByValue関数を使用することで、特定の価格レベルにおけるオブジェクトの位置をプログラム的に把握し、分析や戦略の決定に役立てることが可能です。

MQL4リファレンス

正式な仕様は”MQL4 Reference“をご確認下さい。上記内容を確認しておくとより分かりやすいかと思います。
リンク:https://docs.mql4.com/objects/objectgetshiftbyvalue

他のオブジェクト関数の利用方法

以下のそれぞれのリンク先で確認していますので、ご参照ください。

関数名概要
ObjectCreateチャート上に新しいオブジェクトを作成します。
ObjectName指定されたインデックスにあるオブジェクトの名前を取得します。
ObjectDeleteチャートから指定された名前のオブジェクトを削除します。
ObjectsDeleteAll特定のウィンドウ、またはすべてのウィンドウからオブジェクトを削除します。
ObjectFind指定された名前のオブジェクトが存在するウィンドウのインデックスを返します。
ObjectGetTimeByValue指定された価格に対応する時間をオブジェクトから取得します。
ObjectGetValueByTime指定された時間に対応する価格をオブジェクトから取得します。
ObjectMove指定されたオブジェクトを新しい位置に移動します。
ObjectsTotalチャート上のオブジェクトの総数を返します。
ObjectGetDouble指定されたオブジェクトのプロパティ値(double型)を取得します。
ObjectGetInteger指定されたオブジェクトのプロパティ値(整数型)を取得します。
ObjectGetString指定されたオブジェクトのプロパティ値(文字列型)を取得します。
ObjectSetDouble指定されたオブジェクトのプロパティ値(double型)を設定します。
ObjectSetInteger指定されたオブジェクトのプロパティ値(整数型)を設定します。
ObjectSetString指定されたオブジェクトのプロパティ値(文字列型)を設定します。
TextSetFontテキストオブジェクトのフォント名、サイズ、スタイル、重さを設定します。
TextOutチャートに直接テキストを描画します。
TextGetSize指定されたテキストのサイズを取得します。
ObjectDescriptionオブジェクトの説明を取得します。
ObjectGetオブジェクトのプロパティを取得します。
ObjectGetFiboDescriptionフィボナッチオブジェクトのレベル説明を取得します。
ObjectGetShiftByValue指定された価格に対応するオブジェクトのシフトを取得します。
ObjectGetValueByShift指定されたシフトに対応するオブジェクトの価格を取得します。
ObjectSetオブジェクトの特定のプロパティを設定します。
ObjectSetFiboDescriptionフィボナッチオブジェクトのレベル説明を設定します。
ObjectSetTextオブジェクトにテキストを設定します。
ObjectTypeオブジェクトのタイプを取得します。

関連記事

スポンサーリンク
海外FXキャッシュバック口座開設ならTariTali(タリタリ)

コメント

  1. Zobacz więcej より:

    Insightful piece

  2. Thanks for sharing

系列サイト

格安航空券を行き先から探す|国際線の料金比較 - 旅する女も男も綺麗さ! ~ 格安航空券を見つけて旅に出よう!!
海外旅行の格安航空券を行き先(都市)から探せます。行き先を選ぶと、航空会社別に料金を比較できるページへ移動します。料金は変動するため、最新の価格は各ページでご確認ください。
海外eSIM比較|国・地域から探す - 終わりなき旅を! ~ 世界中でeSIMを使って旅を便利に!!
海外旅行で使えるeSIMを国・地域から探せます。行き先を選ぶと、データ量と有効期間で比較できるプラン一覧ページへ移動します。料金やプランは変動するため、最新の内容は各ページでご確認ください。
ふるさと納税 返礼品ランキング|ジャンルから探す - ふるさと納税で故郷を感じる! ~ 狙い目が見つかるかも!!
ふるさと納税の返礼品をジャンル別・寄付額帯別にまとめています。気になるジャンルを選ぶと、レビューの多い人気順のランキングページへ移動します。寄付額やレビューは変動するため、最新の内容は各返礼品ページでご確認ください。
イモ野郎 焼酎に眠る - イモ好き野郎が芋焼酎に特化して紹介するサイトです
イモ好き野郎が芋焼酎に特化して紹介するサイトです
タイトルとURLをコピーしました