MARKET
MT4ツールを、数字で作る。— Team REI|平日の朝に「相場分析」を更新しています|

ArrayBsearch ― 並び替え済み配列から値を高速に探す|MQL4/MQL5リファレンス

MQLリファレンス›関数データの持ち方ArrayBsearch
(‘both’, ‘MQL4 / MQL5 両対応’)配列

ArrayBsearch並び替え済み配列から値を高速に探す

ArraySort済みの配列から、指定した値に近い要素の位置を二分探索で高速に見つける。先頭から順番に見ていくより、要素数が多いときに大幅に速い。

1書式

int ArrayBsearch(
   const double &array[],
   double value
);

書式はMQL4・MQL5で同じ。

2引数

引数 内容
array 並び替え済みの配列(昇順)
value 探したい値

3戻り値

見つかった位置。ぴったり一致が無ければ、直前の値の位置。

4使用例

double sorted[] = {1.1, 1.2, 1.3, 1.5, 1.8};
int pos = ArrayBsearch(sorted, 1.4);
Print("位置: ", pos, " 値: ", sorted[pos]);   // 1.3の位置(2)が返る

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

6よくある罠

⚠ 実務で踏んだもの
  • 配列がArraySortで昇順に並んでいないと、正しい結果が保証されない。必ず並び替えてから使う。

7関連する関数

REI-FX&BO OFFICIAL LINE

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

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

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

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