MQL4(MT4) ObjectGetValueByTimeの使い方

MQL4 Reference
スポンサーリンク

ObjectGetValueByTime()の使い方

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

使用GPTs:EA Creator

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

使い方

ObjectGetValueByTime関数は、MetaTrader 4 (MT4) プラットフォームのMQL4言語で、指定された時間におけるチャート上の特定のグラフィカルオブジェクトの価格値を取得するために使用されます。この関数は、特定の時間点でのオブジェクト(トレンドライン、フィボナッチレベル、チャネルなど)の価格位置を知りたい場合に役立ちます。

ObjectGetValueByTime関数の基本形式

double ObjectGetValueByTime(
   long chart_id,      // チャートID
   string object_name, // オブジェクト名
   datetime time,      // 時間
   int line_id=0       // 線ID
);
  • chart_id: オブジェクトを検索するチャートのIDです。現在のチャートのIDを取得するにはChartID()関数を使用します。
  • object_name: 価格値を取得したいグラフィカルオブジェクトの名前です。
  • time: 価格値を知りたい特定の時間です。
  • line_id: オブジェクト内の複数の線のうち、どの線に対して操作を行うかを指定します。多くのオブジェクトでは0がデフォルト値です。

使用例:特定のトレンドライン上の特定の時間での価格値を取得

以下の例では、指定されたチャートIDとトレンドラインオブジェクト名に基づいて、特定の時間点での価格値を取得し、その価格を表示します。

void OnStart()
{
    long chartID = ChartID(); // 現在のチャートIDを取得
    string objectName = "MyTrendLine"; // トレンドラインオブジェクトの名前
    datetime time = TimeCurrent(); // 現在の時間を取得

    double price = ObjectGetValueByTime(chartID, objectName, time, 0);

    // 価格値が正しく取得されたかチェック
    if(price != EMPTY_VALUE)
    {
        // 価格値を表示
        Print("時間 ", TimeToString(time, TIME_DATE|TIME_MINUTES), " における '", objectName, "' の価格は ", price, " です。");
    }
    else
    {
        Print("指定された時間での価格値が見つかりませんでした。");
    }
}

注意点

  • オブジェクトの存在: ObjectGetValueByTimeを使用する前に、指定されたオブジェクトがチャート上に存在し、正しいchart_idとobject_nameが指定されていることを確認してください。
  • 価格値の有効性: 関数がEMPTY_VALUEを返した場合、指定された時間でオブジェクトの価格値が存在しない、または計算できないことを意味します。これは、時間がオブジェクトの有効範囲外である場合に発生する可能性があります。
  • 正確な時間の指定: 指定する時間は、オブジェクトが存在する期間内である必要があります。時間がオブジェクトの範囲外である場合、関数は有効な価格を返せません。

ObjectGetValueByTime関数を適切に使用することで、特定の時間点でのグラフィカルオブジェクトの価格レベルを効果的に把握し、チャート分析や取引戦略の決定に役立てることができます。

MQL4リファレンス

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

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

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

関数名概要
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. Super helpful

系列サイト

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