EATC

 找回密码
 立即注册
查看: 840|回复: 0

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

[复制链接]

283

主题

2119

帖子

1148

积分

客服

Rank: 7Rank: 7Rank: 7

积分
1148
发表于 2023-3-10 16:09:21 | 显示全部楼层 |阅读模式
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()<PERIOD_D1) dayshift++;
     }
  Print(TimeToStr(Time[shift])," corresponds to ",dayshift," day bar opened at ",
TimeToStr(daytimes[dayshift]));

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

收藏本站|法律声明|Archiver|小黑屋|support@ea198.com|EATC ( 桂ICP备2022005787号 )

风险提示与免责声明:擅自从事外汇保证金交易的双方不受法律保护!社区内展示内容,均为网友自发分享,不构成投资建议,社区无法全面监控由第三方上传至社区的资源,因此不保证资源的合法性、安全性、完整性、真实性或品质等。您下载时,同意自行判断并承担所有风险。社区内的资源,仅限用于学习和研究目的,不得将用于商业或者非法用途,否则,一切后果请用户自负。社区信息来自网络,版权争议与社区无关,您下载后须在24个小时之内进行删除。如果您喜欢该内容,请支持正版。如有侵权请邮件与我们联系处理。