I use to get freezes and crashes 2 or 3 times a week with NT6.5, but with NT7 those are very rare occurrences. One of the things I do regularly is reset the database every few days or every weekend. On my system, the original Ninjatrader.sdf database file is around 5MB, once it grows to over 10MB or so, I reset the database to bring it back down to the original size. I've noticed certain performance aspects get increasingly worst, the larger the database file gets.
Another source of hangs and freezes and slowdown I have also found in my experience are corrupted workspaces. I don't know how this comes to be since the workspace data seems to be stored in .xml files, and I don't know how these can be corrupted and go unnoticed, since a .xml file has to be parsed by NT, I assume the parsing would discover any corrupted tags.
Many times when I start getting continuous slow response and start seeing the hour glass on every click or scrolling the charts, I recreate the workspace or restore a copy of that .xml file, and that will take care of the issue. This just happened this morning, I had to recreate a workspace I've been using unaltered for the past few weeks. If the default workspace, the one that comes up automatically when you start NT, is corrupted, it will prevent NT from starting altogether. I have encountered this several times as well, and I have to kill NT, delete that workspace .xml file and the default _Workspaces.xml file, and restart NT.
These are the only serious issues I have really had since NT7, and they all can be taken care of with some regular maintenance in my case.
Last edited by monpere; May 4th, 2012 at 11:47 AM.
The following 2 users say Thank You to monpere for this post:
I never ran into memory problems with the 32-bit version, while it was running live. But I have a huge amount of indicators and strategies, and when I edit some of them Ninjatrader quickly needs another Gigabyte of RAM. With the 64-bit version there are no limits. Maybe I need to clean up things a bit.
I do not know any well-coded indicators that have exceptional RAM requirements.
Even my Fibonacci Analyzer, which produces 540 plots was running well on a 1-minute chart and a lookback period of 100 days with the 32-bit version. 100 days x 1395 minutes x 540 plots x 8 Bytes (double) = 600 MByte. Not very astonishing that NinjaTrader used another 0.6 GByte for that indicator. But then it is the most RAM-hungry indicator that I have ever coded and it is only used for testing purpose, as nobody requires 540 lines for trading live strategies. Of course it would be another story if you use an indicator with 540 plots on a tick series.
The following 2 users say Thank You to Fat Tails for this post:
I get this workspace corruption thing happening every few weeks it seems. Happened just yesterday, and I had to spend over an hour troubleshooting and recreating some charts. (I had some screenshots and in my fit of maddness was going to post my beefs, but held myself back. ) I restart NT7 daily after the CME instruments close @ 5:15pm EST and I'd not done it for 2 days, but that shouldn't matter. I actually added no new indicators, although I did create a few momentum based time charts. The workspace seemed to work, except for 3 charts hanging forever saying loading data, eventually causing a NT wide freeze. The goodness was that it would start and seemingly run OK for a few minutes, where I could then save the chart template for the new charts. I wish NT would implement individual chart save templates automatically, as opposed to stuffing everything into one large XML file, which ultimately somehow gets corrupted. Yes, I run 30+ charts at the same time for 8-12 instruments, but I do not see that as excessive.
I have gotten into the habit of saving my workspace a few times through the day. I then have a backup utility that backs it and some other stuff up hourly, into a new zip file, so I have a filename timestamp that allows me to roll back to a previous properly loading workspace. It's saved my ass at least once now that I have implemented it; it's in a previous post of last week in case anyone is interested.
FT, how does one measure or view the individual indicator memory usage footprints?
The following 2 users say Thank You to Beljevina for this post:
You start NinjaTrader and open a chart. Then you look how much RAM NinjaTrader uses. Then you add the indicator to your chart. Now you check again.
Historical data has 1 tick per bar, that is what I used to calculate the RAM requirement of the indicator, on real-time data the RAM usage will be higher, but then you will probably not have 100 days of real-time data on your chart....
The following 3 users say Thank You to Fat Tails for this post:
When Linux, then first MAC, while is a comperable undemocratic fixed and defined plattform!
I self a hardcore software developer (down to embedded microcontrolers, on PC i only use Windows, while any users has the same by microsoft equal defined plattform. When i switch, then to MAC, is give the same fixed os software with the same "know features and errors" on all customer systems.
Currently i never well give support for a own full free linux software for running under all distributions, kernels, shells or what ever.
OS or any license costs as one time fee is no problem, the support and the potential of "self helping" for normal users is for a little company a problem. This is my private mine, i dont think we become on the next time a "native" linux NinjaTrader...
When Windows8 has a "unuseable" GUI, no problem... microsoft has server versions without a play center GUI and its come a pro or enterprise version with a standard desktop or any user can switch by using "ClassicShell" to a "normal" desktopscreen and continue use the advantages of the fast Win8 kernel
On the subject of saving workspaces, I think there may be some issues there too. I have seen a few times that if I save a workspace with File->Workspace->Save Workspace, then NT crashes (or I kill it), the workspace seems not to have actually been saved. Almost like the data never got flushed to disk so it never made it to the .xml file. So, now the way I save workspaces is using 'Save Wrokspace As...' to save the workspace to another name, then save it a 2nd time back to the original name. This seems to get around the issue of the workspace sometimes not being actually saved upon abnormal termination of NT.
The following user says Thank You to monpere for this post:
To those of you who have commented on corrupt workspaces. Should you run into a workspace issue in the future, please write to me directly via our support email and do not touch your workspaces. I will get a copy with your permission and have development look into it.
The following 5 users say Thank You to NinjaTrader for this post:
the nt is a good tool. i can use it with different brokers and datastreams. the cost savings vs other platforms like sierra are not that great because i do swingtrading and i do not generate high commissions.
i bought it because i was looking for a more convenient and autotrading tool for ib.
my only complaint is that it only runs on windows.