Indicative vs "Real" quote data...

 
I'm wondering if anyone out there can shed some light on, or share their experiences with using indicative vs real forex quote data when back-testing trading systems. I've been trying to gain some understanding on the different types of data and how they're collected and came to the following conclusions - if I'm completely wrong with the following, please feel free to let me know!

From my understanding, all retails brokers are in fact, mini-marketmakers between their own clients and clearing banks, only clearing trades with their clearing banks when absolutely necessary. This would basically mean that each Forex broker’s quotes (while "pretty much" following the market) are their own, and therefore different from another broker’s quotes, depending on what their clients are up to. I've verified this by downloading several demo platforms from different FOREX brokers and comparing their quotes. For instance, comparing Saxobank’s and FXDD’s hourly quotes shows normal quote differences of around 5-10 pips but can vary by as much as 50 pips! Even the guys who claim to not have Dealing Desks, still seem to make their own internal markets but often through an associated or sister company (so they can claim to not have a Dealing Desk).

My conclusion then to all this is that if you wanted to use “real” market data, rather than indicative data, you would have to get that data from the broker you happen to be using at that time, as he is the one who is “making your market” at that time. Personally, I would find it a bit risky to only use data from only one specific broker as, should he decide to change the matching conditions etc for whatever reason (for instance, a lot of brokers seem to be doing this now in response to all the news traders by widening spreads etc around news times), that “edge” that I thought I had could quite quickly disappear!

With all this in mind, I’m actually very interested to know what other automated forex trading system developers out there are using with regards to back-testing data. Up until now, I've developed my systems using indicative data ('cause it's cheap!) and then once a "profitable" system has been developed, test it using quote data from several different broker's. If it still works, then I may consider trying the system live, otherwise, it's back to the drawing board. SOoooooo.. what are you guys doing?
 
You are right with different brokers giving you differnt prices. I only spotted 2-3 pips differenece though, and the 'behaviour' of price movements are the same. There are some highs/lows, where one broker gives you a price, an other don't.

What exactly mean on 'indicative' data?

I find real tick data a lot more accurate than generated data, I've written my thoughts on this in several topics recently.
One have to understand this: back testing is a test of how your EA operates in different conditions. Not for getting cent accurate results. So getting 9999.90 dollars of drawdown (including margin) on a 10.000 acccount for the last 3 years backtest does not mean that you will survive in the future. Nor does mean you would have surely survived in the past. You will only see what caused this drawdown, and you can get prepared for similiar situations. Getting 2234.34 dollars profit on a backtest for the last year does not mean you would have got 2234.34 dollars trading live. But on an accurate backtest you need to get between somewhere 1800-2500. But getting 90.000. on a backtest, while getting 1000 on live indicates an unusuable backtest.

One more thing: there is two ways to approach data movement: one says, that FOREX is random. The other says FOREX moves according to patterns/trends more or less. (I experienced the latter) Well, if you would like to study the way patterns develop, it is more practical to do this on real data than on random.

And the last: you need at least 1 years of data, but 2 is better. I had a strategy, which was highly profitable for 9!! months, without any problems, and type of market, which only lasted for two weeks, blew the account. So forward testing for 2 months won't be a solution for this.

If you have a good, reliable strategy, the 1-2-3 pips difference with brokers won't do any harm to it, in my opinion.
 
Hi Zap,

Thanks for your comments.

As far as the different brokers and quotes is concerned, the variance in quotes differs between brokers. If you compare some brokers, their quotes only seem to vary by a couple of pips. The quote variance from other brokers however, is quite significant. Try comparing the EURUSD-H1 charts of Saxobank and FXDD for instance...

Indicative data is data that has been derived from (or is basically the average of) a number of different quote sources. Most of the cheap quote providers (say, where you pay around $300 for a number of different currency pairs) provide you with indicative data. There are several debates raging on a number of forums as to the validity of this data. I personally use it but as I stated above, only together with other quote sources....

I've thought about buying tick data but found that the test results I get don't actually change much using data below 5 min data. Are you noticing big differences using tick data as opposed to 1 or 5 minute data? The other problem I have with tick data is that again, it would really have to be from your broker or a broker with very similar quotes to your own to have any validity. I see that there are now several data providers who will provide tick data from a number of different sources/brokers for any given currency pair....

As far as variences in test results are concerned, I'm not looking for precise results - merely that an Expert is reasonably profitable or not. However, I've found that this can vary widely depending on the data set I use. For instance, I've got one expert at the moment that produces around 40% return over 9 months when forward testing it on one set of data and only breaks even using another data set (both data sets are EURUSD 5 min). Oh the joys of not having definitive data from a centralised exchange!
 

I've thought about buying tick data but found that the test results I get don't actually change much using data below 5 min data. Are you noticing big differences using tick data as opposed to 1 or 5 minute data? The other problem I have with tick data is that again, it would really have to be from your broker or a broker with very similar quotes to your own to have any validity.


It depends on the EA you are using. The longer the period, the less relevancy accurate data has. The shorter the period, the more.
I use tick data, and I checked 3 brokers prices for cross comparsion, and I didn't spot any big difference. (Don't know why, but I guess MT4 using brokers tend to have similiar quotes) Although I spotted BIG difference between simulated and real time data. I got unbelivably good results with M1 data, and got a lot lot less on real tick data. Again: my EA is pretty fast. I forward tested it, and I almost get the same results on the demo.
Which is important I guess, that the data flow, you feed into your tester, be as realistically built as possible. It doesn't matter whether it went up to 1.2560 or 1.2570. Your EA needs to handle this. What matters in my opinion, how price moves. On a M1 bar with low of 1.2500 and high of 1.2550 did it move: 1.2500, 1. 2501, 1.2502, 1.2548, 1.2450, or 1.2500,1.2530, 1.2510,1.2440,1.2500,1.2550. This definetely makes difference. But I've already write my thoughts on bars being only arbitrary simplifications of priceflow...
I guess using any price sensitive variables for open/stop loss/trailing stop,.. . you need to have as accurate data as you can have.
My rule number one regarding testers: test your tester througoutly before starting any tests!
 
Hi Zap,

Thanks again for your comments. I totally agree with you - it does depend a lot on the timeframe you're using to make the trades.... it's a balancing act between accuracy and the amount of processing power you have available!

What I tend to do is trade a system in real time for a period of time and then simulation trade that same time period. If the trades match up, I know that the time period of the data that I'm using is sufficient. In my case there was no real difference between using 5min and 1min data although I can imagine that as you stated above, this does entirely depend on what trading system you're developing.

Anyway, thanks again for your comments!
Reason: