Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Changing Plot Color Dynamically

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

    Changing Plot Color Dynamically

    I'm trying to creat an indicator where the color of the plot changes according to logic in OnUpdate(). I've tried making the plots pen local to the strategy and changing its color in OnUpdate() but that doesn't seem to work. I'm pretty sure i've seen other people do something similar but i can't seem to find any examples now that i'm looking for them. Any ideas on how i can go about doing this or examples of something similar?

    TIA

    #2
    Hi darckeen, you can work with one plot for each color you need, like demonstrated in this reference sample - http://www.ninjatrader-support2.com/...ead.php?t=3227

    Comment


      #3
      Perfect, thats exactly what i was looking for. Thanks.

      Comment


        #4
        But setting the pen example appears in your CHM file

        Originally posted by NinjaTrader_Bertrand View Post
        Hi darckeen, you can work with one plot for each color you need, like demonstrated in this reference sample - http://www.ninjatrader-support2.com/...ead.php?t=3227

        // Dynamically change the primary plot's color based on the indicator value
        protected override void OnBarUpdate()
        {
        if (Value[0] > 100)
        Plots[0].Pen = new Pen(Color.Blue);
        else
        Plots[0].Pen = new Pen(Color.Red);
        }

        So why it doesn't work ?
        Using 2,3 or even more plots for displaying different colors for different value intervals seems to me wasteful, both regarding performance and the scare memory resource.

        Comment


          #5
          xTrader1,

          Please follow the example shown in the reference sample. In NT7 you will have the ability to do it from a single plot.
          Josh P.NinjaTrader Customer Service

          Comment


            #6
            Originally posted by xTrader1 View Post
            // Dynamically change the primary plot's color based on the indicator value
            protected override void OnBarUpdate()
            {
            if (Value[0] > 100)
            Plots[0].Pen = new Pen(Color.Blue);
            else
            Plots[0].Pen = new Pen(Color.Red);
            }

            So why it doesn't work ?
            Using 2,3 or even more plots for displaying different colors for different value intervals seems to me wasteful, both regarding performance and the scare memory resource.
            This changes the whole plot to the new color every time. If you just want the section to change, you need the two plots to do so.
            eDanny
            NinjaTrader Ecosystem Vendor - Integrity Traders

            Comment


              #7
              Originally posted by eDanny View Post
              This changes the whole plot to the new color every time.
              I tried it and I know. I just used their own sample, and thought there is one plot workaround.

              Comment

              Latest Posts

              Collapse

              Topics Statistics Last Post
              Started by CaptainJack, 05-29-2026, 05:09 AM
              0 responses
              222 views
              0 likes
              Last Post CaptainJack  
              Started by CaptainJack, 05-29-2026, 12:02 AM
              0 responses
              138 views
              0 likes
              Last Post CaptainJack  
              Started by charlesugo_1, 05-26-2026, 05:03 PM
              0 responses
              154 views
              1 like
              Last Post charlesugo_1  
              Started by DannyP96, 05-18-2026, 02:38 PM
              1 response
              237 views
              0 likes
              Last Post NinjaTrader_ChelseaB  
              Started by CarlTrading, 05-11-2026, 05:56 AM
              0 responses
              195 views
              0 likes
              Last Post CarlTrading  
              Working...
              X