Differences in IG and ProRealTime ProBacktest?
Forums › ProRealTime English forum › ProOrder support › Differences in IG and ProRealTime ProBacktest?
- This topic has 12 replies, 4 voices, and was last updated 7 years ago by GraHal.
-
-
03/07/2017 at 5:52 PM #27571
Hello,
I need some help interpreting some backtest results. I have both an IG account where I use ProRealTime (light blue in screenshots), and I’m testing a ProRealTime Premium account directly via ProRealTime.com as well (black in screenshots) and have noticed they produce different backtest results.
If I run the exact same code with the same settings, the same ProRealTime platform settings, and other (at least as far as I can tell) everything, I will receive different results (see attached screenshots). I’ve been in contact with both IG and ProRealTime and both confirm that their products (IG’s is called EUR/USD (-) and ProRealTime’s is called Spot EUR/USD) reflect the underlying EURUSD instrument. Both also claim that their product is showing the correct results and can’t comment on the other.
If their above statements are correct then shouldn’t the backtests return the same, if not at least similar, results?
As far as I gather, IG’s ProRealTime version is a PRT Complete version that’s been adapted for IG. ProRealTime’s Premium version is just like the standard Complete version, only with higher limits for lists, backtests, systems running etc.
Can anyone please help shed some light on this? Have I perhaps made an error somewhere?
03/07/2017 at 5:52 PM #27578Adding the ProBacktest settings comparision as well, couldn’t attach the 5th image in my original post.
03/07/2017 at 6:09 PM #2759103/07/2017 at 6:17 PM #27595Hello GraHal, thank you for a swift reply. I’ve attached a screenshot for both the charts and as you say there’s a difference in pip value. However I think that in the Premium version you’re supposed to enter the Lot Size in the ProBacktest settings which offsets this. To make both reflect the same value I entered 100’000, which should equate to the same pip value.
Side note: I only now noticed when having both charts side by side that IGs’ charts are “indicative” and ProRealTimes’ charts are “realtime”, as noted in the below left corner on each chart 🙂
03/07/2017 at 6:43 PM #27602pip size tick size pipe value … all gets confusing eh?
If it were me I would choose a short time period over which to backtest (so the backtest completes quick ) but with at least some trades. Then play around with lots size settings on the platform and in your code until you get the same results or at least nearer than in your first post?
Then we can take it from there?
IG is a bookie / market maker and PRT put all deals out to a third party broker so your work on analysing differences will be useful and interesting to a few on here so please report back.
Blue IG price ‘reflects / is based on the underlying market’ (but we expect / hope IG price is exact same as underlying??) but Black / PRT Platform quote prices from the underlying broker / exchange (we really would expect PRT prices to BE exact same as underlying at all times!).
GraHal
1 user thanked author for this post.
03/07/2017 at 7:47 PM #2761903/07/2017 at 7:53 PM #2762103/07/2017 at 8:00 PM #2762203/07/2017 at 8:00 PM #27623Even if the 2 instruments share the same name, they are different ones. You are comparing CFD with spot market. Volumes are different. IG is a market maker and create their own instruments, like any other market makers.
About Forex pairs, I don’t think you’ll find any other instrument that could be so much fictional, it’s only the division of 2 different currencies 🙂1 user thanked author for this post.
03/07/2017 at 9:17 PM #27642@GraHal I think you might be right about the pricing data. I took your suggestion and looked further into the pricing data shown by both platforms and there are minor differences. I’ve noticed IG uses fractions and ProRealTime doesn’t appear to do so in forex trading. Meaning if your code eg looks for candles that close higher than previous candle, then backtests run via IG should have a higher hit rate because they can measure the fractions as well. I have attached a screenshot below to illustrate the difference. I concede that the differences in results may be due to different markets or different pricing data being used.
@Eric The time zone was different but still UTC+1 (European/Berlin) on IG and UTC+1 (European/Paris) on Premium. After opening the order book and viewing live price action from both platforms simultaneously, data from ProRealTime was <= 1 second faster than IG, at least from where I’m sitting in Sweden.@Nicholas When I’ve run backtests on instruments where you can see volume, the systems have still logged successful trades even though there was zero volume at that particular time. Coupled with comparing the two charts the price action is nearly identical both historically and when observing in realtime. I had hoped to see more correlating results but alas 🙂 After I read your comment and GraHals suggestion I think it’s a combination of the two; different markets and different pricing data.
That said it might be worth a try to use ProRealTime Premium with IG. Has anyone tried that?
03/08/2017 at 1:22 AM #27662In your screen shot on your first post you had $25.86 compared with $1.17 per trade … so what difference do you get now?
Yes it would be interesting to compare to PRT Premium running on IG. A helpful member may be along who can do that sometime. To save them time messing about and to motivate them to do it … if you were to put your code on here, your results and the date range you backtested over then we have a basis for a half decent test?
Thanks
GraHal03/08/2017 at 12:58 PM #27742@GraHal I still get different results on my backtests, probably because of the reasons I explained. As for the code I tested, I’ve changed it multiple times since my first post but the main principle behind it was to apply 3 moving averages with 2 step entry: MA1 needs to cross over MA2 and MA3 for Long, and cross under for Short. A silly strategy probably doomed to fail in real life EURUSD trading, but it’ll do the job to compare backtest results from IG and PRT 🙂 I’ve been in contact with both ProRealTime and IG to set it up, as I’d love to test it out personally. The big thing for me is getting the full ProRealTime with all its features, and not the feature-limited version IG hosts. I like IG as a market maker and I’m personally comfortable continuing with them. Eg IG offer fractions in forex pricing data and as Nicholas established ProRealTime don’t because they use Spot market, different market instruments. However IG eg don’t have Walk Forward testing in their adaptation, which is offered in ProRealTime’s own platform. Hopefully I’ll get it set up before week’s end and can test it out and come back with some feedback with how things work.
03/08/2017 at 1:40 PM #27743@alwaysauhn yeah no probs re a ‘doomed to fail code‘ just for testing, just call it a ‘test bed’ or similar.
If other folks on here are anything like me (heaven forbid! :)) then I like to help if the helping is made straightforward. In your example a quick copy and paste of your code, set up the dates etc and press the backtest button and off we go and then compare with you.
I’m intrigued as to the difference you are getting. If the diff was a factor of 25, 50, 100, 1000, etc then it may point to what Nicolas suggested (CFD vs Spot) but the diff is by a factor of 22.1. Now I’ve said that, probably Nicolas is correct (he most often is! :)) maybe the diff is by a factor of 25 and the rest (2.9) is due to pricing variations? I’m probably rambling!
Above is why I suggested playing around with lot sizes to get the diff nearer?
Anyway I hope we get a conclusion (other than a fussy one) else it’s time wasted and piles on more doubt in the integrity of prices, spreads, backtests etc etc. (I’m feeling dissilusioned with ‘auto-trading’ generally today so forgive my doom! 🙂).
Best
GraHal -
AuthorPosts
Find exclusive trading pro-tools on