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, do not use the hack, it will hurt more than help for your system. You must have 4GB of ram or more, and must run x64 OS. Athlon 64 X2 does not equal a 64-bit OS.
If you want help on troubleshooting why ninja locks all the time create a different thread for that please.
Thanks for posting the large address fix. I was getting disgusted with NT. I even went out and bought a quad core, Win 7, with 8 gigs or RAM and still getting chart lock ups when there is a news event and burst of volume. Still waiting for my beta 7. Anyway I am no technology guru, but I can figure stuff out and not afraid to pioneer at times if the R is worth the R.
I downloaded the version for .14 and downloaded 7 zip. It gave the option to extract to Ninja 6.5xxxx.14. I presume this is correct. I know it's not supported just wondering if I could get a helpful suggestion. Thanks much. This is great forum.
Guys - just wanted to report back in that this hack has been working well for me. I was at the stage of throwing out NT even though I own a lifetime license as it was unusable on ES when the market was moving fast. Now however there will be a momentary pause during fast moving times but no lockups or crashes. Just wanted to extend a big thanks to everyone on the forum that helped out on this topic.
I have 32 bit XP so no hack for me. Great that you have such thing here on this forum.
I recently have been having crashes and slowdowns when I run for many hours and do not close down re-open. I am not running any strategies during these periods, just testing indicators, although my indicators tend to be quite long with multiple options because I am writing them to visually test out various ideas (because cannot program strategies yet in Ninja and have found nothing on their forum that helps with strategies other than particular snippets here and there).
Could someone explain why Ninja is accumulating so much memory usage over time? This happens even when I am not connected to live data and just writing, verifying and reloading indicators onto a chart. It goes up to about 1.5 gigs and also about a Gig is being used in Ram. What's being stored and why? Is there anywhere you can go in your system to 'clear it' or is closing down the only solution.
I have one theory about the lagging during live action because I ran into this when testing out satellite feed last year. Zenfire data transmits unpacketed tick-by-tick data, is my understanding. For example with Tradestation it is packeted into chunks which are compressed and then sent out. In order to coordinate more complex charts like tick charts, there is almost as much uploading as downloading going on if you monitor that carefully as I did for a while (with Bitmeter utility). My little theory is that the synchronisation aspect of building the tick charts gets out of whack with any uploading - downloading latency. Most broadband is about 3-400 ms which is getting close to half a second. So when the market flies, it is unsynchronised so the system has to both keep processing live data as it is transmitted and also try to catch up with the stuff that has not yet been properly synchronised so the charts are drawn correctly.
I am in the somewhat absurd position of still having dialup so I have to restrict myself to certain markets with lower volume. But I have noticed something of late: because I was studying market profile and knew such things require much more processing, especially Jstats type info that updates tick by tick, I turned to minute charts.
Even though I am on dialup (26kps only!), I have not had any lag since moving to the minute charts - which I was also inspired to do by the 5-minute crowd here. It has made a huge difference to my system.
Now of course most people are not on dialup so this is not a concern. However, precisely BECAUSE I have such limitations of bandwidth, my setup is very sensitive to certain changes given that I have such little wriggle room to find workable markets etc. Changing to minute charts for me (when live) has been like night and day. So I suspect that even for those without my bandwidth problems, there might be something in my little theory above that is jamming up the works.
Another little factoid about this: not only is TS data packeted, which means more delay, but also they do not enter your stops and profit targets into the queue until the price is hit at which point the order is sent in. That is a rather important little point that TS doesn't really like to highlight.
Finally, I suspect there is already a thread on the forum about writing indicators and strategies in such a way as to reduce processing. Clearly I am not doing it because of my recent experiences with memory getting maxed out. What are the main issues there, or can someone direct me to a thread that deals with this?
NT 6.5 has major memory leaks, and the 1.5GB limitation is due to architecture and .NET code.
NT 7 will improve things dramatically by having the 256-bar dataseries limit option, which will work fine for majority of users. Currently the more historical data you backtest, the worse the memory problem. Many of my backtests have hundreds of thousands of bars, and when you calculate say an EMA or something it has to do it for hundreds of thousands of bars. With NT7 it will do it just 256 bars back, saving gobs of memory. Since most people don't need to reference a DataSeries more than [256] bars back, it works to solve the limitation.
Still, with x64 here and the hack, I very very rarely have any problems any more, where as I used to have multiple crashes every day, all because of tick-level backtesting. Now I can backtest months of tick level data without a crash, before I couldn't do more than 2 weeks at a time.
So depending on your priorities etc, it is worth building a new system or installing Windows 7 x64 if you have more than 4GB of memory, and use the NT 6.5 hack.
I was just wondering if anyone would be so nice as to comment/suggest on my above post
"I downloaded the version for .14 and downloaded 7 zip. It gave the option to extract to Ninja 6.5xxxx.14. I presume this is correct. I know it's not supported just wondering if I could get a helpful suggestion. Thanks much. This is great forum. "
I understand if things go sideways I am fully responsible. TIA. Good trading to all.
Do you have Ninja 6.5.1000.14 already installed ?
So, if your Windows 7 is x64 (not x86), you just need to:
- rename the NinjaTrader.exe (NinjaTrader.ori for ex.)
- extract the NinjaTrader.exe included in the .rar
- move this NinjaTrader.exe in your NT directory (C:\Program Files (x86)\NinjaTrader 6.5\bin I presume).
I am getting the feeling I should get into 64. Was not really an issue before because running XP SP2 on a dual core is pretty darn good for most things.
But not, it seems, for Ninja!
Since I mainly work with vol and price I think once I learn to code Ninja strategies I'll mainly test on minute bars which fly. I don't like the 256 data series. That's nothing. If I wanted to test a short term system, I'd want to do a year if possible, but at least 90 days, which is thousands of bars.
Another reason I don't yet write strats in Ninja apart from beginner level coding difficulties is that I totally hate the strategy interface. If you run some simple parameter tests, the results window is the single most badly designed trading interface I have seen in over twenty years going back to systems that ran in Dos 5. Personally, I'd rather get text files and test in TS2000. At least you can work with it easily. Then if you have something good, code it into Ninja to trade or test live, but not for backtesting. It's a thoroughly clunky backtesting interface imho.
I have tested this on a Vista and 7 box, both 8GB ram 64bit... so I know thats not the issue.
When I try to optimize my strategy with the hack, I do not get any results. If I put back the old .exe, I get results fine.
I have spent the last 24 hours, almost without interruption, trying to figure out why it won't work. Can any of you try an optimize and see if you get results? If I choose optimize, but leave all of my variables untouched... I do get a result, but as soon as I change a variable, boom, nothing.
Its definitely not data, I can backtest just fine... I can pull up charts, and like I said, if I replace the hack with the original, everything works fine.