你好,我想实现要么突破5日高点买,或者回调到RSI<40转向的时候买,一个指令执行后取消另外一个,这个该怎么写呢?
“突破5日高点买,或者回调到RSI<40转向” 你意思是这2个条件只执行其中一个? 不是很清楚你说的一个指令执行后取消另一个是要具体如何操作。
这么讲吧,5日高点2000,如果再没有触发回踩买入条件的情况下突破2000,我买入,然后不再回调买,如果在突破2000前先打到回调买条件,我直接回调买,然后取消突破买的条件,这种逻辑该怎么写呢?
[此贴子已经被作者于2018/4/13 13:43:43编辑过]
你这种其实用holding=0限制下就行了呗。
buycond:a or b;
if buycond then buy(holding=0,1,market);
这样A或者B任意一个触发下单,另一个就无法再次重新触发。
谢谢啊,触发后我想追踪是哪种情况触发,以便采用不同的处理方式,这个该怎么弄呢?
以下是引用FireScript在2018/4/13 14:05:45的发言:
你这种其实用holding=0限制下就行了呗。
buycond:a or b;
if buycond then buy(holding=0,1,market);
这样A或者B任意一个触发下单,另一个就无法再次重新触发。
VARIABLE:m:=0;
buycond:a or b;
if buycond then
begin
m:=if(a,1,2);//是a返回1 是b返回2
buy(holding=0,1,market);
end
//根据m值判断最近一次开仓是a还是b
//后面如果平仓m需要重置为0