Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
No idea. Some months maybe. SO far the goal is to have something that I can use for trade control and some visualization. It was on a backburner for some months, not it goes in full speed again. Working fulltime on it. I hope to put out a usable internal version of WHATEVER FUNCTIONALITY I CAN GET mid of next week. Working on the client/server part now (news: this is not ninja - it will be a client server tool running against a real sql server as data store, allowing multiple users to connect - the idea is something that has the power of ninja and is also usable in a prop shop style of environment).
But let me also say, you are likely to see a better improvement in overall performance by just eliminating all the crap people fall for on Windows installs.
Don't install all the registry cleaning crap, all the fancy program uninstallers, all the extra special haxx0r stuff that promises to increase speed. All this stuff is loaded down bloatware, worse even a lot of it is spyware.
Latency is a big issue for trading systems. So if you are really looking for performance, you need to run a wired connection (not wifi), make sure you aren't playing any internet music or downloading torrents, etc.
Personally, I don't install the crap people fall for, but I don't worry so much about the latency side on the internet connection. If I can only be successful trader by entering a trade 250ms faster, then I am not a good trader.
Also, let me state the obvious --- it seems many people have really old computers. If you don't have a quad core CPU, it is old. You can't get blood from a turnip, and you can't make an out of date computer fast. You should buy a new system. If you don't build it yourself, then the first thing you should do when you get the system is blow away everything and reformat the partition, reinstall your OS from scratch. Most tier 1/2/3 system manufacturers load up their installs with crap, crap and more crap because people that don't know any better just can't get enough crap!
Amen to that. Seriously. It is called "Crapware" for a reason. I love our company internal Widows installs - yes, it is not bare bone (office etc.), but no - no damn crapware on it
And I TRADE from a pure windows virtual machine sitting in a data center I Dont trust neither my office power supply nore my internet connection
Ninja's assemblies are not encrypted just don't have the IL in them, RemoteSoft protector takes the IL out but LEAVES the metadata, so basically he should have no problem seeing how much time each method in ninja took.
Also, I wouldn't bash WinForms so much, it is true the msft put their efforts on WPF but still WinForms is a good thing. Ninja, for saving development time, uses Infragistics UI controls which are cool, but with "cool" may come overkill and performance issues (not saying anything bad about Infragistics, they have great controls, but might be misused).
If I understood correctly ZTrade is talking about indicators that has heavy(?) I/O to disk, I guess that it might take some time to read a file full of ticks, not talking about the recording.
It was suggested by one the the Ninja_Traders that code optimizations was necessary, I asked how? This is what I was told by another:
If you want someone to professionally evaluate your code and make recommendations you could try one of the 3rd party NinjaScript Consultants here: Online Trading. [AUTOLINK]NINJATRADER[/AUTOLINK]. NinjaScript Consultants. They make a business out of programming scripts for people and if you ask some of them they can provide you with code evaluations too.
The recording indicators can cause long load times - Especially earlier versions of BuySellVolume.
Wanted to find some way to understand what was happening and avoid duplication of effort. Any time something is changed another long wait is required, as the data must be reloaded from disk.
Zondor has added some clean up code but load times are still very, very long. I'll let him explain that part, but it is basically lifted from the indicators that Ninja Trader has built in.
R.I.P. Andy Zektzer (ZTR), 1960-2010.
Please visit this thread for more information.
Well...
* RemoteSoft protector. Interesting. This, though, seriously sucks - with all respect for the attempts of RemoteSoft, I dont see them coming up with efficient assembly level optimizations. Ouch.
* NinjaTrader6.5 does NOT use Infragistics, and the 7.0 uses such an outdated version I dont wonder they have performance problems - a lot of performance optimizations was done recently by infragistics. Their version is ancient (makes me wonder whether they care at all about bugfixes etc.). Add that to the usual "program quality focus" we all know from Ninja and "crapware" gets a ninja meaning Seriously - never seen a program with so many brain dead decisions. Just to make things true- the version they use is like 2 years old (8.3, now we are at 10.1). Thhe 9 version had a lot of UI optimizations, especially in grids etc.
* Winforms - sorry, winforms DESERVES A bashing for charting etc. It simply is not modern enough. MS has put up a tremendous amount of groundwork towards being able to offload higher functions to the GPU - which really will shine when you have lot of interactive updates (I.e. real time charts). Even text rendering is now part of a DirectX method call - instead of the CPU working. The performane gains are pretty fantastic. NO way to get that out of Winforms. Espeicalyl the new 4.0 version (why the heck will NinjaTrader 7 not be .NET 4.0? I moved my own code over within days) with the cache hinting that allows arbitrary elements to be GPU-cached is REALLY a godsent. I could se a ton of really nice stuff one could do with charts to allow more control
IO indicators are always an issue - file IO is not that simple. If you do a lot of reading and writing, try using BufferedStreams around the files - with a buffer good enough to actually be relevant (2-4mb maybe). After that, a better disc subsystem is needed
I started to develop a visualization app for trading with WPF but quickly went back to GDI because it was impossible to draw a 1 pixel width line (the whole "dpi independant" paradigm...", and fonts were blurry. I think now you can draw 1 pixel lines, but aren't fonts still blurry ?