NexusFi: Find Your Edge


Home Menu

 





Ninjatrader 8 not ready for prime time?


Discussion in NinjaTrader

Updated
      Top Posters
    1. looks_one bobc635 with 39 posts (66 thanks)
    2. looks_two bobwest with 30 posts (58 thanks)
    3. looks_3 Blash with 26 posts (24 thanks)
    4. looks_4 NinjaTrader with 22 posts (43 thanks)
      Best Posters
    1. looks_one NinjaTrader with 2 thanks per post
    2. looks_two bobwest with 1.9 thanks per post
    3. looks_3 bobc635 with 1.7 thanks per post
    4. looks_4 Blash with 0.9 thanks per post
    1. trending_up 91,140 views
    2. thumb_up 437 thanks given
    3. group 68 followers
    1. forum 310 posts
    2. attach_file 16 attachments




 
Search this Thread

Ninjatrader 8 not ready for prime time?

  #141 (permalink)
 bobc635 
Tucson
 
Experience: Intermediate
Platform: NinjaTrader
Broker: Stage5
Trading: CL, YM
Posts: 209 since Jan 2011
Thanks Given: 137
Thanks Received: 233

Thanks for the note JTrade.... I made a BAT file to clean caches and data. It makes it easy to clear all data every day. I have a friend that is still having issues with 8. I will relay the BlackViper notes to him.

Thanks
Bob


jtrade View Post
Update : I carried out all the Black Viper "Safe" tweaks a week or so ago, since which time NT8 has been running MUCH better. As in MUCH, MUCH better.... no idea why, but long may it continue.

Black Viper's Windows 7 Service Pack 1 Service Configurations | Black Viper | www.blackviper.com

Edit : just to be clear.... MUCH, MUCH, MUCH better, ie. it seems to be working glitch-free... capisce ?


Reply With Quote

Can you help answer these questions
from other members on NexusFi?
New Micros: Ultra 10-Year & Ultra T-Bond -- Live Now
Treasury Notes and Bonds
Exit Strategy
NinjaTrader
NexusFi Journal Challenge - April 2024
Feedback and Announcements
ZombieSqueeze
Platforms and Indicators
Better Renko Gaps
The Elite Circle
 
Best Threads (Most Thanked)
in the last 7 days on NexusFi
Get funded firms 2023/2024 - Any recommendations or word …
61 thanks
Funded Trader platforms
38 thanks
NexusFi site changelog and issues/problem reporting
27 thanks
GFIs1 1 DAX trade per day journal
19 thanks
The Program
18 thanks
  #142 (permalink)
 
jtrade's Avatar
 jtrade 
near Amsterdam
 
Experience: Advanced
Platform: NinjaTrader
Trading: (M)ES, (M)NQ
Posts: 328 since Feb 2010
Thanks Given: 442
Thanks Received: 336

It is strange, Bob, & I wish I knew what is "the difference that makes the difference" - presumably just one disabled W7 process that somehow no longer collides with some aspect of NT8.

J.

Reply With Quote
  #143 (permalink)
 bobc635 
Tucson
 
Experience: Intermediate
Platform: NinjaTrader
Broker: Stage5
Trading: CL, YM
Posts: 209 since Jan 2011
Thanks Given: 137
Thanks Received: 233


Thanks J... let me know what you find...

I looked at your profile....very nice Pic... do you listen to Suspicious Observers???
Suspicious0bservers - Space Weather | Solar Activity | Weather | Earthquakes


Take Care... Bob



jtrade View Post
It is strange, Bob, & I wish I knew what is "the difference that makes the difference" - presumably just one disabled W7 process that somehow no longer collides with some aspect of NT8.

J.


Reply With Quote
Thanked by:
  #144 (permalink)
 iantg 
charlotte nc
 
Experience: Advanced
Platform: My Own System
Broker: Optimus
Trading: Emini (ES, YM, NQ, ect.)
Posts: 408 since Jan 2015
Thanks Given: 90
Thanks Received: 1,147

Recently I started running a ton of simulations in NT 8 in Market Replay. Unlike NT 7, I noticed after only a few thousand trades it started getting crazy slow to just load the Playback ticker. Like in some cases it would take 5 to 10 minutes. In NT 7 it would typically take over 100K trades before it would get this slow.

