Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Exit after X bars

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Exit after X bars

    Hi,
    I would like to exit a strategy after X consecutive bars following the entry bar if none of the X bars have crossed above the entry bar High for a long position or crossed below the entry bar Low for a short position. Thanks, would appreciate any suggestions.

    #2
    Hello 2Look4me,

    Thanks for your post.

    You can use the BarsSinceEntry() method to check for X bars after entry: https://ninjatrader.com/support/help...sinceentry.htm

    When you place your order, you can save the High of the bar into a double variable (savedHigh for example)

    You can use the MAX() method to test for the maximum high in a look back period of x-1 (-1 to not include the entry bar). Reference: https://ninjatrader.com/support/help...aximum_max.htm

    This will allow you to write a condition:

    if (BarsSinceEntry() > x && MAX(High, x-1)[0] < savedHigh).

    For the other side, you would use MIN(Low, x-1)[0].
    Reference: https://ninjatrader.com/support/help...inimum_min.htm

    Comment


      #3
      Paul, thanks for the reply. I have the following:
      Code:
      private double  EntryHigh  =0;
      
      if (A && B)
        {
          EnterLong();
          EntryHigh = High(0);
        }
      if (BarsSinceEntry()==1 && High[1] !=EntryHigh)  //Verify entry bar high is the final high
        {
          EntryHigh = High[1];
        }
      else if(BarsSinceEntry()>X && MAX(High, X-1)[0] < EntryHigh)
        {
          ExitLong();
        }
      The strategy should exit if none of the X bars since entry crosses above the entry bar high. Else if any of the X bars crosses above the entry bar high, then there's no exit until the next exit parameter is encounter.

      There are instances where one of the X bars will temporarily cross above the entry bar high then closes below and an exit will still occur. Why the exit if the high was crossed? Am I missing something that is obvious?

      Comment


        #4
        Hello 2Look4me,

        Thanks for your reply.

        I would suggest you debug using print statements to see what the actual value of both EntryHigh and MAX(High, X-1)[0] are.

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by Geovanny Suaza, 02-11-2026, 06:32 PM
        0 responses
        558 views
        0 likes
        Last Post Geovanny Suaza  
        Started by Geovanny Suaza, 02-11-2026, 05:51 PM
        0 responses
        324 views
        1 like
        Last Post Geovanny Suaza  
        Started by Mindset, 02-09-2026, 11:44 AM
        0 responses
        101 views
        0 likes
        Last Post Mindset
        by Mindset
         
        Started by Geovanny Suaza, 02-02-2026, 12:30 PM
        0 responses
        545 views
        1 like
        Last Post Geovanny Suaza  
        Started by RFrosty, 01-28-2026, 06:49 PM
        0 responses
        547 views
        1 like
        Last Post RFrosty
        by RFrosty
         
        Working...
        X