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)
Backtesting Systems with ATM Stratgies efficiently...
I've managed to code a system that calls an ATM strategy, and I've been backtesting it for the past few days using Market Replay data at 1x speed. I've read that that is the only reliable way to backtest a strategy that includes an ATM.
Have any of you come up with more efficient ways of backtesting systems that include ATM strategies other than using multiple computers? This is like watching paint dry....
I'd also like to ask how you deal with your brokers to ensure what NT is telling you about your positions is real. Do you have separate web-based log in at your broker to check your positions? Or do you call your broker to ensure you are flat (or long x contracts or whatever) when you are calling it a day. FWIW on on a sim account with AMP now.
Thanks for your thoughts...
Can you help answer these questions from other members on NexusFi?
First, I moved this to the Programming section since you're talking about backtesting and calling an ATM from within NinjaScript.
From my understanding of this subject, it is not possible to actually backtest using Strategy Analyzer when using an ATM template. This is why I don't use an ATM template in my strategies, I just code the logic manually to do a similar thing.
As for the Market Replay 1x mode to be accurate -- well, there has been a debate about this. Originally, the NT team said that Market Replay used the delays as defined in the Simulator tab of the Tools -> Options settings. But, then later after I pointed out the online help directly contradicted them, they changed their story. However, in the end, I certainly did not get the feeling that anyone (NT staff) actually really truly knew the answer.
I feel your pain regarding replaying @ 1x speed, I can only imagine...
The best advice I can give is all that "time" is better spent coding your strategy to automatically manage your orders and ditch the ATM. It may take you many hours of initial work, but then you'll recoup it many times over in the end.
Thanks Mike. I've been thinking VMWare might help. If I can run 4-5 virtual XP machines with individual instances of NT on one (powerful) box just for backtesting with market replay data... that might be a solution.
When you talk of coding the solution in NinjaScript... are you talking about coding the equivalent of an ATM with stops, targets, trails, etc? Or just coding it to signal me to enter the trade?
What I've been doing is backtest/optimize using hard coded stops and targets, and when the system has a good positive extectancy, add the ATM code and test it using market replay data.
I am talking about coding your strategy to auto trade, manage stops, trail, everything. As opposed to calling the ATM template from within the auto strategy.
As for VMware, yes I am a fan and run VirtualBox and VMware on my servers and I also have VMware on my primary trading desktop as back before I gave up on automated strategies, I needed multiple VM's to do the number crunching and backtesting because NT 6.5 is so inefficient.
Just be prepared to deal with the synchronization of data between VM's, it is not a fun task if you make regular changes or want to test on new data.
@MX: Mike is right, forget the idea of using an ATM template in a strategy, it's not working as it should be. It's a better choice to invest time in building your own "ATM-like" functions (and more interesting BTW) than spending hours trying to understand why ATM template didn't do what it was supposed to do.
@forenxe: no idea for renko, but only live testing will tell the truth, renko or not renko.
Do a search for renko, there are threads on this already. You should also read the Hurley Method discussion, it has hundreds of posts and a majority of them are about renko backtesting.
Short answer, the Open and Close are not 'normal' for Renko bars, and NT can't properly handle them in a backtest.
mxasj
I have tried backtesting using Market replay at various speeds and 50x has been giving some relialistic results that I get in sim trades. 100x was closer, 50x is better as you can also see bar drawn. Honestly, I never had patience to try 1x