以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  疑似发现软件BUG,关于未来函数  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=6744)

--  作者:haifan1986
--  发布时间:2011/6/3 9:42:13
--  疑似发现软件BUG,关于未来函数

请高手帮帮忙,回答下 为什么画图标函数不能正确执行。  代码可仅仅看最后两行

 

 

源码如下: 我用测试显示的时候 当COND=0 为什么还会执行画图标函数。

VARIABLE: H1=8888888;
YK:=IF((H<=REF(H,1) AND L>=REF(L,1)) OR (H<=REFX(H,1) AND L>=REFX(L,1)),0,1);
有效值:YK,LINETHICK0;

H1:=IF(YK=1,H,0);
//IF YK=1 THEN H1:=H;
YK1:=REFX(YK,1);
YK2:=REFX(YK,2);
YK3:=REFX(YK,3);
YK4:=REFX(YK,4);
YK5:=REFX(YK,5);

QYK1:=REF(YK,1);
QYK2:=REF(YK,2);
QYK3:=REF(YK,3);
QYK4:=REF(YK,4);
QYK5:=REF(YK,5);
////////未来函数,向后推理

IF YK1=1 THEN N1:=1;
IF YK1=0 AND YK2=1 THEN N1:=2;
IF YK1=0 AND YK2=0 AND YK3=1 THEN N1:=3;
IF YK1=0 AND YK2=0 AND YK3=0 AND YK4=1 THEN N1:=4;

H2:=REFX(H,N1);


IF QYK1=1 THEN N2:=1;
IF QYK1=0 AND QYK2=1 THEN N2:=2;
IF QYK1=0 AND QYK2=0 AND QYK3=1 THEN N2:=3;
IF QYK1=0 AND QYK2=0 AND QYK3=0 AND QYK4=1 THEN N2:=4;
H0:=REF(H,N2);

前N:N2,LINETHICK0;
后N:N1,LINETHICK0;

COND1:=H1>H2;
COND2:=H1>H0;
大后:COND1,LINETHICK0;
大钱:COND2,LINETHICK0;
COND:=COND1 AND COND2;


H0A:H0,LINETHICK0;
H1A:H1,LINETHICK0;
H2A:H2,LINETHICK0;

最终:COND,LINETHICK0;                                              //////////上面的代码可以不用看。但是这条语句中COND显示为0时,他执行了下面的图标函数。
DRAWICON(cond,H+8*MINDIFF,1);


--  作者:明心
--  发布时间:2011/6/3 10:07:39
--  
DRAWICON(cond,H+8*MINDIFF,1); cond<>0 你改成试试看呢。
--  作者:fly
--  发布时间:2011/6/3 10:08:00
--  

DRAWICON函数本身没问题

 

楼主前面的语句太多了,所以没看.

用以下示例,可以清楚的看到,只有满足条件的时候,----CON为真的时候,才会画图标,请楼主再检查一下自己的程序.

con:REF(low,1)<low AND REF(high,1)<high,linethick0;
DRAWICON(con,H+2*MINDIFF,1 );


--  作者:haifan1986
--  发布时间:2011/6/3 10:34:14
--  

回复FLY 问题你可以仅仅看最后两行的代码 运行后, 在上面可以看到COND=0 的时候 有时候也出现图标。DRAWICON函数在别的地方运行肯定是没有问题的。


--  作者:haifan1986
--  发布时间:2011/6/3 10:37:25
--  

回复 明心   问题依然如故。 我的代码可以直接复制运行。


--  作者:王锋
--  发布时间:2011/6/3 12:46:46
--  
你是在序列模式还是逐K线模型运行的此公式
--  作者:haifan1986
--  发布时间:2011/6/3 14:21:42
--  
逐K线模型运行的此公式
--  作者:fly
--  发布时间:2011/6/3 15:57:32
--  
楼主的问题已经看到,正在分析,随后回复
--  作者:admin
--  发布时间:2011/6/3 16:00:50
--  
REFX属于未来函数,请尽量不要在逐K线模式下运行.而应该在序列模式下使用才会有稳定的表现