Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Contract Rollover issues today

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

    Contract Rollover issues today

    I got pop ups on 2 environments today about rollovers, but not for the ES 03-23. I entered it manually in the chart, and assigned it to my strategy. Now when I try to start the strategy, I get the following "'EquityScorecardStrategy' tried to load additional data. All data must first be loaded by the hosting NinjaScript in its configure state. Attempted to load ES 03-23 Globex: 30 Minute

    I verified that I am getting ES 03-23 real time data in the DOM, and the charts in both environments.

    I tried going into Database Management -> and do an Update Instruments for General Properties, Future Expiries and Symbol Mappings.

    The error is complaining about how I am loading my data series in configure state, where its being loaded like this

    AddDataSeries(this.ES_NAME, Data.BarsPeriodType.Minute, 30, Data.MarketDataType.Last);

    and ES_NAME is set to the following in another location

    public String ES_NAME = "ES 03-23";


    This way of how I define it in the code has not changed in years. Something weird is happening with the new ES rollover. Any ideas?

    Last edited by szayedoud; 12-08-2022, 10:12 PM.

    #2
    Hello szayedoud,

    CME Equity products roll date has recently changed to the Monday prior to the third Friday of the expiration month.

    The ES 12-22 will roll to the ES 03-23 on December 12th.

    Keep in mind, if you choose to change the instrument settings rollover date for 03-23, your charts will not match other traders charts using NinjaTrader.

    If you decide to change to the ES 03-23 early without changing the rollover date, this will cause the incorrect historical data to load if the Merge policy is not changed to Do not merge.

    Below is a link to a forum post that details.
    https://ninjatrader.com/support/foru...356#post751356
    https://ninjatrader.com/support/foru...986#post782986


    As a heads up, using variables to call AddDataSeries() is not supported by NinjaTrader.

    From the help guide:
    "Warning
    Arguments supplied to AddDataSeries() should be hardcoded and NOT dependent on run-time variables which cannot be reliably obtained during State.Configure (e.g., Instrument, Bars, or user input). Attempting to add a data series dynamically is NOT guaranteed and therefore should be avoided. Trying to load bars dynamically may result in an error similar to: Unable to load bars series. Your NinjaScript may be trying to use an additional data series dynamically in an unsupported manner.​"
    https://ninjatrader.com/support/help...dataseries.htm

    This means we cannot support using ES_NAME in AddDataSeries().

    You are able to use null for the instrument, which will use the same instrument as the primary series.

    From the help guide:
    "Tips:
    4. For the instrument name parameter null could be passed in, resulting in the primary data series instrument being used."
    https://ninjatrader.com/support/help...dataseries.htm


    With the error you are getting, this is because you are calling an indicator that is using AddDataSeries() and the host script is not calling the exact same AddDataSeries() call.

    From the help guide:
    "Note: To maximize data loading performance, any NinjaScript object (indicator or strategy as host) which references a multi-series indicator which calls AddDataSeries must include it's own calls to AddDataSeries(). For example, if the code above was included in an indicator, and that indicator was referenced in a NinjaScript strategy, then the hosting strategy will need to include the same calls to AddDataSeries(). When the strategy adds the additional Bars objects, the calls to AddDataSeries() within the indicator will be ignored. If the Bars objects are not added by the strategy in such cases, and error will be thrown in the Log tab of the Control Center that would read - "A hosted indicator tried to load additional data. All data must first be loaded by the hosting NinjaScript in its configure state.""
    https://ninjatrader.com/support/help...tToninjascript

    This means you have to call the same AddDataSeries() call in the host script, exactly the same as the hosted script.​
    Last edited by NinjaTrader_ChelseaB; 12-09-2022, 09:21 AM.
    Chelsea B.NinjaTrader Customer Service

    Comment


      #3
      Thanks Chelsea - I was not aware of the rollover data change. Does that mean, after that Monday's trading, we should rollover, and start trading the new contract on Tuesday or does that mean start trading the new contract on Monday? Prior to this, I would rollover after the trading day on Thursday (week before expiration week) and start trading the contract on Friday.

      I've made a total mess of my workspace now - lol

      Comment


        #4
        Hello szayedoud,

        If you were trading the friday after the thursday rollover, then likely you would now trade tuesday after the monday rollover.
        Chelsea B.NinjaTrader Customer Service

        Comment


          #5
          This change of rollover date caught me surprise. I think you guys may have been caught off guard too. When I changed back 12-22, In Database Management, I see Rollover options for EMD, NQ, YM - but not ES and RTY. That's what I saw on Thursday. So I rolled those over, and couldn't figure why ES and RTY weren't rolling over.

          Comment


            #6
            Yes, it would seem so. Comprehensive explanation from Customer Service on ‘what YOU should do if YOU choose to roll ‘early’ etc.
            Why did NINJA’s rollover Notification go out advising INCORRECT (early) rollover dates I.e. not amended per the CME Advisory, and thus being the cause of this mess?

            Comment


              #7
              Hello brucerobinson,

              This is a recent change, and needed to be updated correctly in our system.

              We appreciate your patience and understanding.
              Chelsea B.NinjaTrader Customer Service

              Comment


                #8
                brucerobinson ​ - thanks for sharing the same frustration I had. It didn't make sense that 3 of the Equities were prompted to roll over, and not the other 2. Today's rollovers worked as expected. I really love Ninja Trader, but its this type of stuff that makes unreliable if I were to use it as the front end for Professional Trading. Even for retail traders, if I was live trading that day, it could have been a disaster. Just some constructive feedback to make the platform better. I do love it most of the time, but I wish it was more reliable.

                Comment

                Latest Posts

                Collapse

                Topics Statistics Last Post
                Started by argusthome, 03-08-2026, 10:06 AM
                0 responses
                65 views
                0 likes
                Last Post argusthome  
                Started by NabilKhattabi, 03-06-2026, 11:18 AM
                0 responses
                41 views
                0 likes
                Last Post NabilKhattabi  
                Started by Deep42, 03-06-2026, 12:28 AM
                0 responses
                23 views
                0 likes
                Last Post Deep42
                by Deep42
                 
                Started by TheRealMorford, 03-05-2026, 06:15 PM
                0 responses
                26 views
                0 likes
                Last Post TheRealMorford  
                Started by Mindset, 02-28-2026, 06:16 AM
                0 responses
                52 views
                0 likes
                Last Post Mindset
                by Mindset
                 
                Working...
                X