Board logo

标题: 【Array数组语句】 [打印本页]

作者: 龙听    时间: 2021-9-3 16:45     标题: 【Array数组语句】

声明一个或多个数组,包含多个变量数组元素;需指定数组结构、元素类型和初始值,更新依据,元素个数。
数组元素的类型可以是数值型,字符串型或布尔型。

数组元素个数可以是固定的也可以是动态的(不限制个数)。

在固定元素个数的数组中,元素可以排列在单个或多个维度。10-元一维数组包含10个元素,10*10二维数组包含100个元素,10*10*10三维数组包含1000个元素,10*10*10*10四维数组包含10000个元素,等等。PowerLanguage中数组维度最高是9维。

数组中的元素可由一个或多个索引值引用,每个维度有一个最大索引值,数组的索引值从0开始。

动态数组(不限元素数量的数组)维度固定为一维,声明后仅有一个元素,动态数组大小可以用 Array_SetMaxIndex 重新设定。

数组元素可以单独赋值,也可以把数组全部或部分当成整体来赋值。

用法

Array:<IntraBarPersist>ArrayName1[D1,D2,D3,etc.](InitialValue1<,DataN>), <IntraBarPersist>ArrayName2[D1,D2,D3,etc.](InitialValue2<,DataN>),etc.


在< >括号中的参数是可选的。

参数说明
IntraBarPersist —— 可选参数,指定数组元素值可以在收到每笔tick报价时更新。如果没有指定此参数,数组元素值会在每根Bar的close更新。

ArrayName —— 数组名称,数组名称可以包含英文字母(不区分大小写)、下划线、数字和英文句号。但是名称的开头不能使用数字和句号。


D —— 数值表达式,指定数组各个维度的最大索引值,数值索引值是从0开始。一个表达式指定的是一维数组,两个表达式指定的是二维数组(D1,D2),
         三个表达式指定的是三维数组 (D1,D2,D3)以此类推。动态数组,元素个数无限制,则方括号: [] 中是空的,并且只能是一维数组。

InitialValue —— 表达式,指定初始值,定义数组中所有元素的数据类型。初始值可以是数值、字符串或布林表达式。初始值表达式的类型同时决定了数组类型。

DataN —— 可选参数,指定数组参考的数据为Data N,如果没有指定此参数,数组将会参考默认数据系列。
作者: 龙听    时间: 2021-9-3 16:49

范例

声明数组Length和SFactor为9个元素的一维数值数组,初始值为 0:
  1. Array:Length[8](0),SFactor[8](0);
复制代码
声明数组Max_Price为24*60 的二维数值数组,依照tick更新,计算参考data2数据,元素初始值为close:
  1. Array:IntraBarPersist Max_Price[23,59](Close,Data2);
复制代码
声明数组Highs2为动态数组,初始值为 0:
  1. Array:Highs2[](0);
复制代码

作者: 毒吻仔    时间: 2023-3-13 11:09

有用




欢迎光临 龙听期货论坛 (http://www.qhlt.cn/) Powered by Discuz! 7.2