写了一段移动止盈止损的代码,回测print时发现了问题:
price_1前面有定义是开仓时的价位
下面这段代码,移动止盈的逻辑,没问题,顺着往下走
但是移动止损,只触发第一层0.992*price_1的止损,里面几层的止损都不触发……
请问这个要怎么解决呢?
elif self.pos > 0:
if price > self.price_1*1.01:
if price > self.price_1*1.02:
if price > self.price_1*1.03:
self.sell(price*0.8, abs(self.pos))
print(f"sell,{tick.datetime},price:{price},volume:{abs(self.pos)}")
elif price < self.price_1*1.01:
self.sell(price*0.8, abs(self.pos))
print(f"sell,{tick.datetime},price:{price},volume:{abs(self.pos)}")
elif price < self.price_1*1.005:
self.sell(price*0.8, abs(self.pos))
print(f"sell,{tick.datetime},price:{price},volume:{abs(self.pos)}")
elif price < self.price_1*0.992:
self.sell(price*0.8, abs(self.pos))
print(f"sell,{tick.datetime},price:{price},volume:{abs(self.pos)}")