• 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 JTizz, Today, 04:56 PM
        0 responses
        7 views
        0 likes
        Last Post JTizz
        by JTizz
         
        Started by Dan_D_Trader, Today, 03:29 PM
        0 responses
        4 views
        0 likes
        Last Post Dan_D_Trader  
        Started by Bsmckm, Today, 02:02 PM
        0 responses
        9 views
        0 likes
        Last Post Bsmckm
        by Bsmckm
         
        Started by markyb0y, Today, 01:55 PM
        0 responses
        4 views
        0 likes
        Last Post markyb0y  
        Started by SlickRick, Today, 11:07 AM
        2 responses
        11 views
        0 likes
        Last Post NinjaTrader_ShawnB  
        Working...
        X