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)
About MC Backtesting Features - Limit Order Fills, Bar Magnifier and IOG
Hello, I am facing some dilemmas while I am backtesting my strategies with MC.
First thing is the limit order fills.
I am testing a simple 2 lines code on a 15 minutes chart of ES
With Bar Magnifier enabled and intraday 1 minutes precision.
And Backtesting Assumptions set to "Fill limit order when trade takes place at limit price or better"
the equity line looks good as expected but if then I set Backtesting Assumptions to "fill limit order when trade price goes beyond limit price by 3 ticks" the equity line is completely going down the inverse of the first setting i used. What is wrong here? is really multichart backtesting reliable?
Second topic is the Bar Magnifier
Today I tested the same strategy without Bar Magnifier and then with it, and I got completely different results, from what I understood, having Bar Magnifier is ensuring a more realistic real life backtesting as MC is using 1 minute or tick information precision to check the movement of price on each bar. Did I understood right?
Then I discovered also this Intra-bar Order Generation feature
which by default is disabled and from what I understood this one is also supposed to enhance the reliability of the backtest even thou using Bar Magnifier should be sufficient, is anyone here using this and the other features I listed before in his backtestings?
Can you help answer these questions from other members on NexusFi?
I don't back test intraday so I've not experienced your issues. As a guess, however, if the order consistently slips 3 ticks, I look at how slippage is configured.
In general, Intra-day Order Generation (IOG) should be on if you want to trigger orders on an intra-day chart.
My other question is, do you have data down to the tick level in the database? If not, MC will attempt to "create" tick data from minute data but I'm betting you are looking for real tick precision.
There is a very entailed article on the MC website (support of forum I can't remember which) that addresses the problems with back testing -- and there are a lot of issues regardless of the testing platform. Back testing will never perfectly match reality.
Not sure I really helped out and if I run across the article on back testing I'll come back here.
Hi Abev, thanks a lot for your reply, it really helped as it confirmed me some insight I gathered by lurking the web about this topics in the last days
Now I share the knowledge I gathered.
IoG as you said makes only sense to have it turned on if you have tick data and you are working intraday or even intrahours...also because it is a very compute intensive feature, I got slowed down during backtests of 80% if I had enabled this option.
For a systematic trader that works with minutes makes instead sense to use the bar magnifier set to "intraday precision" to 1 minute, It does not slow down a lot the backtest compute process and it can also help in my opinion to have more precision and reallife beheavior during backtesting also for daily strategies.
For limits and stop orders I think is safe to put 1-2 or 3 ticks of dispersion in "fill limit order when trade price goes beyond limit price by" so one is sure for not so liquid products that the order got filled.