MQL4(MT4) ObjectsTotalの使い方

MQL4 Reference
スポンサーリンク

ObjectsTotal()の使い方

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

使用GPTs:EA Creator

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

使い方

ObjectsTotal関数は、MetaTrader 4 (MT4) プラットフォームのMQL4言語において、チャート上に存在する特定のタイプのオブジェクトの数を取得するために使用されます。この関数には2つのバリエーションがあり、チャートID、サブウィンドウインデックス、オブジェクトタイプを基にオブジェクトの総数を取得することができます。

1. 特定のチャート、サブウィンドウ、オブジェクトタイプのオブジェクト数を取得

int ObjectsTotal(
   long chart_id,       // チャート識別子
   int sub_window=-1,   // ウィンドウインデックス
   int type=-1          // オブジェクトタイプ
);
  • chart_id: オブジェクト数を取得したいチャートのIDです。
  • sub_window: オブジェクト数を取得したいサブウィンドウのインデックスです。全てのウィンドウから取得したい場合は-1を指定します。
  • type: 取得したいオブジェクトのタイプです。全てのタイプのオブジェクトを対象とする場合は-1を指定します。

2. 特定のタイプのオブジェクト数を取得

int ObjectsTotal(
   int type=EMPTY       // オブジェクトタイプ
);
  • type: 取得したいオブジェクトのタイプです。EMPTYを指定すると、全てのタイプのオブジェクト数が返されます。

使用例1: 特定のチャートの全オブジェクト数を取得

void OnStart()
{
    long chartID = ChartID(); // 現在のチャートIDを取得
    int totalObjects = ObjectsTotal(chartID, -1, -1);
    Print("チャートID ", chartID, " 上のオブジェクト総数: ", totalObjects);
}

使用例2: 全チャートの特定タイプのオブジェクト数を取得

void OnStart()
{
    int totalLines = ObjectsTotal(OBJ_TREND); // トレンドラインの総数を取得
    Print("チャート上のトレンドライン総数: ", totalLines);
}

注意点

  • チャートIDの正確性: チャートIDを指定してオブジェクト数を取得する場合は、正しいチャートIDを使用していることを確認してください。
  • サブウィンドウインデックスの理解: サブウィンドウインデックスは、メインチャートが0で、追加されたインディケータウィンドウが1から始まります。
  • オブジェクトタイプの指定: 特定のオブジェクトタイプの数を取得する場合は、正しいオブジェクトタイプを指定してください。タイプが不明な場合は、全タイプのオブジェクト数を取得するために-1またはEMPTYを使用できます。

これらの関数を使用することで、特定のチャートや条件におけるオブジェクトの総数を効率的に把握し、チャート分析やオブジェクト管理の自動化に役立てることができます。

MQL4リファレンス

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

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

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

関数名概要
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. Kontynuuj より:

    Spot-on observations

系列サイト

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