So I had no option but to reset the DB. This fixes the problem, and when you restart it and connect to the playback ticker it loads instantly, and everything is fast again.

But after a few DB resets, I noticed that the resets are taking anywhere from 30 minutes to an hour! This was crazy, so I decided to take matters into my own hands because there had to be a better way.

I wouldn't recommend anyone do this with a NT 8 system trading a live account, but for anyone running thousands of simulations with paper money here are the steps.

1. Do a one time Reset of the DB. Then go into the following folder directory: NinjaTrader 8 > DB. Here you will see the actual database .sdf file. There is one called NinjaTrader.sfd and one called NinjaTraderOld.sfd.
2. Make a copy of the NinjaTrader.sfd and place it somewhere else. (For example you can make a copy in the root of the NinjaTrader 8 main folder is you like).
3. Check the size make sure it is fairly small: < 5,000 kb for example
4. Run a few thousand test trades and observe that the system is starting to get slow as heck. When you connect to market replay it takes minutes to load the playback ticker....
5. At this point, go back into the NinjaTrader 8 > DB and delete the NinjaTrader.sfd file. By now it will be > 10k kb. For example mine was around 100k
6. Go back to the folder where you made a copy when it was nice and small and copy this version of the NinjaTrader.sfd file, and simply paste it back into the DB folder to essentially replace the one you just deleted.
7. Restart NT and watch how fast it now goes.

**** Anytime you hit > 5K trades just repeat this process and it will always be super fast and you won't get annoyed and break anything!

Happy Trading!

Ian

Visit my NexusFi Trade Journal Reply With Quote
Thanked by:
  #145 (permalink)
 Koepisch 
@ Germany
 
Experience: Beginner
Platform: NinjaTrader
Broker: Mirus Futures/Zen-Fire
Trading: FDAX
Posts: 569 since Nov 2011
Thanks Given: 440
Thanks Received: 518

Hi,

i think it's time that you don't waste your time with NinjaTrader anymore and make your tools yourself. There are a few of these kind of system traders here at FIO. It's a common approach to build a clean interface (ticks in, trade data out) to your strategy to feed it with your own data. These data can be extracted from the ntd files (NT7). Then you have everything under control and you can trust your statistics. As a comparision you can test the same "Strategy DLL" within NinjaTrader or an other plattform. Then you can easily integrate your "Strategy DLL" into CQG or R(ithmic) API too.

