以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 问题请教老师 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=53564) |
-- 作者:BruceX -- 发布时间:2013/7/2 20:49:38 -- 问题请教老师 fc:=close;//定义一个序列变量,相当于是一个数组 BEGIN
问题:为什么kk_1的数值和kk_2是一样的,直观看,KK_1应该有另外一个数值,却没有显示 |
-- 作者:王锋 -- 发布时间:2013/7/2 22:11:39 -- 按F8启动单步跟踪看看 |
-- 作者:BruceX -- 发布时间:2013/7/4 19:43:45 -- 没发现问题啊,当我把循环数量变到很小,它就可以把最近的满足条件的K线显示出来,循环数量加上去后,第一个和第二个总是相等,而满足条件的一根K线总是没显示出来,是什么原因呢? |
-- 作者:王锋 -- 发布时间:2013/7/4 21:34:42 -- 请把你具体数量加小就正常的详细步骤说一下 |
-- 作者:BruceX -- 发布时间:2013/7/5 8:40:00 -- fc:=close;//定义一个序列变量,相当于是一个数组 BEGIN BEGIN
//这个kk[0]就没问题,确实是最近一根收盘大于开盘的K线
fc:=close;//定义一个序列变量,相当于是一个数组 BEGIN
kk_2:kk[1];
//此时,kk[0]的值不是最近一根收盘大于开盘的K线的收盘价,而是与kk[1]一样,这是怎么回事? |
-- 作者:BruceX -- 发布时间:2013/7/14 15:13:31 -- 老师,这个问题是什么原因啊 老师,这个问题是什么原因啊? |
-- 作者:王锋 -- 发布时间:2013/7/14 15:55:06 -- 初步看了一下,你的数组使用存在问题,金字塔的数组下标有效值是从1开始的,而你是从0开始使用。 序列模式下对数组的这样的使用默认会执行从1开始,因此用0和1下标效果是一样的。
帮你这样改好了
VARIABLE:kk[30]=0; //你应该有个良好的使用习惯,数组在使用前先初始化 fc:=close;//定义一个序列变量,相当于是一个数组 BEGIN
kk_2:kk[2]; |
-- 作者:BruceX -- 发布时间:2013/7/15 9:41:34 -- 谢谢老师,那个数组使用时要先初始化,那个变量需要吗? |
-- 作者:BruceX -- 发布时间:2013/7/15 9:45:56 -- 是不是无法定义空数组VARIABLE:kk[]=0; |