Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Why do you NOT need to use new keyword when instantiating another indicator?

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

    Why do you NOT need to use new keyword when instantiating another indicator?

    IN your NinjaScript Best Practices, you have an example where you create and save a reference to EMA(20) in the OnStateChange() method:


    Code:
    private EMA myEMA;
    private Series<double> mySeries;
    private SessionIterator mySessionIterator;
     
    protected override void OnStateChange()
    {  
       if (State == State.DataLoaded)
       {
          myEMA = EMA(20);
          mySeries = new Series<double>(this);
          mySessionIterator = new SessionIterator(Bars);
       }
    }
    Why don't you need to say:


    Code:
    myEMA = new EMA(20);
    instead of:


    Code:
    myEMA = EMA(20);

    #2
    I think I just answered my own question...the NinjaScript generated code for EMA defines an EMA function which does the new if the EMA(20) hasn't already been cached by something else:


    Code:
    return CacheIndicator<EMA>(new EMA(){ ...

    Comment


      #3
      Hello lel4866,

      You are correct. This is for caching purposes and NinjaTrader will construct the indicator and series using internal methods.
      Chelsea B.NinjaTrader Customer Service

      Comment

      Latest Posts

      Collapse

      Topics Statistics Last Post
      Started by Mindset, 04-21-2026, 06:46 AM
      0 responses
      85 views
      0 likes
      Last Post Mindset
      by Mindset
       
      Started by M4ndoo, 04-20-2026, 05:21 PM
      0 responses
      124 views
      0 likes
      Last Post M4ndoo
      by M4ndoo
       
      Started by M4ndoo, 04-19-2026, 05:54 PM
      0 responses
      64 views
      0 likes
      Last Post M4ndoo
      by M4ndoo
       
      Started by cmoran13, 04-16-2026, 01:02 PM
      0 responses
      115 views
      0 likes
      Last Post cmoran13  
      Started by PaulMohn, 04-10-2026, 11:11 AM
      0 responses
      67 views
      0 likes
      Last Post PaulMohn  
      Working...
      X