View Full Version : Important Poll: Everyone Please Respond
JS999
10-19-2009, 02:54 PM
I just found out that in NinjaTrader 7, all charts are now set to a global refresh rate of twice per second, and there is no way to change it. In 6.5, it would be like every chart has the DisplayUpdateInterval setting at the default value of 0.5 - and this cannot be changed at all.
I have asked Ray to allow us to change this setting in version 7 on either a per-chart basis (like in 6.5), or at least to globally modify the refresh value for all of our charts.
I have some longer-term charts that I set to a refresh interval of 0.5, and then other charts that I set to an interval of 0 (updating on every tick)... but in version 7 this will now be impossible as it stands, and you won't be able to set any charts to update on incoming ticks.
At a minimum, I personally want to be able to set the global refresh to 100 ms or so, even if it's not settable on every chart. Please respond to the poll with your thoughts.
zweistein
10-19-2009, 03:19 PM
On the chart I don' t care much. Also 2 seconds is fine on a chart.
But for sure I need a text display of the bid and ask and last ticks.
This should update with every incoming tick.
E.g. in chartrader or SuperDOM
Andreas
JS999
10-19-2009, 03:21 PM
On the chart I don' t care much. Also 2 seconds is fine on a chart.
But for sure I need a text display of the bid and ask and last ticks.
This should update with every incoming tick.
E.g. in chartrader or SuperDOM
Andreas
The DOM I believe does seem to update fine on every tick, this is just an issue with charts. If you are trading ES it won't matter, because that instrument doesn't move a lot in terms of ticks per second, which is why some people won't care. However, on something like CL which can jump 10 ticks in a heartbeat, having a half second delay is a serious problem.
whitmark
10-19-2009, 03:30 PM
I support indicators for high frequency discretionary scalpers that like to see the charts update nearly as frequently as the DOM, primarily for Level II updates. While updating as frequently as the DOM is not reasonable, clearly allowing an update down to 100ms is needed.
Whitmark
JS999
10-19-2009, 07:49 PM
Well, so far we have 60% of people who think it's extremely important to have the same ability to modify the refresh rate that existed in NT 6.5, and 40% of people who don't care much. I suppose I really should have limited the poll to short-term intra-day traders, since not everyone trades that style. There are people who hold positions for hours on on end that probably couldn't care less about a potential 0.5 second delay, but that doesn't necessarily make it an unimportant feature. I suspect that all the votes for it are from scalpers or short-term traders like me. If anyone wants to add commentary on this, feel free... the more people we have requesting it, the more likely that they will add it in.
theLonelyTrader
10-19-2009, 07:55 PM
Haven't read through this whole thread, but let me chime in. I paid about FIFTEEN HUNDRED DOLLARS for a multibroker license, and NinjaTrader wants to limit my chart refresh capabilities?!
It sounds to me like the software engineers are driving the process. In fact, it should be traders driving the process.
Whether anyone here cares about the refresh rate or not, that isn't the issue. The capability should be flexible -- like any charting platform that advertises itself to be a professional grade platform. 500ms is waaaay too long for some traders. In fact, why even use a DOM if your refresh is 500ms? WHY? It doesn't make any sense.
So go tell the software engineers to get back to work and do it right. Don't let them drive the process. NinjaTrader does not exist as a playground for a bunch of code-geeks. It is for traders. Code geeks are paid by traders to find solutions so that TRADERS can make money, not limit trading functionality.
This is a design FAIL.
NinjaTrader is skating on thin ice with me. V6.5 is buggy, takes way to long to load, and as of now I can't even get an accurate PnL on both of my trading accounts. Ninja tech support says: "Get flat, then repair your database." Well, I have some long term positions. Do I just "get flat" so that I can get NT to work properly? (Tells me a code geek, again, is driving the process, instead of a trader.) And part of the reason I wanted Ninja was for the PnL metrics. Repairing the DB would erase my entire trade history. So what the hell am I using this software for?
Good question. And now I'm hearing that NT7 may only allow my charts to refresh every 500ms.
Good one, guys. Really.
JS999
10-19-2009, 08:08 PM
Dear NinjaTrader team:
As you can see by some of the responses in this thread, this is not an optional feature that you have removed. It is a critical element of the software. Locking the chart refresh rate at 500 ms and not making it changeable essentially makes your software completely useless for scalpers, and what is worse, this represents a feature loss from 6.5. To be honest, it never occurred to me in my wildest dreams that you would even think of doing something like this. You're supposed to add features with a new software release, not remove them!
It's one thing to eliminate the ability to process data on each incoming tick, as that is heavily CPU intensive. But there is a huge gulf of difference between each incoming tick and a potential 500 ms delay, and you have provided no functionality for anything in between. The user should be able to set a refresh delay of at least 100 ms granularity to give acceptable real-time performance, and guys, this should be settable for each chart.
Why you made a global refresh rate instead of leaving it as it was in 6.5 and simply eliminating the "every incoming tick" option is something that I just don't understand. All you would have had to do is leave the original design and make the minimum refresh something like 50-100 ms, with no option to set it to 0 as it was in 6.5.
It is reasonably important to be able to set different refresh rates for different charts, as some are longer-term and some are shorter term... a global refresh rate makes shorter-term charts suffer unnecessarily at the expense of longer term charts, and is a waste of CPU cycles. An immediate hack would be to allow us to change the global refresh rate, but ideally, you should go back and make it settable per chart.
Anyways, I can assure you with 100% certainty that if you do not add this feature back in, the response you are going to get from scalpers out there once you release it in this form is not going to be pretty. It is quite frankly ridiculous that you removed this feature in the first place, and in my opinion you should add it back in ASAP before too many other people get mad. Just my $0.02.
Haven't read through this whole thread, but let me chime in. I paid about FIFTEEN HUNDRED DOLLARS for a multibroker license, and NinjaTrader wants to limit my chart refresh capabilities?!
It sounds to me like the software engineers are driving the process. In fact, it should be traders driving the process.
Whether anyone here cares about the refresh rate or not, that isn't the issue. The capability should be flexible -- like any charting platform that advertises itself to be a professional grade platform. 500ms is waaaay too long for some traders. In fact, why even use a DOM if your refresh is 500ms? WHY? It doesn't make any sense.
So go tell the software engineers to get back to work and do it right. Don't let them drive the process. NinjaTrader does not exist as a playground for a bunch of code-geeks. It is for traders. Code geeks are paid by traders to find solutions so that TRADERS can make money, not limit trading functionality.
This is a design FAIL.
NinjaTrader is skating on thin ice with me. V6.5 is buggy, takes way to long to load, and as of now I can't even get an accurate PnL on both of my trading accounts. Ninja tech support says: "Get flat, then repair your database." Well, I have some long term positions. Do I just "get flat" so that I can get NT to work properly? (Tells me a code geek, again, is driving the process, instead of a trader.) And part of the reason I wanted Ninja was for the PnL metrics. Repairing the DB would erase my entire trade history. So what the hell am I using this software for?
Good question. And now I'm hearing that NT7 may only allow my charts to refresh every 500ms.
Good one, guys. Really.
darthtrader
10-19-2009, 09:07 PM
It seems this option has also been removed from the time and sales window/tape.
I do have to say this is disappointing..The reason I dont use interactive brokers for data is I want to have the choice to see all ticks or not and not have that choice made for me.
NinjaTrader_Ray
10-19-2009, 09:10 PM
It seems this option has also been removed from the time and sales window/tape.
I do have to say this is disappointing..The reason I dont use interactive brokers for data is I want to have the choice to see all ticks or not and not have that choice made for me.
You will see all the ticks, none are dropped. The display is not updated per tick.
aslane
10-19-2009, 09:25 PM
You are kidding right? This is a manditory feature that can not be dropped.
NinjaTrader_Ray
10-19-2009, 09:52 PM
All,
Please keep in mind that we are in a beta phase to stabilizethe application and test some of our decisions with respect to features, changes and enhancements. I can see that this is a hot topic for some of you and I am sure this will not be the last decision we have made that is challenged. I assure you that the feedback does not fall on deaf ears. For now, I will leave this thread open for further discussion and once all the comments are in, I will chime back in and provide some further thoughts on the subject.
aslane
10-19-2009, 10:18 PM
Glad you are listening. People have been waiting a long long time for NT7, and the peaks behind the curtain look promising. I know some things need to change in order to get some of the new features, but something like this is so obvious for a short term trader. I guess I would ask if there are some other things that got dumped that you know might raise a few eye brows (especially functionality that is just dropped)?
NinjaTrader_Ray
10-19-2009, 10:21 PM
Glad you are listening. People have been waiting a long long time for NT7, and the peaks behind the curtain look promising. I know some things need to change in order to get some of the new features, but something like this is so obvious for a short term trader. I guess I would ask if there are some other things that got dumped that you know might raise a few eye brows (especially functionality that is just dropped)?
There are maybe 400+ line items that would make it to the NT7 release notes...my guess is that somewhere in that list there are items that some may be challenged. Different strokes for different folks...Meaning, I can't speculate what might be a concern for one or be a treasure for another. Only time will tell.
JS999
10-19-2009, 10:32 PM
There are maybe 400+ line items that would make it to the NT7 release notes...my guess is that somewhere in that list there are items that some may be challenged. Different strokes for different folks...Meaning, I can't speculate what might be a concern for one or be a treasure for another. Only time will tell.
Well, I'd say time is telling on this poll so far. Out of 27 respondents, fully 55% at the moment are saying that this is a critical issue. Another 11% are saying that it is very important to them, and asking you to add it in.
When you take into account the likelihood that most of the respondents who said they didn't care are probably longer term traders (that would only make sense, wouldn't it??), then you are left with the inescapable conclusion that just about every single short term trader is very, very, very unhappy with this decision. Just what exactly more do you need to see? I would be surprised to see these percentages change significantly going forward.
Ray, when you are scalping something like crude oil, there are times when it can move 50 ticks in literally 100 milliseconds. Not that anyone in their right mind would try to scalp a move like that, but when that does happen, you want to know it as it's happening, not 1/2 second late. That instrument will often make a spike move of 10-15 ticks and then immediately reverse back a half second later to where it was. Now, again, you shouldn't necessarily try to trade that specific move... but you want to know about these things as soon as they happen.
This is make-or-break, Ray... not some nice little feature out of a list of 400 features that you may or may not add.
Let me make this simple for you:
You will be adding this feature to NinjaTrader 7. Whether you are smart enough to add it now after having this type of advance warning, or whether you need to get a nasty black eye about it first when the greater public at large finds out about it is irrelevant. This change will be made by you. This is not a request, it is a prediction. Do the smart thing and make it a priority to fix this reasonably quickly before every scalper using NT starts crying for your head, because you are going to be fixing it one way or another, sooner or later. I'm not sure if this has occurred to you, but your Zen-Fire brokerage partners are marketing your software as to-the-tick accurate with their data feed. That is a complete and utter joke if you limit the chart refresh to 1/2 second. Did you actually consult with them before making this decision?
There really is nothing to debate or consider here - it is a very serious flaw in your software and 55% of the people that have responded to this poll so far are trying to tell you that. Please listen.
cls71
10-20-2009, 02:14 AM
Anyway, you can refresh the chart when you want by overriding the OnMarketData method and then ChartControl.Refresh() or ChartControl.Invalidate();
(I think that is not a insuperable issue by code. But yes, my vote :
This is very important to me! I want the ability to modify the refresh settings! )
Best Regards
NinjaTrader_Dierk
10-20-2009, 03:03 AM
Anyway, you can refresh the chart when you want by overriding the OnMarketData method and then ChartControl.Refresh() or ChartControl.Invalidate();
I would not want to infer on the discussion her, but provide a word of warning: "Constantly" calling .Invalidate() on every market data event easily could overload NT and cause the exact hanging/lagging issue which people experience.
Nor would I want to start a new discussion on that particular topic (there are various of them on the forum), but just put things into right perspective.
Baruch
10-20-2009, 04:04 AM
Hi all.
I'm not a scalper so maybe I should not interfere, but I just want to ask the loud traders on this thread. Are you trading through internet or are you connected directly to the exchange? I traded live with "PFG Worst" and had a delay of more then 10 seconds on my data feed. I called them and they tried to help but couldn't find anything wrong. Since then I upgraded my internet connection and left PFG.
I don't know if geeks are responsible for this constrain, but I strongly believe that there are trade offs. Like if you update the chart you also need to run through your indicator's scripts and update them. If you have several charts and several indicators on each of them, you may end up with slower response then 1/2 a second.
So in Utopian world I would prefer an instant update, but I give credit to NJ that they have a good reason for not doing so.
cls71
10-20-2009, 04:04 AM
Thanks Dierk for the clarification.
yes, you must pass a region to the method to improve the performance respect to Refresh(). I guess these methods only are used for expert programmers (this should be) whick know how use them.
Obviously, if you use Invalidate() o Refresh() your performance will decrease compared to if you don't use them and prefer 0.5 sec delay.
NinjaTrader_Dierk
10-20-2009, 04:09 AM
Hi all.
I'm not a scalper so maybe I should not interfere, but I just want to ask the loud traders on this thread. Are you trading through internet or are you connected directly to the exchange? I traded live with "PFG Worst" and had a delay of more then 10 seconds on my data feed. I called them and they tried to help but couldn't find anything wrong. Since then I upgraded my internet connection and left PFG.
I don't know if geeks are responsible for this constrain, but I strongly believe that there are trade offs. Like if you update the chart you also need to run through your indicator's scripts and update them. If you have several charts and several indicators on each of them, you may end up with slower response then 1/2 a second.
So in Utopian world I would prefer an instant update, but I give credit to NJ that they have a good reason for not doing so.
Thanks for sharing your thoughts.
However, let me try to clarify:
- (as Ray already pointed out): each and every tick coming in is processed. There is not a single tick dropped/compressed/aggregated whatsoever by NT.
- this includes updating of strategies and indicators: they all receive and process all ticks as they come in
- only the chart itself is repainted every 0.5 secs
Baruch
10-20-2009, 04:39 AM
Thanks Dierk,
This is even better. You actually allow people staring at charts to blink and not worry that they lost a lot of action. I will discard the development of a robotic arm which supposed to enter up to 5 trades in 100 ms.
JS999
10-20-2009, 06:02 AM
If you have several charts and several indicators on each of them, you may end up with slower response then 1/2 a second.
So in Utopian world I would prefer an instant update, but I give credit to NJ that they have a good reason for not doing so.
They have no good reason whatsoever for doing so. It's one thing to make .5 seconds the default setting as it is in NT 6.5, but it's another thing to completely remove the ability to change the refresh rate, and worse, to lock it to the same value on every chart.
What if I want to have 5 charts open with no indicators on them, Baruch? What if one of them is a 1 minute, one is 5 minute, one is 15 minute, one is 60 minute, and one is 1440 minute? The way that things are currently set up in NT7, everything refreshes at 1/2 second intervals. What if I wanted my 1 and 5 minute to update instantly on every tick, my 15 minute to update every 200 ms, my 60 minute to update every 1/2 second, and my 1440 minute (full day) to update every full second? (And what if I had the most powerful computer that money can buy, so that processing is not an issue?) I can get this setup in NT 6.5, and it works great. I can't do that in NT 7.
Even if they give us the ability to change the refresh rate globally to 100 ms, now I would have to have the 60 minute and 1440 minute updating 10 times a second, which is completely unnecessary and draws CPU cycles away from where they are really needed, which is the 1 and 5 minute where instant updates are important.
I swear, it's like you guys just graduated from programming school or something. Have you not been programming software for traders for the past number of years? What the hell is wrong with you NinjaTrader guys anyways? It's like you all just collectively lost your minds and decided to implement this completely ridiculous and incredibly short-sighted solution, that actually claws back a very useful feature from 6.5. Has it occurred to you that some people might be running NT on a very powerful machine with only a few charts open, and that speed is critical for them?
The only reason I can think of for doing this, is that you got tired of hearing complaints from some fools who ran 30 charts with 10 indicators each on them, all set at zero refresh on a Pentium 1 GHz or something. Maybe you didn't want to hear all the performance complaints from some ignorant people any more, so you just decided to artificially limit everyone to 1/2 second refresh. If so, you need to seriously re-evaluate this policy. I can assure you that you are going to hear a heck of a lot more complaints if you are dumb enough to keep things as they are.
61% of people are now telling you that this is a critical issue and that you need to fix it, with another 10% saying that it is important. Last time I checked, we paid you to write software for us that is supposed to suit our needs. You aren't supposed to be telling us what we need, it's the other way around. We are speaking loud and clear here. Stop jerking us around with all this "we'll think about it" garbage and just fix it. NOW. This poll is telling you in no uncertain terms that you screwed up, and it's time you started to listen, so do yourselves a favor and solve this issue soon before you get any more of a black eye on it. Just because some people in this poll happen to be longer-term traders and don't care, it doesn't mean that it's a great idea to ignore the rest of us.... and we are telling you that pretty much every single short-term trader on this board hates your decision.
Because of the incredibly bad way that you are handling this in the last 24 hours, I am already starting to look around at other software solutions instead of bothering to continue with your beta, and I suspect a number of other traders might very well be doing the same thing.
JS999
10-20-2009, 06:50 AM
Thanks Dierk for the clarification.
yes, you must pass a region to the method to improve the performance respect to Refresh(). I guess these methods only are used for expert programmers (this should be) whick know how use them.
Obviously, if you use Invalidate() o Refresh() your performance will decrease compared to if you don't use them and prefer 0.5 sec delay.
cls71, it's good to realize that we can actually manually change the refresh rate ourselves through code. I'm assuming that if I just check the current time inside the OnMarketData() event handler and choose to call Refresh() or Invalidate() every 100 ms, that this will work? If I made an indicator that did that, would it automatically refresh the entire chart and all indicators on it at that interval? I also can't find any documentation on Refresh() or Invalidate()... maybe I missed it. Is there a difference between the two?
NinjaTrader_Ray
10-20-2009, 06:52 AM
They have no good reason whatsoever for doing so. It's one thing to make .5 seconds the default setting as it is in NT 6.5, but it's another thing to completely remove the ability to change the refresh rate, and worse, to lock it to the same value on every chart.
What if I want to have 5 charts open with no indicators on them, Baruch? What if one of them is a 1 minute, one is 5 minute, one is 15 minute, one is 60 minute, and one is 1440 minute? The way that things are currently set up in NT7, everything refreshes at 1/2 second intervals. What if I wanted my 1 and 5 minute to update instantly on every tick, my 15 minute to update every 200 ms, my 60 minute to update every 1/2 second, and my 1440 minute (full day) to update every full second? (And what if I had the most powerful computer that money can buy, so that processing is not an issue?) I can get this setup in NT 6.5, and it works great. I can't do that in NT 7.
Even if they give us the ability to change the refresh rate globally to 100 ms, now I would have to have the 60 minute and 1440 minute updating 10 times a second, which is completely unnecessary and draws CPU cycles away from where they are really needed, which is the 1 and 5 minute where instant updates are important.
I swear, it's like you guys just graduated from programming school or something. Have you not been programming software for traders for the past number of years? What the hell is wrong with you NinjaTrader guys anyways? It's like you all just collectively lost your minds and decided to implement this completely ridiculous and incredibly short-sighted solution, that actually claws back a very useful feature from 6.5. Has it occurred to you that some people might be running NT on a very powerful machine with only a few charts open, and that speed is critical for them?
The only reason I can think of for doing this, is that you got tired of hearing complaints from some fools who ran 30 charts with 10 indicators each on them, all set at zero refresh on a Pentium 1 GHz or something. Maybe you didn't want to hear all the performance complaints from some ignorant people any more, so you just decided to artificially limit everyone to 1/2 second refresh. If so, you need to seriously re-evaluate this policy. I can assure you that you are going to hear a heck of a lot more complaints if you are dumb enough to keep things as they are.
61% of people are now telling you that this is a critical issue and that you need to fix it, with another 10% saying that it is important. Last time I checked, we paid you to write software for us that is supposed to suit our needs. You aren't supposed to be telling us what we need, it's the other way around. We are speaking loud and clear here. Stop jerking us around with all this "we'll think about it" garbage and just fix it. NOW. This poll is telling you in no uncertain terms that you screwed up, and it's time you started to listen, so do yourselves a favor and solve this issue soon before you get any more of a black eye on it. Just because some people in this poll happen to be longer-term traders and don't care, it doesn't mean that it's a great idea to ignore the rest of us.... and we are telling you that pretty much every single short-term trader on this board hates your decision.
Because of the incredibly bad way that you are handling this in the last 24 hours, I am already starting to look around at other software solutions instead of bothering to continue with your beta, and I suspect a number of other traders might very well be doing the same thing.
Correct, we write software that suit your needs so let be me frank:
- I don't see how we handled this badly since I have not said anything yay or nay. The beta has been released for just over 16 hours of which 8 I was sleeping and another 3 I was having dinner and family time so...I would appreciate a little breathing room
- Some users have performance and lagging times during high market volatility times
- The majority of these cases are directly due to users setting UI refresh rates to extreme levels
- At these extreme levels --> You can get lag of your data by seconds since during high volume times --> There is just a lot of UI processing to do
- So in fact, having high refresh rates at certain times has the potential of giving you a false sense of security since you might update the chart every tick but its delayed
- Having a lowered refresh rate will actually be more efficient for the application and ensure that you get the data updates as timely as possible
That being said...I am not saying yay or nay, I am saying that I will let the community speak up which is what is happening. If you feel this is wrong then do what you must in looking at other software.
darthtrader
10-20-2009, 06:59 AM
You will see all the ticks, none are dropped. The display is not updated per tick.
Ray, while I understand that no tick will be dropped with this, doesn't this ammount to aggregating tick data to 500 milliseconds? Interactive brokers is not dropping data per se either, they are just aggregating and shuttling it to the user at .25 millisecond snapshots.
Baruch, if you don't have need for this feature, great. But the robotic arm comment was quite ignorant and unwarranted. While I will admit .5 seconds sounds like the blink of an eye if you don't bother with this level of granularity, its actually quite a long time.
I can also understand that since alot of users would be like Baruch and have no use for this refresh rate that it creates alot of problems support wise with people complaining the charts are slow. A good solution could be simply burying the defaults to turn the refresh rate up so that people who this would cause problems for don't accidentally turn the refresh rate up, but people who need it can at least get to it.
NinjaTrader_Ray
10-20-2009, 07:06 AM
Ray, while I understand that no tick will be dropped with this, doesn't this ammount to aggregating tick data to 500 milliseconds? Interactive brokers is not dropping data per se either, they are just aggregating and shuttling it to the user at .25 millisecond snapshots.
Baruch, if you don't have need for this feature, great. But the robotic arm comment was quite ignorant and unwarranted. While I will admit .5 seconds sounds like the blink of an eye if you don't bother with this level of granularity, its actually quite a long time.
Absolutely not. There is no aggregation whatsover. It just the UI is repainted every 500 ms provided there is a market data change that warrants a repaint. I believe you have a typo, my understanding is that IB sends snapshot data ever 250 ms (4 x per second) which is better than what they used to do at every 7/10 of a second.
darthtrader
10-20-2009, 07:11 AM
I believe you have a typo, my understanding is that IB sends snapshot data ever 250 ms (4 x per second) which is better than what they used to do at every 7/10 of a second.
oops sorry, my coffee hasn't digested yet...I did mean .25, not .25 milliseconds.
bobbethgoo
10-20-2009, 07:17 AM
Great points, I hadn't thought of this.
What I do, FWIW, is set entry chart to 0, slightly longer term chart to defualt .5 and larger still charts say 30, 60 min etc to 1 sec or greater updates.
- The majority of these cases are directly due to users setting UI refresh rates to extreme levels
- At these extreme levels --> You can get lag of your data by seconds since during high volume times --> There is just a lot of UI processing to do
- So in fact, having high refresh rates at certain times has the potential of giving you a false sense of security since you might update the chart every tick but its delayed
- Having a lowered refresh rate will actually be more efficient for the application and ensure that you get the data updates as timely as possible
JS999
10-20-2009, 07:37 AM
Correct, we write software that suit your needs so let be me frank:
- I don't see how we handled this badly since I have not said anything yay or nay. The beta has been released for just over 16 hours of which 8 I was sleeping and another 3 I was having dinner and family time so...I would appreciate a little breathing room
The fact that 60% of people were already telling you that this was critical a few hours ago, and the fact that you are still vacillating on it is how you are handling this badly. In fact, I can't believe that this issue wasn't laughed out of the room in your design meetings in about 10 seconds, that's how ridiculous your current solution is. When people complain about performance, that means that they want you to improve the processing speed, not artificially limit what they can see and when.
- Some users have performance and lagging times during high market volatility times
Wow, really? Because according to you on this board a few months ago, "most" users don't have this problem. So we go from that statement from you back in June to a decision now that this is an issue serious enough to have to limit everyone to .5 seconds refresh rate to solve it. Hmmm.
In any case, some of us actually know how to program, and know how to monitor resource usage. It is absolutely ridiculous that you chose to limit everybody because you were getting complaints from a few people. I happen to have had problems with performance myself, but I worked around them with a few hacks to still be able to get very fast updates on the charts that were important to me. When people complain about performance, that doesn't mean that you just set everyone to .5 seconds refresh and be done with it, as that doesn't solve the problem. Your job is to provide a flexible piece of software, not to make a political decision to limit everybody to the same refresh rate.
- The majority of these cases are directly due to users setting UI refresh rates to extreme levels
Again, PERSONAL CHOICE. Some of us know how to use our computers. And I might add that computers are pretty powerful today at the top end, getting more powerful all the time. Some people don't run with a lot of charts. It's ridiculous to limit everyone to 500 ms refresh, and ridiculous that you locked it globally for every chart. Has it not occurred to you that a user might want to give higher priority to the shorter-term charts and make the longer term charts update less frequently than 500 ms? I would think that after programming trading software for years on end, you would understand this very simple concept.
- At these extreme levels --> You can get lag of your data by seconds since during high volume times --> There is just a lot of UI processing to do
Yes, if you run lots of charts with indicators on a slower machine, with multiple days of look-back. What else is new. You were supposed to improve the performance while still leaving us with all of our options, not artificially limit us by restricting the software to a half second refresh. Your users are trying to tell you something here... look up at the poll.
- So in fact, having high refresh rates at certain times has the potential of giving you a false sense of security since you might update the chart every tick but its delayed
I don't need or want your help to prevent me from setting up my system the way I need to have it to trade, especially when it makes your software unusable for my trading purposes. As I mentioned earlier, you could have chosen to make the refresh settable as low as 100 ms and you probably wouldn't have had these complaints, especially if you made it configurable for each chart as it was in 6.5. Nobody said you had to display updates on every tick, just something more frequent than twice a second.
- Having a lowered refresh rate will actually be more efficient for the application and ensure that you get the data updates as timely as possible
If your application can't handle proper data updates with less than a .5 second refresh, then you have very serious problems. On a fast machine with only a few charts open and a short lookback, even NT 6.5 can easily handle a 0 ms refresh with a few indicators, and can handle a refresh rate of 100-200 ms even better. It is not your job to decide what my chart refresh rate is going to be. I highly doubt that you did any testing at all to come to the conclusion that 500 ms was an acceptable minimum limit with respect to CPU performance, and that this was the lowest you should go. On 6.5 we can run with multiple charts at a faster refresh than that, and you are supposed to have made version 7 even better according to your notes.
There is a world of difference between 500 ms and 100 ms for a short-term trader. This is so basic and simple, I can't believe that we are even talking about this.
That being said...I am not saying yay or nay, I am saying that I will let the community speak up which is what is happening. If you feel this is wrong then do what you must in looking at other software.
I don't feel it's wrong, I feel you must be losing your eyesight. The community HAS spoken - look up top. What more do you want? One guy in this thread is a NinjaScript consultant who told you that all of his clients need a faster refresh rate than what you provided.
Let me give you some advice on customer service: When 60-70% of your clients tell you that an issue is critical and you vacillate on it for a few days, you are not exactly providing a picture of a very responsive company. You know that you have already had problems with this in the past. Take another day or two to get some more poll results if you want, but enough people have already responded to this to tell you that this is a very serious issue that you need to change. Even if only 25% of your clients were saying that it was critical you would still need to change it, and the numbers are a lot higher than that.
JS999
10-20-2009, 07:43 AM
I can also understand that since alot of users would be like Baruch and have no use for this refresh rate that it creates alot of problems support wise with people complaining the charts are slow. A good solution could be simply burying the defaults to turn the refresh rate up so that people who this would cause problems for don't accidentally turn the refresh rate up, but people who need it can at least get to it.
I fully agree. That is the proper way to handle this.... just make the setting buried somewhere so that regular users won't mess with it, but let the users who know what they are doing still have access to it. Either that, or ATTACH A WARNING IN BIG BLOCK LETTERS LIKE THIS to the setting to warn people about it. Heck, have it pop up a warning message if you want... all of that will rid you of most people complaining while still allowing those of us who know what we are doing to make the software work properly.
Larry22
10-20-2009, 08:04 AM
I must say that this is very important for me as I have more then 23 charts on 5 monitors plus about 15 more that are minimized and only a few are set at 0.5 all the others are set at way higher time frame I have some that are set at 360 sec as they are bigger time frame like weekly monthly, so no need to have them refreshed every half second I must say that I use 6.5 and that my PC rarely freezes with these settings, so I would be afraid of having issues if I have not the possibility to put bigger refresh settings on all my charts.
P.S I know this is weird but I want the refresh not for same reasons as others. :)
Thanks
JS999
10-20-2009, 08:09 AM
I must say that this is very important for me as I have more then 23 charts on 5 monitors plus about 15 more that are minimized and only a few are set at 0.5 all the others are set at way higher time frame I have some that are set at 360 sec as they are bigger time frame like weekly monthly, so no need to have them refreshed every half second I must say that I use 6.5 and that my PC rarely freezes with these settings, so I would be afraid of having issues if I have not the possibility to put bigger refresh settings on all my charts.
P.S I know this is weird but I want the refresh not for same reasons as others. :)
Thanks
Larry, your post illustrates exactly why their refresh rate change is such a bad idea, and why configurable settings like 6.5 are so important. Some people like me want a 20 second chart to update at least 10 times a second, and some people like you want a monthly chart to update every 5 minutes. They really should have known about this type of problem and left things as they were, possibly eliminating the option to update the display with each incoming tick if they were really concerned about performance. I can't believe that this global .5 second refresh idea actually made it out of the first design meeting. In any case, I'm not too worried about this right now... given the way that the community is responding, I can't see how they're going to be able to leave it as is. If they want to wait a bit longer, fine... but I think that this change will end up in the software.
mjc4118
10-20-2009, 10:17 AM
Ok ... I am sticking my head in here and it will probably be chopped off ...but... Having been in software development for over 15 years and understanding the nature of the windows operating system and system development in general... give the boys at ninja a break. As users we ask for everything and expect it. As developers they simply can't provide EVERYTHING. Developing systems as complex as NT7 is, are a development nightmare. Additionally the platform application/implementation methodology and users expectations are all over the map.
An IP packet takes 50 or more ms (probably more like 70 to 120 ms) to reach your computer from your data provider. The data you are receiving is already out of date. It took at least 60 ~ 120 ms to make it into your data providers systems and be relayed to you. So no matter how fast your charts refresh your problem of having your data delayed will never be solved by Ninja alone.
Just like there is a solid right edge to your charts there is a solid right edge to the ability to create the magic called software. If they do not take into consideration the hardware and software limitations of users machine (the average user... not EVERY user) The user limitations and ignorance level that will more often than not cause perfectly good software systems to implode then they would be engineering for disaster not a successful application. There is no "USER" UPGRADE!
That being said ...Personally, I believe that "candle close" should be the predomanant factor in determining when a paint instruction is given... Any updates that occur to the canvas before then can be updated every 500 ms or whenever the application so desires...As long as when my candle closes I get fast paint and results on my screen. I work on 89 and 144 tick charts ...so I use fast charts. If you are scalping for 1 tick and cannot seem to get data fast enough you can pony up 2 or 3 million to write your own application. Just simply beating the heck out of the developers for the sake of beating the hell out of them seems redundant. There are features I want that I KNOW they will not provide. I also paid for a full license. Such is life.
eDanny
10-20-2009, 10:27 AM
... Having been in software development for over 15 years and understanding the nature of the windows operating system and system development in general... give the boys at ninja a break. As users we ask for everything and expect it. As developers they simply can't provide EVERYTHING.
This does not even make sense since the setting was available in 6.5
An IP packet takes 50 or more ms (probably more like 70 to 120 ms) to reach your computer from your data provider. The data you are receiving is already out of date. It took at least 60 ~ 120 ms to make it into your data providers systems and be relayed to you.
All the more reason to update charts quickly if the user wants. Lag + lag + lag = bad, lag + lag + less lag = slightly better.
That being said ...Personally, I believe that "candle close" should be the predomanant factor in determining when a paint instruction is given...
Not everyone wants chart updates on candle close, in fact I know of no one.
cls71
10-20-2009, 10:35 AM
cls71, it's good to realize that we can actually manually change the refresh rate ourselves through code. I'm assuming that if I just check the current time inside the OnMarketData() event handler and choose to call Refresh() or Invalidate() every 100 ms, that this will work? If I made an indicator that did that, would it automatically refresh the entire chart and all indicators on it at that interval? I also can't find any documentation on Refresh() or Invalidate()... maybe I missed it. Is there a difference between the two?
I hope explain correctly. My English is not very high.
The limit of 0.5 seconds only affects the visual appearance. In particular, Plot method execution.
If you run automatic strategies will have no negative effect. None. On the contrary, could be beneficial.
Really only affect a discretionary trader able to make decisions in less than 0.5 seconds based on the reading of a chart.:cool:
Overwriting OnMarketData method can force the Plot method is executed with every incoming tick.
With efficient planning calls ChartControl.Refresh () will not adversely affect your performance.
This is a simple example where the chart is refreshed with each incoming tick. If you run this code, the entire chart will redraw with each incoming tick including all indicators that have loaded.
Refresh and Invalidate are members of the Control class. You can find lots and better documentation on MSDN and google.
Refresh() redraws the entire client area (the entire chart) while with Invalidate() can specify the region to be redrawn.
Best Regards
PD:
you can also set a Timer object to redraw a time interval, instead to redraw in each incoming tick.
mjc4118
10-20-2009, 10:35 AM
Not everyone wants chart updates on candle close, in fact I know of no one.
See Danny... you have proved the point that everyone wants something different and no one can imagine every different persons requirements. They cannot develop for all possible scenarios. But, I would be curious what eSignal and other charting application providers offer as their solution to this problem.
NinjaTrader_Ray
10-20-2009, 10:37 AM
See Danny... you have proved the point that everyone wants something different and no one can imagine every different persons requirements. They cannot develop for all possible scenarios. But, I would be curious what eSignal and other charting application providers offer as their solution to this problem.
TradeStation and eSignal don't provide any option as far as I know and is the case (I could stand corrected) for most other platforms also. You just don't know if they update once per second, 10 x per second etc and my guess is that they will not tell you.
darthtrader
10-20-2009, 11:04 AM
Really only affect a discretionary trader able to make decisions in less than 0.5 seconds based on the reading of a chart.:cool:
cls71, thanks for that code but there is no reason for snide comments as this is a big deal to some people.
The problem with the code though is this puts anyone interested in using this into unsupported territory. I'm sure everyone interested in this understands lag, its besides the point. The point is this was in 6.5 and now its gone without a hack. There is a large difference between putting everything in anyone can possible want and having the choice of when the chart refreshes.
While JS999 has been quite over the top in this and probly a bit counter productive, he does have a point.
Personally, I could care less if candle sticks were even included in the package for my own trading but I would find it odd if candle sticks were removed just because it creates support issues because some customers are to stupid to figure out how to use the software for their own needs optimally.
Which I assume was the main reason this decision was made in harsher language.
I don't know what else there is to discuss other than the promise of a future update to fix this issue. With the beta rolling out there is obviously more pressing issues with bug fixes.
JS999
10-20-2009, 11:04 AM
Ok ... I am sticking my head in here and it will probably be chopped off ...but... Having been in software development for over 15 years and understanding the nature of the windows operating system and system development in general... give the boys at ninja a break. As users we ask for everything and expect it. As developers they simply can't provide EVERYTHING. Developing systems as complex as NT7 is, are a development nightmare. Additionally the platform application/implementation methodology and users expectations are all over the map.
You're right, you are going to get your head chopped off. What the hell are you talking about? Everything you said is complete nonsense, given that they already had this feature in 6.5 and took it out. We aren't talking about some magical special feature that they decided they couldn't implement, we are talking about a basic part of the software that already existed and worked just fine in the previous version of the code.
An IP packet takes 50 or more ms (probably more like 70 to 120 ms) to reach your computer from your data provider. The data you are receiving is already out of date. It took at least 60 ~ 120 ms to make it into your data providers systems and be relayed to you. So no matter how fast your charts refresh your problem of having your data delayed will never be solved by Ninja alone.
So by this logic, why not just add in an extra 2 seconds of delay then? I am not asking Ninja to solve the problem of internet lag, I am asking them to grow a brain and not ADD to it for no reason at all. If I get a tick that comes in at the 100 ms mark, I want it displayed as soon as possible on some of the shorter term charts. I don't want "Big Daddy NinjaTrader" to decide what is good for me and artificially delay me seeing this tick for up to 500 milliseconds. Get it? This is the type of thing that is going to COST ME MONEY on some trades eventually. There are certain features that are optional and "nice to have" on a piece of trading software, but this isn't one of them. This is a critical feature that they absolutely must put back in, or it's sayonara to NinjaTrader not only for me, but for most of the rest of the scalpers out there in the world that trade fast-moving instruments. I can't believe that this is even a discussion... what a friggin' waste of my time. It's like I'm trying to convince an auto manufacturer to make sure that they include a steering wheel in the car they sold me.... and now Ray is taking his sweet time asking for opinions from other traders as to whether they would like a steering wheel or not before deciding what to do. I have no words for how friggin' ridiculous this entire conversation is.
Just like there is a solid right edge to your charts there is a solid right edge to the ability to create the magic called software. If they do not take into consideration the hardware and software limitations of users machine (the average user... not EVERY user) The user limitations and ignorance level that will more often than not cause perfectly good software systems to implode then they would be engineering for disaster not a successful application. There is no "USER" UPGRADE!
AGAIN, this already existed and worked just fine in 6.5. They arbitrarily removed it and crippled our ability to change the refresh rate for no reason at all, other than they felt that they didn't want some stupid people accidentally making the settings too aggressive and causing them PR and customer service headaches. It was a purely 100% selfish move that benefits nobody but them, and doesn't even benefit them that much considering how much some people (like me) are giving them flak about it. If you think what I am saying now is bad, just wait until I get on all the other more public message boards and start telling every scalper in the world to avoid NT 7 because of this issue... that is, if they are stubborn and don't change it.
That being said ...Personally, I believe that "candle close" should be the predomanant factor in determining when a paint instruction is given... Any updates that occur to the canvas before then can be updated every 500 ms or whenever the application so desires...As long as when my candle closes I get fast paint and results on my screen. I work on 89 and 144 tick charts ...so I use fast charts. If you are scalping for 1 tick and cannot seem to get data fast enough you can pony up 2 or 3 million to write your own application. Just simply beating the heck out of the developers for the sake of beating the hell out of them seems redundant. There are features I want that I KNOW they will not provide. I also paid for a full license. Such is life.
So .5 second refresh is fine for you... good for you. That doesn't mean it's fine for everyone. Do you trade crude oil? Because if you are trading something slow moving like bonds or the ES, who cares how fast the chart updates, that stuff hardly moves more than 1 tick at at time. The point is that the software is supposed to be usable for all instruments, and with this setting it's not. Not to mention the other problems mentioned about not being able to set the refresh to a longer time period than .5 seconds, which is necessary for some very long-term charts to make sure that they don't eat up the CPU unnecessarily.
The only reason that Ninja made this change is that they didn't want to deal with people accidentally setting the charts to too short of a refresh period, and complaining about it later... and that is definitely not a valid reason to limit the software for everyone else.
JS999
10-20-2009, 11:22 AM
While JS999 has been quite over the top in this and probly a bit counter productive, he does have a point.
I agree that I have been somewhat over the top about this, and that it is probably counter-productive - sorry about that. :)
But this is not a trivial issue, and I am extremely pissed off right now that they felt that they had the right to arbitrarily change this, and that I had to start a poll and raise a stink to attempt to get it back in. One of the reasons I picked NT in the first place was specifically because it was touted as being able to process and display information as soon as it came in, particularly with Zen-Fire.
The fact that they feel that they can just remove this type of major feature without our consent REALLY, REALLY pisses me off. This is not about some minor chart study that they removed from their list... this is them screwing around with my data and affecting when I see something that has already happened. I never would have picked NT if they had had a .5 second refresh in 6.5, and this feels a heck of a lot like a nasty bait-and-switch.
If there is a hack that I can use with that OnMarketData() function to update my display every 100 ms or so, then I can live with this. Not ideal by any means, but I'm used to hacking things to get around NT's limitations. It won't solve the problem with longer term charts not being able to refresh at periods longer than .5 seconds, though.
I don't know what else there is to discuss other than the promise of a future update to fix this issue. With the beta rolling out there is obviously more pressing issues with bug fixes.
All I want is a guarantee that they are going to fix it. I can live with the delay for a little while, but they should fix this before it goes out on public beta.
VTtrader
10-20-2009, 11:48 AM
I posted this over on the Zen-Fire Lag thread but felt it would be fitting here as well since it is about NT7 http://www.ninjatrader-support2.com/vb/showthread.php?t=20238&page=6
I've added some additional comments at the end.
Great Job on NT7 performance enhancements Ray and all!
Just had my first ES open with NT7 using the TickTimePlot indicator and the improvement is remarkable. In the past it was showing lags up to 16 seconds on the open, see the attached picture for the results with NT7.
Pre-open there is one spike (about 2.5 senonds) when I loaded an indicator in another chart prior to the open. The generally higher values prior to the open are due to the fact that with slower price action, there is no way to tell if the first tick of the second was at +0 ms or +999 ms. Once the market is open and the ticks are coming faster, you're more likely to have the first tick of the second being closer to +0 ms.
Average lag using NT7 when the market is open is averaging around .2 seconds. A major improvement!
Glad to report such good news.
VT
The performance enhancements have been truley amazing in NT7. As you can see in the picture NT7 stayed rock solid during the ES open when multi-second lags (sometimes as long as 16 seconds) have been the norm even with the default .5 second refresh rate in NT6.5.
I scalp most of the time also, and have had my stop/target hit when I didn't even see the price near that level. I used to think that it was the chart refresh frequency, but cutting that down didn't help much if at all. What the problem was, was that the lag that was experienced when a flurry of trading activity came from the exchange. and that activity takes time and CPU cycles to be processed. It didn't matter what the refresh rate as set at, it wouldn't have changed the outcome of the trade. So it comes down to a trade off, do you want that time/CPU cycles to be processing the surge in data or redrawing the chart. IMO it is much better to see current data redrawn every .5 seconds then several second old data redrawn every .1 seconds.
That said, if putting the "option" in for people to decide for themselves, that IN NO WAY would effect the performance gains unless you chose to change it, then why not include it.
As a side note, the DOM might be a better way to go if .5 seconds is to lagged, since the DOM will process it faster than the chart ever will.
Just my opinion.
VT
JS999
10-20-2009, 11:57 AM
The performance enhancements have been truley amazing in NT7. As you can see in the picture NT7 stayed rock solid during the ES open when multi-second lags (sometimes as long as 16 seconds) have been the norm even with the default .5 second refresh rate in NT6.5.
I am glad to see that they have made improvements on this front... it makes the .5 second refresh issue even more maddening.
So it comes down to a trade off, do you want that time/CPU cycles to be processing the surge in data or redrawing the chart. IMO it is much better to see current data redrawn every .5 seconds then several second old data redrawn every .1 seconds.
On your PC, on your chart setup, on your trading system, this was the case. I can tell you for a fact that on my super-fast and optimized trading setup, even on NT 6.5, I was not seeing significant lag because I had only a very few short-term charts open without a lot of lookback period. So in my case, having an artificial .5 second delay is ridiculous, because my system can easily handle the data refreshing at 100 ms. The fact that yours can't doesn't mean that other people like me should be limited.
That said, if putting the "option" in for people to decide for themselves, that IN NO WAY would effect the performance gains unless you chose to change it, then why not include it.
Good idea. Hopefully they will listen.
As a side note, the DOM might be a better way to go if .5 seconds is to lagged, since the DOM will process it faster than the chart ever will.
Just my opinion.
VT
You can't scalp something like crude oil off of the DOM. You need a short-term chart to do that, and you need it to be as responsive as possible. (Incidentally, the DOM is not refreshed the same way as far as I understand, but I could be wrong.) By removing this feature they are crippling a very important tool for some people like me.
eDanny
10-20-2009, 12:17 PM
Slightly off topic but referring to a couple posts back, I jus ran TickTimePlotV2 on NT7 and I get wicked bad results compared to 6.5. Any Idea why?
JS999
10-20-2009, 12:18 PM
I never really got an answer to my question regarding the ChartControl.Refresh() function. If I put a line like this into OnMarketDepth:
if (DateTime.Now > lastRefresh.AddMilliseconds(refreshDelay))
{
ChartControl.Refresh();
lastRefresh = DateTime.Now;
}
Is that going to automatically refresh the entire chart and re-calculate all the indicators every refreshDelay milliseconds? The idea would be to create a "blank" indicator that did nothing but this, and add it to whatever chart I wanted refreshed at a faster rate.
I am thinking of adding it into OnMarketDepth() since that changes very frequently. On the other hand, if I put it into OnMarketData(), and if there is no trade data or Level 1 data change coming in, then it will just refresh at the .5 second mark, correct? I want to make sure that this will work as I think it will, and that there won't be any unexpected consequences or side effects other than just seeing the chart refreshing more rapidly. I'm also assuming that if I just call ChartControl.Refresh() in OnMarketData() with the following check:
if (e.MarketDataType == MarketDataType.Last)
and without any checking for a time delay, then it will just update on every tick, equivalent to setting the DisplayUpdateInterval value to 0 in NT 6.5.... right?
(If this works as I think it would, then I would be pretty happy, because I could make NT function properly for me.)
EDIT: Never mind on some of this stuff, I just noticed a post below that answered some of these questions. If I have made any errors in what I said above, however, please correct me.
bobbethgoo
10-20-2009, 12:58 PM
So in my case, having an artificial .5 second delay is ridiculous, because my system can easily handle the data refreshing at 100 ms. The fact that yours can't doesn't mean that other people like me should be limited.
Well said, strongly agree.
mmtrader
10-20-2009, 07:34 PM
Support,
I suggest the following way to implement this feature,so that it is configurable by users
* Use a chart update policy and let users define multiple policies.
* On daily charts, for example if one has 30 charts open and 10 of them are daily charts, one can use the policy to update the daily chart once every 5 minutes.
* When a workspace is opened but not active, have a user configurable override option for non active workspace. So, that if there are like 5 workspaces(each with like 10 charts or so) , when the corresponding "workspace override update variable" is not enabled and set to 5 mins, the non active workspace only gets updated every 5 mins instead of very 0.5 seconds. This saves cpu/ram resources for non active workspaces.
So, I suggest there be three levels of system variables. one as global policy, one for "non active workspace" override,..so that every workspace has such a variable, and one for every chart. Also,if there is a way to define the same set of variables for processing every tick or not for global-policy/workspace/chart,it would be great. So, basically two sets of configurable variables,one for chart UI updating and another for chart processing every tick or not.
The idea is to save system resources and provide user configurable options. So, that experienced users who need several workspaces/charts trading multiple instruments can configure them appropriately. This would also solve the multiple workspaces problem. In nt 6.5, ninja would crash if one opens 5 workspaces each with 10 charts.
--
mmtrader
mwave
10-20-2009, 07:50 PM
I think option would be good idea.
For true reslult of poll, you should ask this question to only Day trader not everybody. LongTerm trader does not care about seconds.
mwave
JS999
10-20-2009, 07:56 PM
I think option would be good idea.
For true reslult of poll, you should ask this question to only Day trader not everybody. LongTerm trader does not care about seconds.
mwave
Yes, that was a mistake in the way I did the poll... that's why I think we have so many responses that say they don't care. If you assume that at least 70-80% of those "don't care" people are longer-term traders, that essentially means that all the rest of the people are day traders who want the ability to set this refresh rate individually per chart. If I had limited the poll to only daytraders, I suspect we would have gotten a percentage that was at least 80-90% in favor of changing this.
NinjaTrader_Dierk
10-20-2009, 09:54 PM
if (DateTime.Now > lastRefresh.AddMilliseconds(refreshDelay))
{
ChartControl.Refresh();
lastRefresh = DateTime.Now;
}
Obviously this is beyond what we provide support, but just a word of warning (again):
- .Refresh() is a forced repaint and easily could lock up your NT in no time
- .Invalidate() is like "repaint next time as you have time to process events" and the recommended way
JS999
10-20-2009, 10:49 PM
Obviously this is beyond what we provide support, but just a word of warning (again):
- .Refresh() is a forced repaint and easily could lock up your NT in no time
- .Invalidate() is like "repaint next time as you have time to process events" and the recommended way
I did some searching for ChartControl on the net to get more info, but I couldn't find much on it... I'm assuming that this is a .NET component, correct?
Anyways, I'm still a little unclear on what you mean by a "forced repaint" locking up NT. If I space it out so that it occurs only once every 100 ms, would that still lock up the program (and if so, why?). Or are you saying that it might only lock up if I call it on every tick inside OnMarketData()?
As for Invalidate(), what exactly does "next time as you have time to process events" translate to in the context of your code? That could mean a lot of things. If I ask it to Invalidate() and it comes back 20 ms later, that's fine. If it comes back 300 ms later, that's not fine. What else is going on in your code that would take higher priority, and in your opinion, what might the typical delay be (if you know)?
(It sounds like this might not be the easy solution that I thought, which makes it even more critical that you put the functionality back in for us to modify the refresh on our charts.)
NinjaTrader_Dierk
10-20-2009, 10:53 PM
Please see below: we don't provide support for that. This was just some hints in case you consider going down this avenue. MS should have loads of online documentation regarding .Refresh() and .Invalidate().
JS999
10-20-2009, 10:55 PM
Please see below: we don't provide support for that. This was just some hints in case you consider going down this avenue. MS should have loads of online documentation regarding .Refresh() and .Invalidate().
Great, I will check that out. In the meantime, why don't you get your boss to look up about 2 inches on this page and see that pretty much most of the daytraders on this site are asking him to put that refresh functionality back into the code? I suspect that the only people who don't care are the ones holding trades for hours on end. Don't make me start another poll just to prove to you that 80-90% of daytraders hate this decision that you guys made. Thanks.
Tremblinghandtrader
10-20-2009, 11:59 PM
Oh dear!! You already cannot use the NT DOM for fast instruments like HSI & CL because of the 5 price level restriction. Now this to the charts.
How is this for a well thought out improvement. I have 23 charts open.
2 charts set @ .1 sec update = 20 per sec
10 charts set @ .5 sec update = 20 per sec
11 charts set @ 1 sec update = 11 per sec
Total 51 updates per sec
With this “update” my CPU is saved a grand total of 5 refreshes per sec (23*2 per sec = 46) but I lose my fast charts!! Some great thought gone into this one. To be honest if I had problems with the CPU not handling it the first thing I would choose would be to increase the slower charts update rate, which I would now not be able to do with this change or reduce the amount of charts. Not slow down the two fast charts I need.
Seems like the solution of customizing the update rate is the better one for everyone. Those that have performance issues and those that spend a few measly dollars on real equipment (i.e. traders)
mjc4118
10-21-2009, 08:28 AM
You're right, you are going to get your head chopped off. What the hell are you talking about? Everything you said is complete nonsense, given that they already had this feature in 6.5 and took it out.
JS. On a personal level, I suggest that plain common decency towards others would go a lot further towards rallying people in support of your opinion/cause. Simply blasting and attacking others because you are irritated and believe yourself to be right does very little for your cause. It does however detract from your effort to persuade others to your point of view and just generally make us all thankful that we are not married to you.
Ray... Let me understand this correctly. We are really talking about THREE seperate issues here. 1) How fast is Plot data/Indicator historical bars/candles recalculated and redrawn on Charts and 2) how fast is Updated price data displayed on the chart. 3) How fast is Time and Sales data displayed and should I be able to have this set to "tick" or hard coded based on time.
If the refresh/redraw only affects the historical data and indicator calculations and historical candles then I believe it does not make any difference if it is 250 ms 500 ms or user adjustable. It becomes a mute point as long as it occurs relatively frequently. The brain can only process so fast anyway. Watching the current charts in multiple fast markets on 89 tick charts today the charts themselves seemed pretty fine.
However. Price data. Current price data does/can change on every tick and I can see where users should be able to see that data as it becomes available and even update the last candle being drawn and the price information on the chart without triggering a redraw/refresh of the entire chart. The price values on the chart should reflect as close to price as physical possible at all times if the user requires it. This includes the last candle / bar close and price pointers, bid and ask. I have not looked under the hood of NT7 but I would seem to me that this would be more than reasonable.
In Time and Sales window ... the "tape" as they call it. You should be able to display this on every tick. This is streaming data. Let it stream. To limit this is truly beleive is wrong. On the charts you can argue it either way for either of the 2 points concerning them...but I think in time and sales you really need to let the option of "by tick" as you had in 6.5"
NinjaTrader_Ray
10-21-2009, 08:47 AM
- All ticks are processed and distributed to all subscribing objects immediately and no ticks are dropped (thus calculations are done per tick where needed with the exception that OnBarUpdate() may only be called once per bar should a user define this setting)
- The UI (Plot) routine of the chart is now fixed to timer driven twice per second thus its a display issue
- You may argue that having a visual update every tick is better than having it twice per second however, what you have to realize is that by doing so, you make the application work expontentially harder and can self impose some delay on your visual update and thus you actually have self imposed lag (speaking during high volatile times) where updating twice per second is just exponentially more efficient and gets you the visual updates faster (this is purely mathematical reality)
- This high level explanation is just a generic point, there are many factors that influence this also such as hardware, what objects you are running in your workspace
- I am not opposed to provding some flexibility for everyone however and I am paying close attention to everyones comments.
r2kTrader
10-21-2009, 08:57 AM
Lonely,
Do you hear yourself? THEY ARE PUTTING UP A POLL TO GIVE US THE OPTION TO HAVE A SAY!
Calm down. I can get as frustrated as the next person, but the whole purpose of this thread was to give us a say. And 1500.00 is nothing for a package like this. You act like you did them a favor. You will drop 1500.00 in less than a year with TradeStation (not even on the same level at NT). Go get a TradeStation Lifetime license. Oh, and don't forget that you can only use it with TradeStation and not multiple brokers.
Cast your vote and let your voice be heard.
Thanks for hearing me out,
Haven't read through this whole thread, but let me chime in. I paid about FIFTEEN HUNDRED DOLLARS for a multibroker license, and NinjaTrader wants to limit my chart refresh capabilities?!
It sounds to me like the software engineers are driving the process. In fact, it should be traders driving the process.
Whether anyone here cares about the refresh rate or not, that isn't the issue. The capability should be flexible -- like any charting platform that advertises itself to be a professional grade platform. 500ms is waaaay too long for some traders. In fact, why even use a DOM if your refresh is 500ms? WHY? It doesn't make any sense.
So go tell the software engineers to get back to work and do it right. Don't let them drive the process. NinjaTrader does not exist as a playground for a bunch of code-geeks. It is for traders. Code geeks are paid by traders to find solutions so that TRADERS can make money, not limit trading functionality.
This is a design FAIL.
NinjaTrader is skating on thin ice with me. V6.5 is buggy, takes way to long to load, and as of now I can't even get an accurate PnL on both of my trading accounts. Ninja tech support says: "Get flat, then repair your database." Well, I have some long term positions. Do I just "get flat" so that I can get NT to work properly? (Tells me a code geek, again, is driving the process, instead of a trader.) And part of the reason I wanted Ninja was for the PnL metrics. Repairing the DB would erase my entire trade history. So what the hell am I using this software for?
Good question. And now I'm hearing that NT7 may only allow my charts to refresh every 500ms.
Good one, guys. Really.
JS999
10-21-2009, 09:05 AM
JS. On a personal level, I suggest that plain common decency towards others would go a lot further towards rallying people in support of your opinion/cause. Simply blasting and attacking others because you are irritated and believe yourself to be right does very little for your cause. It does however detract from your effort to persuade others to your point of view and just generally make us all thankful that we are not married to you.
You are right, I should not have taken out my frustration yesterday at the other member, and for that I apologize. My irritation stems from the fact that NinjaTrader felt that they had the right to make this very serious and game-altering change without ever consulting us, and in fact are still giving us the "we'll think about it" routine even now. I should never have had to waste my time and start a poll about this in the first place, because this should have never been taken out of the software. There is nothing for them to think about any more... enough people have voted in this poll already, and the results are exceedingly clear at the top of this page.
darthtrader
10-21-2009, 09:28 AM
The brain can only process so fast anyway.
I think this is really getting to the heart of the issue...Its less an issue of having every tick print at the exact time as it is that the brain can process 500 milliseconds without a problem. While this might sound absurd since we are not use to dealing with milliseconds in everyday life, a simple example is to look at the seconds display on a digital clock. As the second hand ticks its easy to say outloud ".5 .5"..Not only is it trivial to process 500 ms, you can actually vocalize it. Its hardly a long time for the brain, its quite slow actually.
As far as time and sales I would always turn the option off in 6.5 and want to see as much as possible. What you lose with having things display at 500 milliseconds is the blasts on the tape. The fact that sometimes prints will blast on the tape faster than you can comprehend them flying by is itself very valueable information. If you have no need for this then great, its just hard to understand what the point of losing functionality in an upgrade is for those that do.
I guess I've come around to some degree also as far as the charts go since there will be work arounds as already shown here even if not supported. Time and sales though I would really like to see the old option brought back as I imagine most customers never even bothered to mess with the default but there is no work around for that as far as I know in 7.
Also, instead of people losing their mind over this, do remember this is a beta release..This kind of thing is exactly what a beta release is for.
aslane
10-21-2009, 09:32 AM
I think the important point here, is there are multiple classes of traders using NT. Many just use the tool and canned indicators and will like the new faster performance. Then there are those of us that tune their indicators to optimize them for updates etc to get the most out of their computer. Some are trading longer term and dont need the updates, while others are trading short term and need to see a tick come in.
At the end of the day, the new default is fine, but the option has to be there to allow per tick updates.
JS999
10-21-2009, 09:44 AM
I think the important point here, is there are multiple classes of traders using NT. Many just use the tool and canned indicators and will like the new faster performance. Then there are those of us that tune their indicators to optimize them for updates etc to get the most out of their computer. Some are trading longer term and dont need the updates, while others are trading short term and need to see a tick come in.
At the end of the day, the new default is fine, but the option has to be there to allow per tick updates.
Not only that, but we also need to be able to adjust longer term charts to a slower update if we want to. Updating daily charts at 0.5 seconds is a pointless waste of precious CPU resources in many cases.
aslane
10-21-2009, 09:49 AM
Not only that, but we also need to be able to adjust longer term charts to a slower update if we want to. Updating daily charts at 0.5 seconds is a pointless waste of precious CPU resources in many cases.
True, but many of those types of charts should really be set to update on bar close.
JS999
10-21-2009, 09:52 AM
True, but many of those types of charts should really be set to update on bar close.
That setting is just for indicators, isn't it? We're talking about how often the actual bars themselves are refreshed.
aslane
10-21-2009, 09:57 AM
That setting is just for indicators, isn't it? We're talking about how often the actual bars themselves are refreshed.
Yes, I understand your point.
NinjaTrader_Josh
10-21-2009, 10:11 AM
aslane,
To clarify, it is not that the bars do not "refresh". It is simply the visualization of the bars. No data events are "lost" for your NinjaScripts.
mjc4118
10-21-2009, 11:21 AM
Question Josh.
Is the "CurrentBar" being updated tick by tick or on change of price or on the timer?
A clear answer to this may help clarify the whole discussion.
NinjaTrader_Josh
10-21-2009, 11:53 AM
To clarify, ALL NinjaScripts are not influenced by anything being discussed in this thread. NinjaScripts will process tick by tick or at the end of each bar. There is no "refresh" setting limiting the processing of NinjaScripts.
This thread is relative to ONLY the refreshing of the display on the chart and NOT the underlying processing of indicators or strategies.
CurrentBar updates based on the scripts CalculateOnBarClose. Hope that helps.
VTtrader
10-21-2009, 12:26 PM
To make the assumption that anyone who doesn't find this "extremely important" is not a "trader" or "daytrader", is simply false. I've been trading for 14 years and if I'm in a position for 60 seconds it starts feeling like a long-term investment. To you and someone who chooses to trade like you it may be extremely important, but that's as far as it goes.
Regardless of how fast your computer is or what the refresh rate of the chart is, it is still history. Having it redraw the chart at a faster rate doesn't change that fact, it just makes it slightly more recent history.
I prefer to have my orders in the marketplace so they can be executed before they become history. If my stop and target were delayed being submitted 1 clock cycle because the chart is busy redrawing history, it could have an adverse effect. Different strokes for different folks. You have your methodology, I have mine, but lets not make false assumptions.
As I said in my previous post, if the option can be added without affecting overall stability for those who choose not to use it, I have no problem with it.
VT
JS999
10-21-2009, 12:39 PM
To make the assumption that anyone who doesn't find this "extremely important" is not a "trader" or "daytrader", is simply false. I've been trading for 14 years and if I'm in a position for 60 seconds it starts feeling like a long-term investment. To you and someone who chooses to trade like you it may be extremely important, but that's as far as it goes.
It was never stated that everyone who didn't have a problem with this wasn't a short-term trader... it's just likely that most of them are not. You may be one of the exceptions. Obviously there are some people who trade short term that don't mind this, but that's probably because they don't trade instruments that move all that fast. I would bet that you probably trade the e-mini, and not crude oil. For ES, .5 seconds refresh is probably fine. Especially since you have to get in and out with limit orders. There is a completely different trading style for different instruments, and in the fastest ones this refresh issue is a problem.
Different strokes for different folks.
You have summed it up neatly with this statement. This is precisely why the option to change the refresh rate needs to be in there.
As I said in my previous post, if the option can be added without affecting overall stability for those who choose not to use it, I have no problem with it.
VT
I can guarantee you that it will not affect stability. It is not a really massive change to do this type of thing, and they already had this working just fine in version 6.5 for years with no problems. If they want to do it, they can easily do it and not adversely affect anything in the code for those that don't want to set their charts to a higher rate.
Breakeven
10-21-2009, 04:47 PM
More choice is always better than less choice.
I would like the option to set my chart refresh to whatever suits MY trading needs and MY processing power.
Regardless if those needs are 0 or 5 seconds between redraws, it should be my choice to tweak the charts or not.
There is a warning in 6.5 regarding setting the chart update interval to a low setting. Keep the warning but please also keep the option to change the setting.
VTtrader
10-21-2009, 07:04 PM
I agree, more options are better than fewer options. I also think that once someone is given an option it is harder to take it away.
I would bet Ray has had many times he has cursed the decision he made to make the chart refresh rate an "option" in the first place. I have used many different programs over the years, and never has this been an "option". It was simply set by the developers and that was that, it just occurred in the background without notice.
As a result, NT gets put in a no win position. They get publicly flamed on the forum for performance issues when they offer people customizable settings that people choose that cripple their machines, and they get publicly flamed from others if they take those choices away.
As Ray has said, and everyone should realize, this is a BETA version with a limited release. The key is to determine performance and stability under a wider distribution base than what it was previously tested under. It is not in it's final form. Removing the "customer choice" variables, allows the performance testing to be done under more controlled circumstances.
Ray mentioned he wasn't opposed to making the choice available, let's take him at his word, and let the beta test process unfold in a productive fashion.
VT
Tremblinghandtrader
10-21-2009, 07:39 PM
- All ticks are processed and distributed to all subscribing objects immediately and no ticks are dropped (thus calculations are done per tick where needed with the exception that OnBarUpdate() may only be called once per bar should a user define this setting)
- The UI (Plot) routine of the chart is now fixed to timer driven twice per second thus its a display issue
- You may argue that having a visual update every tick is better than having it twice per second however, what you have to realize is that by doing so, you make the application work exponentially harder and can self impose some delay on your visual update and thus you actually have self imposed lag (speaking during high volatile times) where updating twice per second is just exponentially more efficient and gets you the visual updates faster (this is purely mathematical reality)
To clarify, ALL NinjaScripts are not influenced by anything being discussed in this thread. NinjaScripts will process tick by tick or at the end of each bar. There is no "refresh" setting limiting the processing of NinjaScripts.
Funny how NT sees the importance to have "NinjaScripts process tick by tick".
VTtrader
10-21-2009, 08:13 PM
Why is that "funny"?
Tremblinghandtrader
10-21-2009, 08:28 PM
Why is that "funny"?
I have always thought NT was built for systems traders not discretionary ones. No hot keys, DOM that's useless for anything but es. No Stock DOM, No FX DOM, Only three ATM exits etc etc.
This change adds to my view. They clearly see that setting the NinjaScripts to 0.5 sec default calculation is a disadvantage which is why they keep addressing that in this thread. Yet for some reason its not for discretionary traders??
That's funny at best!
JS999
10-22-2009, 03:37 AM
I would bet Ray has had many times he has cursed the decision he made to make the chart refresh rate an "option" in the first place. I have used many different programs over the years, and never has this been an "option". It was simply set by the developers and that was that, it just occurred in the background without notice.
Maybe so, but I suspect that it is more frequent than twice per second. If all the charts could easily keep up with the market at 10 times per second, I wouldn't care nearly as much about this issue. We also had to have the ability to modify this because NT 6.5 had such terrible performance that we needed to be able to set the longer term charts to refresh less frequently in order to preserve CPU resources.
Ray mentioned he wasn't opposed to making the choice available, let's take him at his word, and let the beta test process unfold in a productive fashion.
VT
The point is, they did offer this option in 6.5, and it was critically important to some people (like me) in terms of why I purchased NT in the first place. In fact, the only reason I bought NT was because I saw the features in 6.5 and was told that I would be able to upgrade to 7 at no charge, and one of those important features was the ability to have the charts update quickly when data came in.
I never would have bought 6.5 at all if 7 hadn't been coming out soon, because of some of its known issues. I also never would have bought it if the refresh rate was locked at .5 seconds. In short, I purchased a lifetime license for this software only because I expected to be able to have the features of 6.5 available to me with the improved performance of 7. Now they are trying to take that away, and it is a serious problem. A customer has a reasonable expectation that when they purchase a lifetime license for something, that the subsequent versions of that thing are going to contain the same major features as the original piece of software.
Some people don't care about this, but for most it is a very important issue... as you can see from the poll above. I don't know what there is to think about or debate here, fully 50% of the respondents are saying that this is a critical issue to them. The results are clear, and the poll is over. They need to fix this, and there is no need to drag out this discussion any longer.
mjc4118
10-22-2009, 06:47 AM
This thread is relative to ONLY the refreshing of the display on the chart and NOT the underlying processing of indicators or strategies.
CurrentBar updates based on the scripts CalculateOnBarClose. Hope that helps.
We understand Josh. Let me rephrase the question. The CurrentBar - or "last bar" that is displayed on the charts the bar that has not closed and is not historical...but that is being updated by current price ...That bar also only gets refreshed off the timer? or on Price Change? I would think there would/could be a difference in refreshing ALL data and refreshing the data for one candle.
Also the PRICE DATA ...Bid/Ask on the chart trader... Does that only get updated/refreshed off the timer ....or on price change / # contracts/shares change? and the Current Price Marker ..on the SCALE for the data series ...is that updated on change of Price ... or refreshed on the timer?
Or is it JUST the Indicator Plots and historical price/candle data that gets repainted/Refreshed off the timer. It makes a big difference in how people see price...if the current candle . where price is active is getting refreshed off the timer. I think part of the issue here is that people are not CLEAR exactly what VISUAL aspects of the chart are effected by this ...ALL or PART of it.
We understand about strategies not be effected. Not all people use strategies to execute trades. Many are visual traders.
I would think that you could have the LAST CANDLE/Current Candle/current price marker update on change of price regardless of time without triggering the repaint of the entire canvas or the refresh. So the question is ... Does the timed paint/repaint effect ALL data displayed in the chart window...or simply Plot/indicator data for re-calculation of indicator values etc.
Just trying to clarify...
VTtrader
10-22-2009, 06:53 AM
Perhaps you missed my point.
NT7 hasn't been released yet. You have access to it as a beta tester, but let them work out the issues and then judge it in it's final form when it is released.
VT
NinjaTrader_Ray
10-22-2009, 06:54 AM
- The painting/graphics are rendered on a timer
- The underlying data that is used for rendering updates immediately which includes the most recent bar
- The the larger % of performance issues is a result of frequent repainting
I am not sure I can make it any more clear than this.
NinjaTrader_Ray
10-22-2009, 08:49 AM
We have discussed this internally and have come to the conclusion that we will add the chart update refresh parameter back in. It will be fully configureable with a min threshold of 100 ms. We have elected to put in what we feel is a reasonable threshold to ensure that our users have top level performance.
JS999
10-22-2009, 08:51 AM
We have discussed this internally and have come to the conclusion that we will add the chart update refresh parameter back in. It will be fully configureable with a min threshold of 100 ms. We have elected to put in what we feel is a reasonable threshold to ensure that our users have top level performance.
Great, thanks - I think that this should resolve the issue, at least for me.
Breakeven
10-22-2009, 09:28 AM
Thank you :)
Eagle
10-30-2009, 09:12 AM
We have discussed this internally and have come to the conclusion that we will add the chart update refresh parameter back in. It will be fully configureable with a min threshold of 100 ms. We have elected to put in what we feel is a reasonable threshold to ensure that our users have top level performance.
Thank you Ray, I feel it makes sense for users to be in control of this setting , if performance becomes an issue they can always change it.
Taking it away totally limits the flexibility of Ninja which you are bringing in through some new features. The one hand giveth .... the other taketh away ....
Glad to see youre on our side
aslane
10-30-2009, 02:40 PM
You might consider moving this down to 30ms, allowing ~30 frames per sec.
aslane
10-30-2009, 02:43 PM
I have some indicators with custom plots, and a plot can be triggered by some event calling invalidate(). In this case, would the chart be repainted immediately or would it use the configured delay?
NinjaTrader_Ray
10-30-2009, 03:24 PM
I have some indicators with custom plots, and a plot can be triggered by some event calling invalidate(). In this case, would the chart be repainted immediately or would it use the configured delay?
Repaint immediately.
aslane
10-30-2009, 03:31 PM
Repaint immediately.
Thats perfect!
theLonelyTrader
10-30-2009, 05:11 PM
You've made a lot of people very happy today...even the lurkers.
cclsys
10-31-2009, 05:06 PM
Am now curious: if the software is processing and updating all indicators/strategies etc. tick by tick (which I was very happy to read far down in the thread), how much significant extra processing is involved in updating the chart at the same time? I suspect not much since most of the work is in running the scripts, no?
Suggestion: assuming this concern is the issue, would it be possible to have the chart's price bar update tick by tick even if other indicators on the chart including paintbar colors etc. only update every 500 ms? Broadband latency for most people is around 3-400 ms, so when you add 500 ms to that you are getting close to a 1 second delay on the chart, visually speaking.
Back in the old days (1980's), we used to trade with 200 ms delay or less on CQG machines on a basic phone line at 14,400 bps. Seems that somehow things are going backwards, not forwards.
This is also germane in that an increasing amount of volume in futures and forex markets is being driven by flash trade low latency program trading, so if retail users on Ninja are about 1 second behind, we are essentially being set up to provide those programs with more opportunities to hit our passive orders and - for them - a huge amount of time to do that in. This will actually tend to encourage an increasingly unfair market participation structure along with disadvantaging discretionary 'manual-trigger-pulling' daytraders.
To clarify, however:
a ) for auto-strategies being run, they are still being processed tick by tick so the only issue here is about the 1 second delay including internet latency on the chart refresh rate.
b ) suggestion: either have the price bar with last tick thingy update tick by tick or if that is not possible without whole chart refreshing, can the last price marker on the price axis update tick by tick?
I think this is a very important issue and it would be worth Ninja's time to more fully explain the issues on your end as to why this 500 ms feature is now being considered.
aslane
11-01-2009, 05:23 AM
Could not agree more ccl.
While I am happy that the developers are at least adding the parameter back in, they have missed the boat for an important group of people. There are a lot of NT users with a wide range of abilities. Many just put stuff on charts, have lots of open charts, don't really understand the big picture under the covers, and have perf issues. This group will love the new changes. But what about the people at the other end that have a couple of simple indicators (or none), that have been benchmarked and optimized them, and know what they are doing? These people get shafted if they depend on min delay.
I can deal with charts that have a bunch of stuff on them updating a little less often, but if I have a chart with just price on it that I trade off of, why can it not update every tick? I suspect people would not be happy if the DOM or Time and Sales updated every 100ms.
I know it is a slippery slope, because once you expose it, everyone will turn it on, and there went most of the perf gains.
I don't know how NT is doing the chart refreshes, but I suspect they refresh the entire chart and are not doing incremental updates. Is this true?
trader65
11-01-2009, 07:11 AM
I don't know how NT is doing the chart refreshes, but I suspect they refresh the entire chart and are not doing incremental updates. Is this true?
Ray ???
NinjaTrader_Ray
11-01-2009, 07:28 AM
All,
I am closing this thread since we have already arrived at a finite conclusion which was to re-introduce a feature that was initially removed from NT7. I did leave this thread open so all could voice their opinions which you have. We have listened and provided back in the latest beta user configureable refresh rate with a min threshold of 100ms which seems to satisfy all of the earlier posters. The logic behind these decisions have all been answered in my prior posts.
In short -
- NT does not drop ticks and processes each and every one as they arrive including indicator and strategy updates
- Charts are updated on a user defined time base with a max 100 ms threshold
- Painting consumes CPU cycles and can impact performance which can result in lag --> This is more evident on unfiltered data feeds during high volatilty times
- Overall, you get a much more efficient application capable of processing and updating to the UI as fast as possible
- If you don't believe me, go ask TradeStation and any other trading platform application what refresh rates they impose on their UI's --> My guess is you will not get an answer