使用数组的一组函数。 XX_-T _"_,
v_)yimIHzo
数组的最大维数为四维。 GX)QIe~;qJ
每个维数被索引编为从0 至维度-1。 \=7=__>x__
事实上,第一维数组的50 个, 5uo(z,_WLR
在调用时第一个数组显示为[0], a_ELT"b,_x
最后一个数组显示为[49]。 d
_&bc>V_t
_l _ _O~v?
使用这些函数(除那些改变定量和定性的数组外) !_|h2&tH_
能够预定义时间系列 [T]q_m7 ?_
Time[], Open[], High[], Low[], Close[], Volume[] Nox_z kpMF
_|u"R(7N*
ArrayBsearch :EwA$__`/
ArrayCopy / JeqoM"x
v_)yimIHzo
数组的最大维数为四维。 GX)QIe~;qJ
每个维数被索引编为从0 至维度-1。 \=7=__>x__
事实上,第一维数组的50 个, 5uo(z,_WLR
在调用时第一个数组显示为[0], a_ELT"b,_x
最后一个数组显示为[49]。 d
_&bc>V_t
_l _ _O~v?
使用这些函数(除那些改变定量和定性的数组外) !_|h2&tH_
能够预定义时间系列 [T]q_m7 ?_
Time[], Open[], High[], Low[], Close[], Volume[] Nox_z kpMF
_|u"R(7N*
ArrayBsearch :EwA$__`/
ArrayCopy / JeqoM"x
ArrayCopyRates __(eG]Cp@_
ArrayCopySeries % `T5a<
ArrayDimension K_OEi_9i}
ArrayGetAsSeries j' KobyX_<
ArrayInitialize N__#['fg'_
ArrayIsSeries = )l:^
+q
ArrayMaximum {_2k_< k(,
ArrayMinimum ^P g_ __YP
ArrayRange C_n;H@!8<s
ArrayResize _BMW_e__D
ArraySetAsSeries _T:%_wX9_W
ArraySize +'j*WVE_%5
ArraySort __e_1^_{_
ArrayCopySeries % `T5a<
ArrayDimension K_OEi_9i}
ArrayGetAsSeries j' KobyX_<
ArrayInitialize N__#['fg'_
ArrayIsSeries = )l:^
+q
ArrayMaximum {_2k_< k(,
ArrayMinimum ^P g_ __YP
ArrayRange C_n;H@!8<s
ArrayResize _BMW_e__D
ArraySetAsSeries _T:%_wX9_W
ArraySize +'j*WVE_%5
ArraySort __e_1^_{_
int ArrayBsearch( double array[], double value, void count, void start, void direction) z?uQlm*_We
如果没有发现事件,值会返回到第一个维度的数组或者最近的一个数组。 -_?w v}_o
此函数不能用在字符型或连续数字的数组上(除打开柱的连续数组)。 ?Y6la.b c{
注解: 双元查只能够存储数。存储数字数组使用ArraySort() 函数。 -=[o_{_r_`
参量: YNgR1_ :l
array[] - 需要搜索的数组. >RL6 Jbo_|
value - 将要搜索的值 #!=>muZ__t
count - 搜索的数量,默认搜索所有的数组. ]i_,__Mq
start - 搜索的开始点,默认从头开始. _?V__5Pt s
direction - 搜索的方向: _F_M"_GK '
MODE_ASCEND 顺序搜索, Ro'4/__{}+
MODE_DESCEND 倒序搜索. }Cmj(k`~
_RSP_RfYU/
示例: ~Mi__i_n _
datetime daytimes[]; 7\0|`{|R_@
int shift=10,dayshift; ^E<~z_O_=Z
此函数不能用在字符型或连续数字的数组上(除打开柱的连续数组)。 ?Y6la.b c{
注解: 双元查只能够存储数。存储数字数组使用ArraySort() 函数。 -=[o_{_r_`
参量: YNgR1_ :l
array[] - 需要搜索的数组. >RL6 Jbo_|
value - 将要搜索的值 #!=>muZ__t
count - 搜索的数量,默认搜索所有的数组. ]i_,__Mq
start - 搜索的开始点,默认从头开始. _?V__5Pt s
direction - 搜索的方向: _F_M"_GK '
MODE_ASCEND 顺序搜索, Ro'4/__{}+
MODE_DESCEND 倒序搜索. }Cmj(k`~
_RSP_RfYU/
示例: ~Mi__i_n _
datetime daytimes[]; 7\0|`{|R_@
int shift=10,dayshift; ^E<~z_O_=Z
// 全部 Time[] 数组被排列在后面的形式 nd__KvJH4
ArrayCopySeries(daytimes,MODE_TIME,Symbol(),PERIOD_D1); _R(/[NvUb
if(Time[shift]>=daytimes[0]) dayshift=0; @q_{:O_c^_
else N}}_PlGp$_
{ / UaN
Yv/
dayshift=ArrayBsearch(daytimes,Time[shift],WHOLE_ARRAY,0,MODE_DESCEND); _qrM__{b=
if(Period()<PERIOD_D1) dayshift++; Z
}LO_y^TL
} 1_%/ NL?8# 令数组全部的值为0
Print(TimeToStr(Time[shift])," corresponds to ",dayshift," day bar opened at ", _&3 XFg Ho
TimeToStr(daytimes[dayshift])); O{")_i;v @
_>p]WCb'PH
x _ tY_V"
ArrayCopy _>__jrlIfc
ArrayCopySeries(daytimes,MODE_TIME,Symbol(),PERIOD_D1); _R(/[NvUb
if(Time[shift]>=daytimes[0]) dayshift=0; @q_{:O_c^_
else N}}_PlGp$_
{ / UaN
Yv/
dayshift=ArrayBsearch(daytimes,Time[shift],WHOLE_ARRAY,0,MODE_DESCEND); _qrM__{b=
if(Period()<PERIOD_D1) dayshift++; Z
}LO_y^TL
} 1_%/ NL?8# 令数组全部的值为0
Print(TimeToStr(Time[shift])," corresponds to ",dayshift," day bar opened at ", _&3 XFg Ho
TimeToStr(daytimes[dayshift])); O{")_i;v @
_>p]WCb'PH
x _ tY_V"
ArrayCopy _>__jrlIfc
int ArrayCopy( void dest[], object source[], void start_dest, void start_source, void count) _f7_4%Y_Y
复制一个数组到另外一个数组。 只有double[], int[], datetime[], color[], 和 bool[] 这些类型的数组可以被复制。 c_Y_q'_]$]
返回复制元素总量。 M!&__qj&N,
参量: _ e8XM=$@
dest[] - 目标数组 。 _Y_-Zi yy
source[] - 源数组 。 _ f_W5" 4,
start_dest - 从目标数组的第几位开始写入,默认为0 。 L)k__b (TH
start_source - 从源数组的第几位开始读取,默认为0 。 Lo|NE[b_:G
count - 读取多少位的数组 。默认值为WHOLE_ARRAY常数。 Nl=m'4 @`_
_ _V_+}^_
示例: _2d5}` >
double array1[][6]; >_0Fxyv8
double array2[10][6]; _m0x J05Zx
// 数组2 被相同数据添满 zmy4_ts_mX
复制一个数组到另外一个数组。 只有double[], int[], datetime[], color[], 和 bool[] 这些类型的数组可以被复制。 c_Y_q'_]$]
返回复制元素总量。 M!&__qj&N,
参量: _ e8XM=$@
dest[] - 目标数组 。 _Y_-Zi yy
source[] - 源数组 。 _ f_W5" 4,
start_dest - 从目标数组的第几位开始写入,默认为0 。 L)k__b (TH
start_source - 从源数组的第几位开始读取,默认为0 。 Lo|NE[b_:G
count - 读取多少位的数组 。默认值为WHOLE_ARRAY常数。 Nl=m'4 @`_
_ _V_+}^_
示例: _2d5}` >
double array1[][6]; >_0Fxyv8
double array2[10][6]; _m0x J05Zx
// 数组2 被相同数据添满 zmy4_ts_mX
ArrayCopyRates(array1); _"_ _?c9
ArrayCopy(array2,array1,0,0,60); p|&ZJ_@3
// 现在数组2 的前10个柱来自历史(前10个柱包括索引[Bars-1]) ?__ _-_v
ArrayCopy(array2,array1,0,Bars*6-60,60); 1_&X__}__1
// 现在数组2 的后10个柱来自历史(后10个柱包括索引[0]) __'h__ !h!
Tm%$J__
b{~f_Vil$y
_C__p .1_/
ArrayCopyRates NqiB8hZ_~_
int ArrayCopyRates( void dest_array[], void symbol, void timeframe) R4#;_<_)__
复制一段走势图上的数据到一个二维数组,并返回复制柱总量,如果是-1表示失败。数组的第二维只有6个项目分别是: (_ GFg_t__
0 - 时间, tyc_8{t#Z_
1 - 开盘价格, [n!$D(|"!V
2 - 最低价格, /~H
[_= Pf
ArrayCopy(array2,array1,0,0,60); p|&ZJ_@3
// 现在数组2 的前10个柱来自历史(前10个柱包括索引[Bars-1]) ?__ _-_v
ArrayCopy(array2,array1,0,Bars*6-60,60); 1_&X__}__1
// 现在数组2 的后10个柱来自历史(后10个柱包括索引[0]) __'h__ !h!
Tm%$J__
b{~f_Vil$y
_C__p .1_/
ArrayCopyRates NqiB8hZ_~_
int ArrayCopyRates( void dest_array[], void symbol, void timeframe) R4#;_<_)__
复制一段走势图上的数据到一个二维数组,并返回复制柱总量,如果是-1表示失败。数组的第二维只有6个项目分别是: (_ GFg_t__
0 - 时间, tyc_8{t#Z_
1 - 开盘价格, [n!$D(|"!V
2 - 最低价格, /~H
[_= Pf
3 - 最高价格, 33=Mm/<m$P
4 - 收盘价格, <MPeh&_3_#
5 - 成交量. _fp._!VO_y
8_k_u_? W
如果数据(货币对名称/不同于当前的时间周期) 拒绝其他图表,这种情况下相应的图表不能够在客户端内打开,数据自然会拒绝服务器。这种情况, 错误 ERR_HISTORY_WILL_UPDATED (4066 - 拒绝刷新历史数据) 将被放置到 last_error 变量中,并且将再次拒绝(查看范例ArrayCopySeries()). ]*b_A_F^8i
Jz~+J*r;]A
注解:此数组通常用于到DLL函数的通过数据 。 l%^h_2 _o
对于数据数组内存没有真正的分配,没有真正地执行复制。当数组访问时,将会改变方向。 =jJ H_^Y2
参量: j`>?
"1e@x
dest_array[] - 在二维数组上的双重目标数组。 Wr
___]O
symbol - 货币对名称 mZ`__1JO9
timeframe - 时间周期. 可以是列出时间周期的任意值。 zt7_r_`_#z
2~_vo+__ng
示例: R ^_H_oh_B
double array1[][6]; Z1VC_5* K_
ArrayCopyRates(array1,"EURUSD", PERIOD_H1); ;l$
_9gD>R
Print("当前柱 ",TimeToStr(array1[0][0]),"开盘价格", array1[0][1]);
___]O
symbol - 货币对名称 mZ`__1JO9
timeframe - 时间周期. 可以是列出时间周期的任意值。 zt7_r_`_#z
2~_vo+__ng
示例: R ^_H_oh_B
double array1[][6]; Z1VC_5* K_
ArrayCopyRates(array1,"EURUSD", PERIOD_H1); ;l$
_9gD>R
Print("当前柱 ",TimeToStr(array1[0][0]),"开盘价格", array1[0][1]);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论