1.
if ma3<ma2 and ma2<ma3 and ma3<ref(ma3,1) and ma2<ref(ma2,1) and ma1<ref(ma1,1) and 其他开仓条件 then 开仓语句;
2.
条件1和条件3互相矛盾
我是表达的是 满足条件一以后,然后满足条件二,前两个条件满足后,再满足条件三,三个条件满足后,然后开仓
1.
你这张图应该是ma3>ma2 >ma1吧
variable:n=0;
if ma3>ma2 and ma2>ma1 then n:=1;
if not(ma3<ma2 and ma2<ma1) then n:=0;
if ma1>ref(ma1,1) and barslast(cross(n=1,0.5))>0 and all(ma3<ref(ma3,1) and ma2<ref(ma2,1) and ma1<ref(ma1,1), barslast(cross(n=1,0.5))+1) and 其他条件 then 开仓语句;
2.
variable:m=0;
if ma1>ma2 and ma2>ma3 then m:=1;
if not(ma1>ma2 and ma2>ma3) then m:=0;
if ma1>ma3 and barslast(cross(ma2,ma1))>0 and count(ma1>ref(ma1,1),barslast(cross(m=1,0.5))+1) >0and count(ma1>ref(ma1,1) and ma2>ref(ma2,1) and ma3>ref(ma3,1),barslast(cross(m=1,0,5))+1) and 其他条件 then 开仓语句;