找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
首页论坛EAHub 外汇论坛
查看: 27|回复: 0

ArrayBsearch()数组搜索【数组篇-MQL4函数】

[复制链接]

4万

主题

54

回帖

4万

积分

管理员

积分
45954
发表于 2026-8-27 20:54:00 | 显示全部楼层 |阅读模式
int ArrayBsearch( double array[], double value, void count, void start, void direction)

如果没有发现事件,值会返回到第一个维度的数组或者最近的一个数组。此函数不能用在字符型或连续数字的数组上(除打开柱的连续数组)。


注解: 双元查找只能够存储数。存储数字数组使用ArraySort() 函数。


参数:

array[]   -   需要搜索的数组.

value   -   将要搜索的值

count   -   搜索的数量,默认搜索所有的数组.

start   -   搜索的开始点,默认从头开始.

direction   -   搜索的方向:MODE_ASCEND 顺序搜索,MODE_DESCEND 倒序搜索.


示例:


datetime daytimes[];
int      shift=10,dayshift;
// 全部 Time[] 数组被排列在后面的形式
ArrayCopySeries(daytimes,MODE_TIME,Symbol(),PERIOD_D1);
if(Time[shift]>=daytimes[0]) dayshift=0;
else
     {
      dayshift=ArrayBsearch(daytimes,Time[shift],WHOLE_ARRAY,0,MODE_DESCEND);
      if(Period()<ERIOD_D1) dayshift++;
     }
  Print(TimeToStr(Time[shift])," corresponds to ",dayshift," day bar opened at ",
TimeToStr(daytimes[dayshift]));复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|EAHub外汇论坛

GMT+8, 2026-10-9 16:11 , Processed in 0.107701 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表