Rss & SiteMap

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

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

标题:[求助]GLOBALVARIABLE的全局变量不是最新的数值嘛

1楼
readonly 发表于:2013/4/3 10:46:07
我想实现每周期只允许输出一次信息,搜了下论坛,admin老大说用GLOBALVARIABLE。

按照他给的例子改的:

GLOBALVARIABLE: 过滤=0;

if 过滤<barpos then begin
MSGOUT(1,'看看');
过滤:=barpos;
end


可是输出结果还是每周期不止一个:
2013/04/03 10:33:11  看看
2013/04/03 10:33:12  看看
2013/04/03 10:33:13  看看
2013/04/03 10:33:14  看看
2013/04/03 10:33:15  看看
2013/04/03 10:33:16  看看


问题查到:勾选了“仅刷新最后一根k线”,过滤就会失效。

有没有解决办法?

2楼
admin 发表于:2013/4/3 10:49:37
if islastbar then
3楼
readonly 发表于:2013/4/3 11:08:45
改成这样,还是不行

if 过滤<barpos && islastbar then begin
MSGOUT(1,'看看');
过滤:=barpos;
end


看来要用GLOBALVARIABLE就不能勾选“仅刷新最后一根k线”了吧?
4楼
klc 发表于:2013/4/28 9:46:04
是的,我始终找不到化解的办法
5楼
klc 发表于:2013/5/2 19:37:37

readonly,我知道原因,其实也合理,变量在一个周期只保留一个值,中间的状态不保留。勾选了之后,在周期内的值不保留,等到走完K线时就保留了。

所以我现在编的程序,遵照金字塔的习惯,全部都是走完K线的,并且索性最后K线不做任何计算了(直接islastbar就exit),也不输出,反正不影响出信号,因为等他走完了(下根K线出来那瞬间),变成历史K线了,就出信号了

 

这样效率还高

[此贴子已经被作者于2013-5-2 19:37:51编辑过]
共5 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 2 queries.