MARKET
9/25 8:27 時点|ドル円158.78▼-7 pips|ドル円 予想レンジ158.41 〜 159.23|ドル円 上の節目158.90▲|ドル円 下の節目157.80▼|ユーロドル1.1378▼-2 pips|ユーロドル 予想レンジ1.1351 〜 1.1408|ユーロドル 上の節目1.1403▲|ユーロドル 下の節目1.1359▼|きょうの指標重要指標なし|

ChartGetInteger ― チャートの状態を調べる|MQL4/MQL5リファレンス

MQLリファレンス›関数オブジェクトChartGetInteger
MQL4 / MQL5 両対応オブジェクトチャートの状態

ChartGetIntegerチャートの状態を調べる

チャートの表示状態(大きさ・ワンクリック取引の有無・時間足など)を調べる関数。自分のパネルが画面の何かと重ならないかを判断するときの入口になる。

1書式

long ChartGetInteger(
   long              chart_id,   // 0=いまのチャート
   ENUM_CHART_PROPERTY_INTEGER prop_id,
   int               sub_window=0
);

書式はMQL4・MQL5で同じ。

2引数

引数 内容
chart_id 対象のチャート。0でいま実行しているチャート
prop_id 調べたい項目。CHART_SHOW_ONE_CLICK(ワンクリック取引の表示)・CHART_HEIGHT_IN_PIXELS(チャートの高さ)など
sub_window サブウィンドウ番号。省略すると本窓

3戻り値

調べた項目の値(long)。真偽で扱う項目は0/1で返る。

4実際に動かした結果

ワンクリック取引が出ているときだけ、パネルを下にずらす

ワンクリック非表示 パネル(上のまま) ワンクリック表示中 SELL/BUY パネル(下にずれる)

CHART_SHOW_ONE_CLICKを見て、出ているときだけ枠の高さぶん下げる。出ていなければ何もしない。

✓ 実測

ワンクリック取引の表示・非表示を切り替えて確認。

状態 ChartGetInteger(0, CHART_SHOW_ONE_CLICK)
ワンクリック取引:表示 1
ワンクリック取引:非表示 0

5使用例:ワンクリック取引が出ていたらパネルを下げる

int PanelOffsetY()
{
   if(IsTesting()) return(0);
   if(!(bool)ChartGetInteger(0, CHART_SHOW_ONE_CLICK)) return(0);
   int dpi = (int)TerminalInfoInteger(TERMINAL_SCREEN_DPI);
   if(dpi < 96) dpi = 96;
   return((int)(78 * dpi / 96.0));
}

MetaEditorでコンパイル0エラー・0警告を確認済み。

6MQL4→MQL5の違い

🔁 差分

関数自体に違いは無いが、MT5はボタンの上を横切る線をボタンより先に拾うという別の性質と組み合わさる場面が多い。ワンクリック取引の枠を検出しても、線とボタンが重なっていればOBJPROP_ZORDERの設定も合わせて必要(ObjectCreateを参照)。

7よくある罠

⚠ 実務で踏んだもの
  • CHART_PRICE_MAX/CHART_PRICE_MINは、オフラインのチャートで0を返すことがある。この値を使って本数や範囲を自動計算する処理は、上限と逃げ道を用意しておく。
  • 文字を大きくしている環境ではワンクリック取引の枠も大きくなる。TERMINAL_SCREEN_DPIを見て、下げる量をDPIに応じて変える。

8関連する関数

9使っている無料ツール

REI_RolloverGuard・REI_SpikeMeter — ワンクリック取引の表示を検出して、パネルが重ならないよう自動でずらすために使用(全ツール共通の配置の仕組みの一部)
公式リファレンス:MQL4 / MQL5(英語・要約は転載しません)

MORNING BRIEF平日 毎朝7時までに更新

今日はどこを見ればいいか。

ドル円とユーロドルの主要ライン・予想高値安値を、平日の朝に図1枚にまとめています。

朝刊を見る→
9/25 8:27 時点ドル円158.78▼-7 pipsドル円 予想レンジ158.41 〜 159.23ドル円 上の節目158.90▲ドル円 下の節目157.80▼ユーロドル1.1378▼-2 pipsユーロドル 予想レンジ1.1351 〜 1.1408ユーロドル 上の節目1.1403▲ユーロドル 下の節目1.1359▼きょうの指標重要指標なし
REI-FX&BO OFFICIAL LINE

ツールのダウンロードパスワードは
公式LINEで、すぐ届きます。

友だち追加の自動返信でパスワードをお送りします。
新しいツールの公開や、検証でわかったことも先にお知らせします。

全ツールのパスワード新作ツールをいち早く配信は月1〜2回だけ
LINEで友だち追加 パスワードを受け取る ›

追加後にひとことメッセージをいただけると、ツールづくりの参考にします。