老师,您好。我是金字塔专业版用户。有一个入市条件,自己写了。但一加载就死机,故请老师帮忙。
开多入市条件:
1.连续3支以上的K线为阳线;
2.连续阳线中,有一支阳线 H-O>=8;
3.连续阳线中,首支阳线的OPEN到最后一支的HIGH要有15点的距离;
下面是我写的条件。可是一加载就死了。麻烦帮帮忙。写成序列化的更好。
A:=ALL(C<O,3),LINETHICK0;
B:=ANY(L<=O-8,6),LINETHICK0;
D:=ALL(C>O,3),LINETHICK0;
E:=ANY(H>=O+8,6),LINETHICK0;
SHORT:A AND B,LINETHICK0;
LONG:D AND E,LINETHICK0;
T:=0;
IF SHORT=1 THEN
BEGIN
REPEAT T=OPEN UNTIL REF(C,1)>REF(O,1);
CEO:T,LINETHICK0;
SO:CEO-L>=15,LINETHICK0;
END
问题在循环条件上
REPEAT T=OPEN UNTIL REF(C,1)>REF(O,1);
你再想想这个循环,改写一下
前两个条件都没有问题.
主要是第3个条件----连续阳线中,首支阳线的OPEN到最后一支的HIGH要有15点的距离
这个条件最终是要找----首个阳线的开盘价和最后一个阳线的最高价,是吧
还是首个阳线的开盘价和所有阳线的最高价?
“这个条件最终是要找----首个阳线的开盘价和最后一个阳线的最高价,是吧”
REPEAT T=OPEN UNTIL REF(C,1)>REF(O,1);
这个语句在序列模式根本达不到你所想要的目的。
建义楼主用MSGOUT这个消息输出语句,调试你的代码程序
1.连续3支以上的K线为阳线;
COND1:=COUNT(C>O,3)=3;
2.连续阳线中,有一支阳线 H-O>=8;
COND2:=COUNT(H-O>=8,3) >0 AND COND1;
3.连续阳线中,首支阳线的OPEN到最后一支的HIGH要有15点的距离;
COND3:=COND1 AND COND2 AND REF(OPEN,3)-LOW >= 15;
REPEAT T=OPEN UNTIL REF(C,1)>REF(O,1);
这个语句在序列模式根本达不到你所想要的目的.
我知道这个在序列模式下达不到目的。但用到逐周期就加载很长时间,软件就停在那不动。
另外最后一个条件
COND3:=COND1 AND COND2 AND REF(OPEN,3)-LOW >= 15;
我去的不一定是倒数第三支K线。有可能是倒数第4,5.
我只要知道从连续开始,不一定是倒数第三支。
时间:2011-8-6
金字塔后台高级编程技巧
上海中期 北京
http://v.youku.com/v_show/id_XMjkyNjU3Mjc2.html
我只要知道从连续开始,不一定是倒数第三支。我想你是否应该仔细再想想前面给你做的公式
哦,我明你意思。我试试