(self)
| 494 | self.set_trailing_sl(pct_in_atr) |
| 495 | |
| 496 | def next(self): |
| 497 | super().next() |
| 498 | # Can't use index=-1 because self.__atr is not an Indicator type |
| 499 | index = len(self.data) - 1 |
| 500 | for trade in self.trades: |
| 501 | if trade.is_long: |
| 502 | trade.sl = max(trade.sl or -np.inf, |
| 503 | self.data.Close[index] - self.__atr[index] * self.__n_atr) |
| 504 | else: |
| 505 | trade.sl = min(trade.sl or np.inf, |
| 506 | self.data.Close[index] + self.__atr[index] * self.__n_atr) |
| 507 | |
| 508 | |
| 509 | class FractionalBacktest(Backtest): |