Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共6 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:关于数组向前引用问题

1楼
lieutenant 发表于:2020/12/21 19:26:53

日线,想要引用之前某k线上一个数组的全部值到另一个的数组中,用for循环语句发现seLISL每次提取到的都是LISL数组的第一个值,但是如果单独写明数组下标,如下面代码中aaa和bbb,则可正常提取。

 

seLii:=REF(Li,STALLET)-1;

FOR i=seLii downto 1 do
BEGIN
 seLISL[i]:=REF(LISL[i],STALLET);
END

 

aaa:ref(LISL[2],STALLET);
bbb:ref(LISL[1],STALLET);

请教下是代码有误还是金字塔机制限制?

2楼
FireScript 发表于:2020/12/22 9:03:11
 请提供下完整可编译 可运行的代码。方便我们本地调试。
3楼
lieutenant 发表于:2020/12/22 10:44:17

VARIABLE:LISL[20]:=0;

VARIABLE:seLISL[20]:=0;


LISL[1]:=1;
LISL[2]:=2;
LISL[3]:=3;

STALLET:=4;

FOR i=3 downto 1 do
BEGIN
 seLISL[i]:=REF(LISL[i],STALLET);
END

aaa:ref(LISL[2],STALLET);
bbb:ref(LISL[1],STALLET);

 

简单编写一个可运行例子,逐k仅刷最后一根k线模式,seLISL的值全是1,而aaa=2,bbb=1

4楼
lieutenant 发表于:2020/12/22 11:44:34

考虑是不是循环中的i值的变化是不是不能作用到ref()里去,所以每次只能取到LISL[1]。

 

那么金字塔里有什么办法能取到前面某k上一个定义数组的全部值?

 

谢谢!

5楼
lieutenant 发表于:2020/12/22 11:52:27
是指一次性取得,而不是一个一个的标明数组的下标去取得,因为这个声明数组的大小在定义的下限内,在不同k线上可能不同。谢谢!
6楼
lieutenant 发表于:2020/12/23 14:54:45
无人解答??
共6 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in .75098 s, 3 queries.