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

Position best price level

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

    Position best price level

    Is there a quick and easy method within Ninja to track a position's best price level reached? I've been searching but can't seem to find one...

    #2
    Hello cgeorgan,

    Maybe something like this:
    double highestHighInTrade = MAX(High, BarsSinceEntry())[0];
    Ryan M.NinjaTrader Customer Service

    Comment


      #3
      Originally posted by NinjaTrader_RyanM View Post
      Hello cgeorgan,

      Maybe something like this:
      double highestHighInTrade = MAX(High, BarsSinceEntry())[0];
      Ahhh...good deal - that's what I was looking for. TY!

      Comment


        #4
        Update

        Originally posted by NinjaTrader_RyanM View Post
        Hello cgeorgan,

        Maybe something like this:
        double highestHighInTrade = MAX(High, BarsSinceEntry())[0];
        I have a functional update for anybody who happens across this thread in the future:

        BarsSinceEntry appears to be pretty resource intensive. On a tick level, you're going to run into your resource limit pretty fast, especially on backtesting.

        The simpler solution is to keep a container variable that starts at zero, then run this simple code:

        Code:
                            if (Position.MarketPosition != MarketPosition.Flat)
                            {
                                if(Position.MarketPosition == MarketPosition.Long)
                                {
                                    if(High[0] > positionBestPriceLevel)
                                        positionBestPriceLevel = High[0];
                                }
                                if(Position.MarketPosition == MarketPosition.Short)
                                {
                                    if(Low[0] < positionBestPriceLevel)
                                        positionBestPriceLevel = Low[0];
                                }    
                            }
        When you get a position update to flat, be sure to reset positionBestPriceLevel to zero.

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by usazencort, Today, 01:16 AM
        0 responses
        1 view
        0 likes
        Last Post usazencort  
        Started by kaywai, 09-01-2023, 08:44 PM
        5 responses
        603 views
        0 likes
        Last Post NinjaTrader_Jason  
        Started by xiinteractive, 04-09-2024, 08:08 AM
        6 responses
        22 views
        0 likes
        Last Post xiinteractive  
        Started by Pattontje, Yesterday, 02:10 PM
        2 responses
        21 views
        0 likes
        Last Post Pattontje  
        Started by flybuzz, 04-21-2024, 04:07 PM
        17 responses
        230 views
        0 likes
        Last Post TradingLoss  
        Working...
        X