之前用图表逐k线模式,用 variable 保存数组,没有问题。
改成后台交易,固定一秒轮询,variable 保存的数组会在每次运行时重新初始化,导致之前的赋值无效。
在这种情况下,我知道 globalvariable 可以保存单值,但是无法保存数组。各位有什么解决方案呢?
不行啊,variable 保存的数组等下个周期会被重新初始化。
测试代码:
runmode: 1;
VARIABLE: test_array[2]=0;
debugout('begin_test_array[1]=%.0f', test_array[1]);
debugout('begin_test_array[2]=%.0f', test_array[2]);
test_array[1]:= 10;
test_array[2]:= 20;
debugout('end_test_array[1]=%.0f', test_array[1]);
debugout('end_test_array[2]=%.0f', test_array[2]);
log输出:
13.03.14 10:01:05 IF04
begin_test_array[1]=0
13.03.14 10:01:05 IF04
begin_test_array[2]=0
13.03.14 10:01:05 IF04
end_test_array[1]=10
13.03.14 10:01:05 IF04
end_test_array[2]=20
13.03.14 10:01:05 IF04
运行结束
13.03.14 10:01:06 IF04
begin_test_array[1]=0
13.03.14 10:01:06 IF04
begin_test_array[2]=0
13.03.14 10:01:06 IF04
end_test_array[1]=10
13.03.14 10:01:06 IF04
end_test_array[2]=20
13.03.14 10:01:06 IF04
运行结束
13.03.14 10:01:07 IF04
begin_test_array[1]=0
13.03.14 10:01:07 IF04
begin_test_array[2]=0
13.03.14 10:01:07 IF04
end_test_array[1]=10
13.03.14 10:01:07 IF04
end_test_array[2]=20
13.03.14 10:01:07 IF04
运行结束