admin 发表于 2022-8-24 12:09:38

MQL4数组处理相关函数(二)

用于数组处理的一组函数。数组的最大维数为四维。每一维索引编号为0至(数组大小 减 1)。例如,在50个元素的一维数组中,调用第一个元素用array,最后一个元素用array。
[*]ArrayBsearch() – 数组搜索
[*]ArrayCopy() – 数组复制
[*]ArrayCopyRates() – 复制柱体(K线)数据到二维数组
[*]ArrayCopySeries() – 复制柱体(K线)数据到一维数组
[*]ArrayDimension() – 返回数组维数
[*]ArrayGetAsSeries() – 判断序列数组
[*]ArrayInitialize() – 数组初始化
[*]ArrayIsSeries() – 判断数组是否序列化
[*]ArrayMaximum() – 返回数组中最大值的位置
[*]ArrayMinimum() – 返回数组中最小值的位置
[*]ArrayRange() – 获取数组元素个数
[*]ArrayResize() – 重设数组大小
[*]ArraySetAsSeries() – 设置为序列化数组
[*]ArraySize() – 获取数组大小
[*]ArraySort() – 数组排序

ArrayDimension() – 返回数组维数int ArrayDimension(object array[])返回数组的维数参数:array[] - 数组。示例:int num_array;int dim_size;dim_size=ArrayDimension(num_array);// dim_size=2ArrayGetAsSeries() – 判断序列数组bool ArrayDimension(object array[])如果数组是按序列数组形式排列(数组元素从最后到最开始排序过),返回true,否则返回false参数:array[] - 需要检测的数组。示例:if(ArrayGetAsSeries(array1)==true)    Print("array1 是作为序列数组排序");else    Print("array1 正常排序(从左到右)");ArrayInitialize() – 数组初始化int ArrayInitialize(void array[], double value)数值型数组元素值设为同一个数值,返回己初始化的元素个数。注:在自定义指标init()函数中不建议初始化指标缓冲区,在缓冲区分配和重分配内存时这种函数自动初始化为 "空值" 。参数:array[] - 需要初始化的数组。value - 设置的新值。 示例://----所有数组元素初始化2.1double myarray;ArrayInitialize(myarray,2.1);ArrayIsSeries() – 判断数组是否序列化int ArrayIsSeries(object array[])如果数组经检查是序列的(像 Close[], Open[], High[], Low[], Time[] 或 Volume[] ),返回TRUE,否则,返回FALSE。参数:array[] - 需要检测的数组。 示例:   if(ArrayIsSeries(array1)==false)   ArrayInitialize(array1,0);   else   {      Print("序列数组不能被初始化!");      return(-1);   }ArrayMaximum() – 返回数组中最大值的位置int ArrayMaximum(double array[], void count, void start)找出数组元素中最大值。函数返回数组元素最大值的下标。参数:array[] - 要搜索的数值数组。 count - 要搜索的数组元素个数。 start - 开始搜索的初始下标值。示例:double num_array={4,1,6,3,9,4,1,6,3,9,4,1,6,3,9};int    maxValueidx=ArrayMaximum(num_array);Print("最大值 = ", num_array);ArrayMinimum() – 返回数组中最小值的位置int ArrayMinimum(double array[], void count, void start)找出数组元素中最小值。函数返回数组元素最小值的下标。参数:array[] - 要搜索的数值数组。 count - 要搜索的数组元素个数。 start - 开始搜索的初始下标值。示例:double num_array={4,1,6,3,9,4,1,6,3,9,4,1,6,3,9};int    minValueidx=ArrayMinimum(num_array);Print("最小值 = ", num_array);

support 发表于 2022-9-5 11:31:00

谢谢你的分享,有你社区会更精彩:lol

yitang 发表于 2023-8-2 13:47:02

:$

luck88 发表于 2023-10-23 10:37:10

:P

木兮 发表于 2024-4-2 13:57:25

分享都会点赞一下
页: [1]
查看完整版本: MQL4数组处理相关函数(二)