 
等级: 超级版主
- 注册:
- 2021-5-18
- 曾用名:
- FireScript
|
先以第一个开空(平多开空为例):
VARIABLE:len:=0;//记录连续满足cond1 的周期数(即有效周期,包含当前周期在内)
cond1:l<ref(l,1) and c<ref(c,1);//有效条件
if cond1 then len:=len+1;//满足条件,连续次数+1
if not(cond1) then len:=0;//不满足条件,连续次数重置为0
cond2:vol>3*ref(vol,1);//成交量条件
xyx:if(isup,o-l,c-l);//下影线
st:abs(c-o);//实体
cond3:xyx>=0.25*st;//下影线条件
isb:l>ref(l,1) and h<ref(h,1);//是否被前面K包含
cond4:count(cond2,len)>=1 and count(cond3,len)>=1 and len>=5;//连续满足cond1超过5个周期;至少有一天满足成交量条件;至少有一天满足下影线条件
xdo:=if(l<ref(l,1),o,0);
xdl:=if(l<ref(l,1),l,0);
平多开空1:ref(l,1)<ref(xdl,2) and cond3 and ref(c,1)<=ref(xdo,2) and ISUP and c>ref(xdo,2) and cond4;
平多开空2:all(xdl<>0,2) and l>ref(l,1) and ISUP and c>ref(o,2) and all(not(isb),len) and cond4;
平多开空3:all(xdl<>0,2) and l>ref(l,1) and ISUP and c>ref(o,2) and cond4;
平多开空4:all(xdl<>0,2) and ref(st,1)<=1.5*ref(st,2) and isup and c>ref(o,2);
DRAWTEXT(平多开空1,h,'开空1',COLORYELLOW,0);//对应平多开空条件1
DRAWTEXT(平多开空2,h,'开空2',COLORYELLOW,0);
DRAWTEXT(平多开空3,h,'开空3',COLORYELLOW,0);
DRAWTEXT(平多开空4,h,'开空4',COLORYELLOW,0);
我输出了四个平多开空满足的位置,你自己根据输出效果 校对下这个逻辑。你前面文字描述部分 有些地方 是容易引起歧义,所以如果有不满足条件但是有文字输出的地方,务必明确指出不满足的地方。 |
|