Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Did something happen to the chart rendering calculation between 8.0.26.1 and 8.1.1.7

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

  • NinjaTrader_ChelseaB
    replied
    Hello WHICKED,

    To report something to our development, we have to be able to reproduce and must have simple steps to reproduce.
    If our development cannot reproduce, they cannot start to address the issue, know where to look for the issue, or even know if the issue was corrected if code was changed, if we cannot reproduce it.

    We are not asking the community to fix anything. We are asking for a script that reproduce the behavior so we can show it to our development.

    I've added the SMA indicator to a chart and I'm not seeing any flashing.

    Can you reproduce with the SMA?

    Does a custom script have to be used to reproduce?
    If so, we need a reduced script with only the code necessary to reproduce if our development is going to try and correct the behavior.

    So far, I have not received any reduced scripts that can reproduce that we can provided to our development.
    Mentioning some custom script produces some behavior is not reporting a specific issue.

    Please let me know if does not clarify what we need to report an issue.

    Kind regards.

    Leave a comment:


  • WHICKED
    replied
    Here is the issue - between the versions that have been mentioned. No code was changed on the third parties end. But yet the version of NT did change.

    Between the versions the flashing issue was not observed on the old version of NT - new versions have the issue.

    That blatantly points to SOMETHING that NT did in their code that broke something with how things are rendered.

    flashing did not happen on the old version - meaning the vCPU and the amount of draw objects DID NOT MATTER at that time. Now all the sudden with updated NT, there is an issue? so a change WAS made between versions of NT and something that was done broke how it was handled in the past.

    This is not a fix that the COMMUNITY needs to provide - it is something that NT needs to look at and figure out what they broke.

    It would take a dev literally looking at the differences between the old version and new version. As for the comment 'well it is not in the release notes, blah blah blah' - yeah - and there is NEVER a time that a change was made that was not put in a release note in the entire history of software development.... right.....

    It has been reported multiple times - by multiple VENDORS and NON-VENDORS - and yet you ASK US FOR CODE? NO! a vendor is NOT GOING TO GIVE YOU CODE since it is proprietary. And I bet a non-vendor would do the EXACT SAME THING of not sharing their code to you.

    Stop asking for US to do what you need to do.

    Leave a comment:


  • NinjaTrader_ChelseaB
    replied
    Hello Leeroy_Jenkins,

    I need to be able to reproduce the behavior on my end.

    If you can reproduce using only system indicators / drawing tools (without any 3rd party or custom scripts) then the workspace would be helpful.

    Leave a comment:


  • llanqui
    replied
    just a suggestion...if you are going to send a video, you should also include the XML files for all the workspaces that are loaded


    from a previous thread, I understand the rending is happening on all open workspaces, no matter which one is in focus

    Leave a comment:


  • llanqui
    replied
    quote " It also seems to be affecting Plots - as they blink as well... so the theory of it being ONLY draw objects is a mute point."

    the plots are draw objects that need rendering, as well as the bars

    Leave a comment:


  • Leeroy_Jenkins
    replied
    NinjaTrader_ChelseaB if I were to send you a video with some simplified indicator and logs would it be helpful somehow? But I can do that on 8.0.28.

    Leave a comment:


  • WHICKED
    replied
    Originally posted by NinjaTrader_ChelseaB View Post
    Hello WHICKED,

    I am not aware of any changes to the rendering engine for these releases.

    A reduced test script that can reproduce would give us something to investigate.

    Unfortunately, I cannot provide a why without an investigation as to what is causing the behavior.
    It does not have to be only the rendering. It could be scaling, refresh, changes to the virtual CPU, anything that has to do with draw objects.

    It also seems to be affecting Plots - as they blink as well... so the theory of it being ONLY draw objects is a mute point.

    Leave a comment:


  • NinjaTrader_ChelseaB
    replied
    Hello WHICKED,

    I am not aware of any changes to the rendering engine for these releases.

    A reduced test script that can reproduce would give us something to investigate.

    Unfortunately, I cannot provide a why without an investigation as to what is causing the behavior.

    Leave a comment:


  • WHICKED
    replied
    Originally posted by NinjaTrader_ChelseaB View Post
    Hello WHICKED,

    If there is a bug that we can identify, we do want to report this.

    To identify the specific cause of an issue to report this to our development we must have a reduced test script, with only the bare minimum code to reproduce the behavior.
    This will be true of any thing you find that you feel is unexpected or incorrect behavior.

    If this is a script you have created, reduce the script to the bare minimum necessary to reproduce. Hopefully this will only be one or two lines of logic.
    Export the script and attach this to your next post.
    By default we will add the script to a 1 minute ES future chart. If there are special steps to reproduce, please include these.
    If I am able to reproduce the behavior I will report the behavior to our development and provide the reduced test script and steps to reproduce.

    "if they are literally saying that you must reduce number of draw objects"

    This has been the stance of development since day one of NinjaTrader 8.

    From the help guide:
    "When using Draw methods, a new instance of the Draw object is created including its custom rendering and calculation logic. These methods are convenient in many situations, but can quickly introduce performance issues if used too liberally. In some situations, you may see better performance for rendering via SharpDX in OnRender().​"
    Help guide: NinjaScript > NinjaScript Best Practices > Performance practices > Using DrawObjects vs custom graphics in OnRender()

    This means if there are more than just a few Draw method calls in the script, stop using Draw methods and custom render all shapes in OnRender(). It's also advised only running logic for the visible bars (ChartBars.FromIndex to ChartBars.ToIndex).
    thats all good and fine - but no one has answered WHY between 8.0.27.1 and 8.0.28 and onward that this all the sudden became an issue.

    Leave a comment:


  • llanqui
    replied
    well, if you can capture the flickers on a video it may validate this to the support staff

    maybe also an XML copy of all the workspaces that are open, so they can see the load

    as well, as drawing in the future...it makes sense that AutoScale is off , especially on a non-time based chart, such as Range / Renko. In that case there is no exact coordinate point that can be drawn

    before I reduced the number of draw objects I had flickering, jumping on the chart, as well as lagging rendering, sometimes far behind the market data

    as well the NinjaScript Utilization Monitor (found Right Click inside of Ninjascript Output) helped me see the indicators that were using the most resources

    that does not show if a virtual core is maxed out, or a momentary spike (could cause the flickering?)....just a general ongoing utilization

    ??

    Leave a comment:


  • llanqui
    replied
    Well, it makes sense to me that if all the Renders are done in only one virtual core, that it could be easily overwhelmed in fast markets with lots of draw objects...it seems that workspaces that are not "in front" need the rendering also...so lots of draw objects on multiple workspaces...well...

    if one is looking at tick charts, or 2 range /renko ...these create hundreds of bars in 10 seconds in a fast market like NQ at News or Open (sometimes)

    I found that when I closed unnecessary workspaces and stopped trying to put (a lot of) analytical draw objects on the historical part of the chart, and reducing the look back, my problems with the unstable chart went away even in a very fast NQ market

    but I'm using 8.0.28.0

    I have a Core I7 3.6 / 4.0 ghz

    Leave a comment:


  • NinjaTrader_ChelseaB
    replied
    Hello WHICKED,

    If there is a bug that we can identify, we do want to report this.

    To identify the specific cause of an issue to report this to our development we must have a reduced test script, with only the bare minimum code to reproduce the behavior.
    This will be true of any thing you find that you feel is unexpected or incorrect behavior.

    If this is a script you have created, reduce the script to the bare minimum necessary to reproduce. Hopefully this will only be one or two lines of logic.
    Export the script and attach this to your next post.
    By default we will add the script to a 1 minute ES future chart. If there are special steps to reproduce, please include these.
    If I am able to reproduce the behavior I will report the behavior to our development and provide the reduced test script and steps to reproduce.

    "if they are literally saying that you must reduce number of draw objects"

    This has been the stance of development since day one of NinjaTrader 8.

    From the help guide:
    "When using Draw methods, a new instance of the Draw object is created including its custom rendering and calculation logic. These methods are convenient in many situations, but can quickly introduce performance issues if used too liberally. In some situations, you may see better performance for rendering via SharpDX in OnRender().​"
    Help guide: NinjaScript > NinjaScript Best Practices > Performance practices > Using DrawObjects vs custom graphics in OnRender()

    This means if there are more than just a few Draw method calls in the script, stop using Draw methods and custom render all shapes in OnRender(). It's also advised only running logic for the visible bars (ChartBars.FromIndex to ChartBars.ToIndex).

    Leave a comment:


  • WHICKED
    replied
    Originally posted by llanqui View Post
    I am sing version 8.0.28.0

    I had a long thread on this issue, and it was answered to my satisfaction



    it seems Ninja is not using the GPU to render, and since all the graphics are done in one CPU Core ..that one Core (could be virtual) can max out even if the overall system is well within tolerance.....then the rendering could be out of synch with the data feed.

    this was the case with my code...I had way too many draw objects, and too many workspaces open, for Ninja to handle. The overall CPU usage was rarely above 50% but the rendering would lag the price in fast markets, for example NQ during Open or News

    I reduced the number of draw objects, and the number of open workspaces and now the chart is stable, keeps up with the Market Data, does not jump around or act badly
    sorry, but that is not a reasonable answer by NinjaTrader. Their previous versions did not have the issue. So whatever they changed broke their rendering system.

    if they are literally saying that you must reduce number of draw objects then they need to release a statement about how many draw objects it now support.

    it’s disheartening to hear that NT won’t do a code comparison to fix the issues.

    Leave a comment:


  • llanqui
    replied
    I am sing version 8.0.28.0

    I had a long thread on this issue, and it was answered to my satisfaction



    it seems Ninja is not using the GPU to render, and since all the graphics are done in one CPU Core ..that one Core (could be virtual) can max out even if the overall system is well within tolerance.....then the rendering could be out of synch with the data feed.

    this was the case with my code...I had way too many draw objects, and too many workspaces open, for Ninja to handle. The overall CPU usage was rarely above 50% but the rendering would lag the price in fast markets, for example NQ during Open or News

    I reduced the number of draw objects, and the number of open workspaces and now the chart is stable, keeps up with the Market Data, does not jump around or act badly

    Leave a comment:


  • WHICKED
    replied
    funny how we have PROVEN that it is causing issues - yet NT's blanket statement is - its a third party problem.....

    NOOOOOOO - we have said multiple times that multiple vendors and other programmers have seen the SAME THING when they went to the newer versions of NT.

    if you need a refresher 8.0.27.0 DID NOT have this issue 8.0.28.0 started the issues and it HAS NOT BEEN RESOLVED since.

    Pretty apparent that the developers dont want to go and look at the differences between those two versions specifically on chart scaling or chart refresh to figure out what change is causing the issues.

    Sorry, been quite a while since an update and it still is happening in 8.1.3.0 - so cant use 8.0.27.0 since it no longer works with brokers.

    Leave a comment:

Latest Posts

Collapse

Topics Statistics Last Post
Started by kinfxhk, 07-14-2026, 09:39 AM
0 responses
123 views
0 likes
Last Post kinfxhk
by kinfxhk
 
Started by kinfxhk, 07-13-2026, 10:18 AM
0 responses
104 views
0 likes
Last Post kinfxhk
by kinfxhk
 
Started by kinfxhk, 07-13-2026, 09:50 AM
0 responses
82 views
0 likes
Last Post kinfxhk
by kinfxhk
 
Started by kinfxhk, 07-13-2026, 07:21 AM
0 responses
102 views
0 likes
Last Post kinfxhk
by kinfxhk
 
Started by kinfxhk, 07-11-2026, 02:11 AM
0 responses
83 views
0 likes
Last Post kinfxhk
by kinfxhk
 
Working...
X