I can process 90 000 000 ticks within 1 second and lower without any issue (with C# and data locality optimization only - using the right patterns you can reach C++ performance with C# code). Speed and reliability is the key to test your ideas - you have to invest in your own framework once - but you can use it your whole lifetime.

Regards,
Koepisch


iantg View Post
Recently I started running a ton of simulations in NT 8 in Market Replay. Unlike NT 7, I noticed after only a few thousand trades it started getting crazy slow to just load the Playback ticker. Like in some cases it would take 5 to 10 minutes. In NT 7 it would typically take over 100K trades before it would get this slow.

So I had no option but to reset the DB. This fixes the problem, and when you restart it and connect to the playback ticker it loads instantly, and everything is fast again.

But after a few DB resets, I noticed that the resets are taking anywhere from 30 minutes to an hour! This was crazy, so I decided to take matters into my own hands because there had to be a better way.

I wouldn't recommend anyone do this with a NT 8 system trading a live account, but for anyone running thousands of simulations with paper money here are the steps.

1. Do a one time Reset of the DB. Then go into the following folder directory: NinjaTrader 8 > DB. Here you will see the actual database .sdf file. There is one called NinjaTrader.sfd and one called NinjaTraderOld.sfd.
2. Make a copy of the NinjaTrader.sfd and place it somewhere else. (For example you can make a copy in the root of the NinjaTrader 8 main folder is you like).
3. Check the size make sure it is fairly small: < 5,000 kb for example
4. Run a few thousand test trades and observe that the system is starting to get slow as heck. When you connect to market replay it takes minutes to load the playback ticker....
5. At this point, go back into the NinjaTrader 8 > DB and delete the NinjaTrader.sfd file. By now it will be > 10k kb. For example mine was around 100k
6. Go back to the folder where you made a copy when it was nice and small and copy this version of the NinjaTrader.sfd file, and simply paste it back into the DB folder to essentially replace the one you just deleted.
7. Restart NT and watch how fast it now goes.

**** Anytime you hit > 5K trades just repeat this process and it will always be super fast and you won't get annoyed and break anything!

Happy Trading!

Ian


Reply With Quote
Thanked by:
  #146 (permalink)
 iantg 
charlotte nc
 
Experience: Advanced
Platform: My Own System
Broker: Optimus
Trading: Emini (ES, YM, NQ, ect.)
Posts: 408 since Jan 2015
Thanks Given: 90
Thanks Received: 1,147

Interesting approach... Congratulations on building your own system to handle your backtests. I did something similar about 4 years ago in SQL. The thing about developing your own SIM engine, and the reason that I keep going back to NinjaTrader, is that a SIM engine has to have certain assumptions about when you would realistically be able to get filled entering and exiting trades. Sure we can build our own models, but what rules are we setting for fills? Do you always get filled on limit orders on first touch, second touch, third touch, or does it require price pass through? Is this dynamic and ever changing depending on market conditions, or is every trade treated the same (Pass through required for all for example). Any concept of queue position or level 2 data? I personally lacked confidence in my ability to "know how the market would realistically behave" as I didn't have thousands of real trades under my belt to model real market assumptions. The team at NinjaTrader has had real market experience and they have built their platform to be more accurate than anything an armature could build for this reason.

I completely agree with your point that it is terribly slow, obviously requires some level of hacking and tinkering (I.E the one I mentioned as a work around to prevent freezing and crashing), but nonetheless you end up getting a reliably accurate SIM engine. All the ones I built were too liberal or too conservative because it's fairly easy to program assumptions that you get filled on price touch and price pass through, but it is very difficult to estimate a queue position, run level 2 data into your model and accurately determine fills. I am more than willing to pay a little more in the way of wait time for processing in order to get accurate results that to program my own assumptions just to test a little faster.

Having said all of this, if you feel that your system is accurate and has all the complexity I described to handle queue position, level 2 data, and accurate fills, then you should look into selling your system, because there is a huge market for very accurate, very fast SIM engines and obviously very scarce supply, since most vendors focus primarily on charting and other things that slow their SIM down.

Good Luck!

Ian





Koepisch View Post
Hi,

i think it's time that you don't waste your time with NinjaTrader anymore and make your tools yourself. There are a few of these kind of system traders here at FIO. It's a common approach to build a clean interface (ticks in, trade data out) to your strategy to feed it with your own data. These data can be extracted from the ntd files (NT7). Then you have everything under control and you can trust your statistics. As a comparision you can test the same "Strategy DLL" within NinjaTrader or an other plattform. Then you can easily integrate your "Strategy DLL" into CQG or R(ithmic) API too.

I can process 90 000 000 ticks within 1 second and lower without any issue (with C# and data locality optimization only - using the right patterns you can reach C++ performance with C# code). Speed and reliability is the key to test your ideas - you have to invest in your own framework once - but you can use it your whole lifetime.

Regards,
Koepisch


Visit my NexusFi Trade Journal Reply With Quote
  #147 (permalink)
 
jtrade's Avatar
 jtrade 
near Amsterdam
 
Experience: Advanced
Platform: NinjaTrader
Trading: (M)ES, (M)NQ
Posts: 328 since Feb 2010
Thanks Given: 442
Thanks Received: 336


TimDouglas View Post
Another example.....

Have spent days proving to ninjatrader that in some cases during an automated strategy stop losses are immediately cancelled when there is no reason for them to be. I repeatedly asked Ninjatrader to make people aware of this as it could obviously have serious implications for traders, they did not do so. Ninjatrader also could not explain how this got through internal testing.

Tim - I only just noticed your post, coincidentally having run into possibly the same issue regarding stops yesterday.

Here's the NT response https://forum.ninjatrader.com/showthread.php?p=527901

Reply With Quote
Thanked by:
  #148 (permalink)
 Koepisch 
@ Germany
 
Experience: Beginner
Platform: NinjaTrader
Broker: Mirus Futures/Zen-Fire
Trading: FDAX
Posts: 569 since Nov 2011
Thanks Given: 440
Thanks Received: 518

Hi Ian,

because of my style of trading i don't need this level of precision, so i could easily skip the Level 2 part completely. That in fact, reduces the complexity for me. But do you think that NT really handle your needs (Level 2 and Queue Position)? I'm very very sceptical about that und i think NT use only level 1 data for trade entry with a very basic model. It would be very interesting if other users can confirm or deny that.

Regards,
Koepisch


iantg View Post
Interesting approach... Congratulations on building your own system to handle your backtests. I did something similar about 4 years ago in SQL. The thing about developing your own SIM engine, and the reason that I keep going back to NinjaTrader, is that a SIM engine has to have certain assumptions about when you would realistically be able to get filled entering and exiting trades. Sure we can build our own models, but what rules are we
...
Having said all of this, if you feel that your system is accurate and has all the complexity I described to handle queue position, level 2 data, and accurate fills, then you should look into selling your system, because there is a huge market for very accurate, very fast SIM engines and obviously very scarce supply, since most vendors focus primarily on charting and other things that slow their SIM down.

Good Luck!

Ian


Reply With Quote
  #149 (permalink)
 iantg 
charlotte nc
 
Experience: Advanced
Platform: My Own System
Broker: Optimus
Trading: Emini (ES, YM, NQ, ect.)
Posts: 408 since Jan 2015
Thanks Given: 90
Thanks Received: 1,147

You raise a good point my friend! I don't honestly know to what degree the NT SIM engine uses queue position and level 2 data vs. just bid- ask - market volumes and mostly level 1 data. I have noticed that the SIM engine completely changed from 7 to 8 and now 8 is far more conservative. I punted the question recently on the boards here regarding the overall accuracy of NT's SIM, looking to get a sense of how it stacked up compared to Live vs. other SIM's.

I haven't heard too much on this topic honestly, but it does look like NT 8 is an improvement from NT 7 regarding granularity and accuracy.



Koepisch View Post
Hi Ian,

because of my style of trading i don't need this level of precision, so i could easily skip the Level 2 part completely. That in fact, reduces the complexity for me. But do you think that NT really handle your needs (Level 2 and Queue Position)? I'm very very sceptical about that und i think NT use only level 1 data for trade entry with a very basic model. It would be very interesting if other users can confirm or deny that.

Regards,
Koepisch


Visit my NexusFi Trade Journal Reply With Quote
  #150 (permalink)
 TimDouglas 
London U.K.
 
Experience: Beginner
Platform: NinjaTrader
Trading: Stocks
Posts: 5 since May 2013
Thanks Given: 1
Thanks Received: 2



jtrade View Post
Tim - I only just noticed your post, coincidentally having run into possibly the same issue regarding stops yesterday.

Here's the NT response https://forum.ninjatrader.com/showthread.php?p=527901

Thanks for your reply jtrade, the issue I was referring to was fixed in 8.0.11.1. Although how this ever got through any form of internal testing that NinjaTrader amazes me, it's such a core part of many automated strategies. Someone in another forum posted that they assume NinjaTraders internal testing is only ran on strategies such as moving average crosses on one instrument and timeframe, which whilst an assumption, would make sense if considering the number of issues NinjaTrader 8 has with anything complex.

I've stopped using NinjaTrader now, which is a shame, as I do like some of the features it has. But I've found that constantly running into bugs on what is classed as "production" software is at best not worth the hassle, and at worst, dangerous from an account perspective.

Here's the link to the release note where it was fixed

https://ninjatrader.com/support/helpGuides/nt8/en-us/?release_notes.htm

bug id: 12118

Reply With Quote
Thanked by:




Last Updated on July 17, 2020


© 2024 NexusFi™, s.a., All Rights Reserved.
Av Ricardo J. Alfaro, Century Tower, Panama City, Panama, Ph: +507 833-9432 (Panama and Intl), +1 888-312-3001 (USA and Canada)
All information is for educational use only and is not investment advice. There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
About Us - Contact Us - Site Rules, Acceptable Use, and Terms and Conditions - Privacy Policy - Downloads - Top
no new posts