以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  EXTGBDATA的使用问题  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=161673)

--  作者:jiantu
--  发布时间:2018/2/23 11:01:47
--  EXTGBDATA的使用问题
为什么 QUANJU 在满足条件的BAR上不停的循环累加,如何实现在满足条件的BAR上只+1一次?

MA0: MA( C,5 );
MA1: MA( C,10 );
IF REF( CROSS( MA0,MA1 ),1 ) THEN
 BEGIN
 NN:= EXTGBDATA( \'QUANJU\');
 NN:= NN + 1;
 EXTGBDATASET( \'QUANJU\',NN );
END
IF REF( CROSS( MA1,MA0 ),1 ) THEN
 BEGIN
 NN:= EXTGBDATA( \'QUANJU\');
 NN:= NN + 1;
 EXTGBDATASET( \'QUANJU\',NN );
END
NN1: NN,NODRAW;

--  作者:FireScript
--  发布时间:2018/2/23 11:28:21
--  

代码运行一次就会加一次,你一个K上代码的执行不止一次的,分笔来了就执行一次作为最新计算结果。所以才会这样。

 

稍迟点我写个范例给你。

 

 

 


--  作者:FireScript
--  发布时间:2018/2/23 13:53:32
--  

bars:EXTGBDATA(\'bars\');

IF c>o and bars<BARPOS THEN
 BEGIN
 NN:= EXTGBDATA( \'QUANJU\');
 NN:= NN + 1;
 EXTGBDATASET( \'QUANJU\',NN );
 EXTGBDATASET(\'bars\',BARPOS);
END

NN1: EXTGBDATA( \'QUANJU\'),NODRAW;

 

 

 

需要再添加一个全局变量进行控制才行。你参考样例修改你的那个代码即可。