我对这个错误有一个问题-我已经检查了一些关于操作符和的使用的文章。all(),.any()等,但似乎不能让它与我的例子一起工作。我的代码在下面,如果你可以帮助,请。
def run_backtest(self):
#run strategy backtest - position multiplied by each returns record
data= self.results.copy()
if data[(data["position"] == 0) & (data["position"].shift(1) == 1)]:
data["position2"] = 1
else:
data["position2"] = -1
data["strategy"]= data["position"].shift(1)*data["returns"]
data["trades"] = data.position.diff().fillna(0).abs() #used to record number of trades taken
data.strategy = data.strategy + data.trades * self.tc #used to calculate the trade cost
self.results = data
1条答案
按热度按时间vltsax251#
解决了,只是不得不用.any()在我的比较逻辑的末尾:)