Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

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
    Paul H.NinjaTrader Customer Service

    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.
        Paul H.NinjaTrader Customer Service

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by Barry Milan, Yesterday, 10:35 PM
        6 responses
        18 views
        0 likes
        Last Post Barry Milan  
        Started by DanielSanMartin, Yesterday, 02:37 PM
        2 responses
        13 views
        0 likes
        Last Post DanielSanMartin  
        Started by DJ888, 04-16-2024, 06:09 PM
        4 responses
        13 views
        0 likes
        Last Post DJ888
        by DJ888
         
        Started by terofs, Today, 04:18 PM
        0 responses
        12 views
        0 likes
        Last Post terofs
        by terofs
         
        Started by nandhumca, Today, 03:41 PM
        0 responses
        8 views
        0 likes
        Last Post nandhumca  
        Working...
        X