• If this is your first visit, you will have to register before you can post. To view messages, please scroll below and select the forum that you would like to visits. Questions? Be sure to check out the Forum FAQ.

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 sgordet, Today, 10:31 PM
        0 responses
        1 view
        0 likes
        Last Post sgordet
        by sgordet
         
        Started by Ilpropio, Today, 09:45 PM
        0 responses
        2 views
        0 likes
        Last Post Ilpropio  
        Started by Revan, Today, 05:44 PM
        1 response
        14 views
        0 likes
        Last Post NinjaTrader_Marco  
        Started by superg3, Today, 07:57 PM
        0 responses
        4 views
        0 likes
        Last Post superg3
        by superg3
         
        Started by Longhornmark, Today, 07:06 AM
        5 responses
        35 views
        0 likes
        Last Post nkhoi
        by nkhoi
         
        Working...
        X