Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Removed indicators don't really disappear?

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

    Removed indicators don't really disappear?

    Restarting NT doesn't clean them up... I mean they are 'gone' - but the OnStateChange is still being called.

    Creating a new workspace, and closing the old chart and old workspace - this print's still remain.


    1) Create Chart.
    2) Add SMA2 below, which is SMA, with print statements in OnStateChange.
    3) Remove SMA2.

    Anytime you go back into indicators - the OnStateChange for the removed indicators is still called... something isn't being released?

    In the attached image - you can see other previously removed OnStateChanges are being called from 2 other indicators I had removed.
    Attached Files

    #2
    UPDATE:

    It appears ALL indicators OnStateChange are called.

    I created a totally new indicator, added a Print in OnStateChange - did not add it to the chart, and it is being processed.

    So it's not really a new object then since it was never created... For some reason all OnStateChanges of every indicator are being called ...

    Comment


      #3
      Originally posted by sledge View Post
      UPDATE:

      It appears ALL indicators OnStateChange are called.

      I created a totally new indicator, added a Print in OnStateChange - did not add it to the chart, and it is being processed.

      So it's not really a new object then since it was never created... For some reason all OnStateChanges of every indicator are being called ...
      That sounds like the code that used to be in Initialize() in NT7 that called all indicators, is now being run from State == State.Configure in OnStateChange().

      Comment


        #4
        Originally posted by koganam View Post
        That sounds like the code that used to be in Initialize() in NT7 that called all indicators, is now being run from State == State.Configure in OnStateChange().
        Thought this sounded familiar...

        Finally found where I had read it before..(I might try reading more of the nt8 information)..

        (Didn't expect it to still be around though... Why does it need called? )...


        Comment


          #5
          OnStateChanged will be called for all indicators as you open the indicator dialog. Since we have to dig into all indicators to get their names and default properties which triggers State.SetDefaults.

          This is the equivalent of "Initialized" in NT7.

          However as you close the indicator dialog each instance should be cleaned up and you'll see State.Terminated get called.

          Therefor should be no 'leak' here. Your indicator only really starts up as State.Configure gets called.

          Comment


            #6
            Originally posted by NinjaTrader_Brett View Post
            OnStateChanged will be called for all indicators as you open the indicator dialog. Since we have to dig into all indicators to get their names and default properties which triggers State.SetDefaults.

            This is the equivalent of "Initialized" in NT7.

            However as you close the indicator dialog each instance should be cleaned up and you'll see State.Terminated get called.

            Therefor should be no 'leak' here. Your indicator only really starts up as State.Configure gets called.
            What you described is kind of what we thought would happen: sledge's results seem to be suggesting that the "process all classes" code may be running from State.Configure rather than State.SetDefaults.

            Comment


              #7
              I see the issue, yes we needed to look into that will get back shortly. Thanks Guys.

              Comment


                #8
                I've spent some time this morning testing all scenarios I can think of and I'm not able to isolate any behavior when State.Configure is being called across all objects.

                The only behavior I see is State.SetDefaults and State.Terminated, which is expected to be called just like we saw with Initalize() and OnTermination() for the reasons stated by Brett above.

                I'd be very interested to know where State.Configure as being called when the indicator was not configured (i.e., not on a chart, not in a workspace, etc). Let me know if you guys see that behavior and I'll be happy to run that in.

                Thanks.
                MatthewNinjaTrader Product Management

                Comment


                  #9
                  Originally posted by NinjaTrader_Matthew View Post
                  I've spent some time this morning testing all scenarios I can think of and I'm not able to isolate any behavior when State.Configure is being called across all objects.

                  The only behavior I see is State.SetDefaults and State.Terminated, which is expected to be called just like we saw with Initalize() and OnTermination() for the reasons stated by Brett above.


                  Thanks.
                  Thanks. I re-looked at everything and only see SetDefaults being called....as was in my original image posted.

                  Comment

                  Latest Posts

                  Collapse

                  Topics Statistics Last Post
                  Started by selu72, Today, 02:01 PM
                  1 response
                  9 views
                  0 likes
                  Last Post NinjaTrader_Zachary  
                  Started by WHICKED, Today, 02:02 PM
                  2 responses
                  12 views
                  0 likes
                  Last Post WHICKED
                  by WHICKED
                   
                  Started by f.saeidi, Today, 12:14 PM
                  8 responses
                  21 views
                  0 likes
                  Last Post f.saeidi  
                  Started by Mikey_, 03-23-2024, 05:59 PM
                  3 responses
                  51 views
                  0 likes
                  Last Post Sam2515
                  by Sam2515
                   
                  Started by Russ Moreland, Today, 12:54 PM
                  1 response
                  8 views
                  0 likes
                  Last Post NinjaTrader_Erick  
                  Working...
                  X