stkindiex引用语句错了。第二个参数是被引用的公式名.BARPOS的指标,详细参考函数列表中的说明
例如:公式1
a:barpos;
引用语句DAY_BARPOS := STKINDIEX(CODE, '公式1.a', 0, 6, 0, 11);
stkindiex引用语句错了。第二个参数是被引用的公式名.BARPOS的指标,详细参考函数列表中的说明
例如:公式1
a:barpos;
引用语句DAY_BARPOS := STKINDIEX(CODE, '公式1.a', 0, 6, 0, 11);
我写了一个公式:GETBARPOS 内容如下:
GET_BARPOS:BARPOS,NOAXIS;
然后把stkindiex引用语句改成了下面这样:
// 取得日K线位置
DAY_BARPOS := STKINDIEX(CODE, 'GETBARPOS.GET_BARPOS', 0, 6, 0, 11);
日志结果显示:日K位置:1
我想得到的结果是361才对,哪错了呢?
barpos返回的是图表上加载的K线根数,你是在什么周期上引用的,你已经设置了最多就引用11根日线数量,所以最大的值输出也就是11啊。你直接在图表输出DAY_BARPOS 这个值就能看到。
barpos返回的是图表上加载的K线根数,你是在什么周期上引用的,你已经设置了最多就引用11根日线数量,所以最大的值输出也就是11啊。你直接在图表输出DAY_BARPOS 这个值就能看到。
我的程序是1秒轮询的,但我想得到当前日K周期上的BARPOS。我把那个11改成了361,也还是不行啊。
// 取得品种代码
CODE:=STKLABEL();
// 取得日K线位置
DAY_BARPOS : STKINDIEX(CODE, 'GETBARPOS.GET_BARPOS', 0, 6, 0, 361),NOAXIS;
DEBUGFILE2('D:\DEBUGFILE.TXT', '当前品种:'&CODE, 1, 1);
DAY_BARPOS_STR:=NUMTOSTR(DAY_BARPOS,0);
DEBUGFILE2('D:\DEBUGFILE.TXT', '日K位置:'&DAY_BARPOS_STR, 2, 1);