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

MT4 MT5外汇EA编程函数

[复制链接]

4万

主题

54

回帖

4万

积分

管理员

积分
45954
发表于 2026-8-23 00:58:00 | 显示全部楼层 |阅读模式
MT4 MT5外汇EA编程函数

一般使用函数。


数组的最大维数为四维。

每个维数被索引编为从0 至维度-1。

事实上,第一维数组的50 个,在调用时第一个数组显示为[0], 最后一个数组显示为[49]。

使用这些函数(除那些改变定量和定性的数组外)

能够预定义时间系列

Time[], Open[], High[], Low[], Close[], Volume[]

ArrayBsearch

ArraySize

ArraySort

ArrayCopy

ArrayCopyRates

ArrayCopySeries

ArrayDimension

ArrayGetAsSeries

ArrayInitialize

ArrayIsSeries

ArrayMaximum

ArrayMinimum

ArrayRange

ArrayResize

ArraySetAsSeries


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]));


ArrayCopy

int ArrayCopy( void dest[], object source[], void start_dest, void start_source, void count)

复制一个数组到另外一个数组。 只有double[], int[], datetime[], color[], 和 bool[] 这些类型的数组可以被复制。

返回复制元素总量。

参量:

dest[] - 目标数组 。

source[] - 源数组 。

start_dest - 从目标数组的第几位开始写入,默认为0 。

start_source - 从源数组的第几位开始读取,默认为0 。

count - 读取多少位的数组 。默认值为WHOLE_ARRAY常数。


示例:

double array1[][6];

double array2[10][6];

// 数组2 被相同数据添满

ArrayCopyRates(array1);

ArrayCopy(array2,array1,0,0,60);

// 现在数组2 的前10个柱来自历史(前10个柱包括索引[Bars-1])

ArrayCopy(array2,array1,0,Bars*6-60,60);

// 现在数组2 的后10个柱来自历史(后10个柱包括索引[0])
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-10-12 10:30 , Processed in 0.101847 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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