Backtrader Community

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    1. Home
    2. Jayden Clark
    For code/output blocks: Use ``` (aka backtick or grave accent) in a single line before and after the block. See: http://commonmark.org/help/
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 4
    • Best 0
    • Controversial 0
    • Groups 0

    Jayden Clark

    @Jayden Clark

    0
    Reputation
    8
    Profile views
    4
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Jayden Clark Unfollow Follow

    Latest posts made by Jayden Clark

    • RE: Bracket Order closing at wrong prices.

      My bad, I didn't read the question properly. I think what you're asking lends itself to creating a seperate stop/limit order once in the market.

      posted in General Discussion
      Jayden Clark
      Jayden Clark
    • RE: Bracket Order closing at wrong prices.

      To your second question. I actually believe that the kind of tick trading you're talking of, using bid/ask, is not supported on backtrader.

      posted in General Discussion
      Jayden Clark
      Jayden Clark
    • RE: ATR_TrailingStop Indicator

      @Bo-Vargas here is the link to the repository:

      https://github.com/jantarktic/ATR_Trailing_Stop_Indicator

      posted in Indicators/Strategies/Analyzers
      Jayden Clark
      Jayden Clark
    • ATR_TrailingStop Indicator

      Hi All!

      I've been learning Backtrader over the last 4 days or so and I'm loving it!

      No matter how hard I searched, I haven't been able to find a pre-written ATR_TrailingStop indicator so I created one. I included 'Long' in the indicator name as this was written to begin calculating values from below the close price, therefore simulating a long position.

      import backtrader as bt
      from datetime import datetime
      import backtrader.indicators as btind
      import matplotlib.pyplot as plt
      %matplotlib inline
      
      #https://help.stockopedia.com/product-guide/charts/overlays/atr-trailing-stops/
      
      class ATR_TS_Long(bt.Indicator):
          
          alias = ('ATR_TRAILINGSTOP',)
          
          lines = ('atr_ts',)
          
          params = (
              ('atr_period', 14),
              ('atr_mult', 3),
          )
          
          plotinfo = dict(subplot=False,)  
          plotlines = dict(
              atr_ts = dict(ls = '-'), 
          )
             
          def __init__(self):
              
              self.atr = btind.ATR(self.data, period = self.params.atr_period)
              self.bigatr = self.atr * self.p.atr_mult 
              
              self.buysell = 1
              self.l.atr_ts = self.data.close - self.bigatr #first calculated value is below close price therefore simulating a long position.
              
              btind.CrossUp(self.data.close, self.l.atr_ts)
              btind.CrossDown(self.data.close, self.l.atr_ts)
              
      
              
          def next(self):
              
              if self.buysell > 0: 
                  self.lines.atr_ts[0] = self.data.close[0] - self.bigatr[0]
                  self.l.atr_ts[0] = max(self.l.atr_ts[-1], self.l.atr_ts[0])
                  if self.lines.atr_ts > self.data.close: 
                      self.lines.atr_ts[0] = self.data.close[0] + self.bigatr[0]
                      self.buysell = -1
      
              elif self.buysell < 0:
                  self.lines.atr_ts[0] = self.data.close[0] + self.bigatr[0]
                  self.l.atr_ts[0] = min(self.l.atr_ts[-1], self.l.atr_ts[0])
                  if self.lines.atr_ts < self.data.close:
                      self.l.atr_ts[0] = self.data.close[0] - self.bigatr[0]
                      self.buysell = 1
      

      Here is the link to the .ipynb file on Github.
      https://github.com/jantarktic/ATR_Trailing_Stop_Indicator/blob/master/btind ATR_TS_Long.ipynb

      Any feedback at all is greatly appreciated.
      Cheers!

      posted in Indicators/Strategies/Analyzers
      Jayden Clark
      Jayden Clark