Rss & SiteMap

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

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

标题:MSGOUT同根k线只提示一次

1楼
zhuangck928 发表于:2013/10/21 11:41:46
老师好,请问如何让MSGOUT在同根k线上只提示一次?(盘中每次一有数据进入,满足条件的话,同根k线上会反复提示,看得比较烦。)谢谢!
2楼
lichenghu 发表于:2013/10/21 13:10:51

IF BARPOS>EXTGBDATA('A') THEN

MSGOUT();

EXTGBDATASET('A',BARPOS);

3楼
zhuangck928 发表于:2013/10/21 14:04:46
老师能解释下代码意思及原理吗?我感觉这行代码实现的是在一根k线只判断一次。但如果我想实现当根k线在条件condition1 成立后不再判断,是否应改成:

IF BARPOS>EXTGBDATA('A') and condition1 THEN

begin

MSGOUT();

EXTGBDATASET('A',BARPOS);

end;

4楼
lichenghu 发表于:2013/10/21 14:24:15

 是的,BARPOS在新K线形成的时候值就会变化,而A对应的值只会在MSGOUT后才会刷到最新BARPOS的值

 

所以没输出前BARPOS一直比A大,在输出后2者相等则不会输出

[此贴子已经被作者于2013/10/21 14:24:33编辑过]
5楼
zhuangck928 发表于:2013/10/21 14:36:20
但是系统提示exitgbdata这个函数会在金字塔或框架关闭后仍然保存,我有好几个框架都要用到,我担心当切换框架后会出现问题。
6楼
lichenghu 发表于:2013/10/21 14:38:09
  同一个EXTGBDATASET是在整个金字塔范围内共享的,每次开启策略前在工具-数据-全局变量管理器中把对应的值修改为0
7楼
zhuangck928 发表于:2013/10/21 14:50:30
老师可否用GLOBALVARIABLE实现类似的思路,我遇到的难点是:无法找一个地方自动赋值全局变量为0。谢谢!
8楼
zhuangck928 发表于:2013/10/21 14:51:51
我这样做的目的是不想每次都修改全局变量。
9楼
lichenghu 发表于:2013/10/21 14:57:58

 用VARIABLE也是可以的,但比较复杂!上述办法比较简单实用

 

对应您代码运行后会在下面全局变量管理找到这个设置的变量,将数值改了0就行了

 

 


图片点击可在新窗口打开查看此主题相关图片如下:无标题.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2013/10/21 14:58:15编辑过]
共9 条记录, 每页显示 10 条, 页签: [1]


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