Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

How do you tell if your position is a simulated historical position

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

    How do you tell if your position is a simulated historical position

    Hi, I'm wondering if there is a definitive way to tell if your strategy currently executing a historical stimulated position after it has transitioned to real time. I understand that you can detect a discrepancy between the Account position and the strategy position, however as far as the strategy is concerned, it doesn't know what other existing strategies out there may be affecting the account position.

    We need to perform some special handling and feedback to the user when the strategy is in this special state - how do we know if we're in this state (from a programmatic perspective)?

    Thanks in advance.
    Jeremytang
    NinjaTrader Ecosystem Vendor - Shark Indicators

    #2
    Hello Jeremytang,

    An easy way to tell would be if the position is not flat on the last fully closed historical bar.
    Code:
    if (State == State.Historical && CurrentBar == Count - 2 && Position.MarketPosition != MarketPosition.Flat)
    {
    // the position is not flat on the last fully closed historical bar
    }
    Chelsea B.NinjaTrader Customer Service

    Comment


      #3
      Thanks Chelsea, does (Count-2) always gaurentee being at the close of the last historical bar, (assuming we're in BarsInprogress=0) even if there are multiple barseries loaded in the strategy?


      QUOTE=NinjaTrader_ChelseaB;n1052814]Hello Jeremytang,

      An easy way to tell would be if the position is not flat on the last fully closed historical bar.
      Code:
      if (State == State.Historical && CurrentBar == Count - 2 && Position.MarketPosition != MarketPosition.Flat)
      {
      // the position is not flat on the last fully closed historical bar
      }
      [/QUOTE]

      Jeremytang
      NinjaTrader Ecosystem Vendor - Shark Indicators

      Comment


        #4
        Hello Jeremytang,

        The positions on other instruments you would want to check individually.

        Code:
        if (State == State.Historical && BarsInProgress == 1 && CurrentBars[1] == BarsArray[1].Count - 2 && Positions[1].MarketPosition != Position.Flat)
        But for the primary instrument only the last bar is necessary and if the instrument is the same for added series this uses the primary series position.

        And yes, when the state is historical 'Count - 2' is the last closed bar (there is an unclosed historical bar after that transitions to real-time).
        Chelsea B.NinjaTrader Customer Service

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by NullPointStrategies, Today, 05:17 AM
        0 responses
        43 views
        0 likes
        Last Post NullPointStrategies  
        Started by argusthome, 03-08-2026, 10:06 AM
        0 responses
        124 views
        0 likes
        Last Post argusthome  
        Started by NabilKhattabi, 03-06-2026, 11:18 AM
        0 responses
        65 views
        0 likes
        Last Post NabilKhattabi  
        Started by Deep42, 03-06-2026, 12:28 AM
        0 responses
        42 views
        0 likes
        Last Post Deep42
        by Deep42
         
        Started by TheRealMorford, 03-05-2026, 06:15 PM
        0 responses
        46 views
        0 likes
        Last Post TheRealMorford  
        Working...
        X