Every Broker’s centerpiece: The Data Feed for (automated) Trading
… Dealing Desk / STP / ECN…what do brokers’ price feeds really look like?
There are several hundred MetaTrader brokers globally. One of the most common inquiries our customers make relates to the question of the ‘right’ or ‘best’ broker. That is an impossible question to answer, because brokers are simply too different in their trading features to provide one simple response. What we can confidently assert, however, is that the ‘right’ or ‘best’ brokers share one core characteristic: available data (and price feeds).
As we describe at great length in different places on our website, brokers’ price feeds can be so different that a trading system may work well for one broker and hardly or not at all for another.
In order to provide more transparency for all brokers, we have taken it upon ourselves to take notes on the price feeds of brokers with whom we trade (i.e. who have real cash accounts with us). In doing so, we log on a high performance server with special software every tick a broker transmits to the real cash account. In other words, we focus on each individual price, which would have triggered a calculation for an expert advisor and would have been tradable. If a tick really would have had the sufficient liquidity —i.e. if a given volume could have been placed without slippage—we cannot say for sure, as we cannot equate a tick with a trade.
Aside from the accounts we have equipped with real money and actively trade*, we also observe various accounts from brokers which interest us, or simply because clients inquire about them. For these accounts, we have opened demo accounts and log the demo data. The data feed is almost always identical with the real data the broker provides, as the demo accounts are also run over the Metaquotes server on which the broker handles his liquidity for real accounts. We have run tests on several accounts (for example: Alpari-Pro and Pepperstone) and did not find any deviation whatsoever between the demo and real data feeds.
We have closely examined the following currency pairs over the past months (some even for the last two years) and will present them in detail per broker.
# AUD/USD # CHF/JPY # EUR/AUD # EUR/CHF # EUR/GBP # EUR/JPY # EUR/USD # GBP/USD # NZD/USD # USD/CAD # USD/CHF # USD/JPY #
There are undoubtedly many more currency pairs, and even natural resources and indices, which are tradable with MetaTrader 4 and 5. But since 99% of our business is in foreign exchange trading, we have limited ourselves to the most relevant currency pairs for us.
Before continuing on to the evaluation of the data, an important note: All foreign exchange data we recorded was logged without undertaking any corrective measures or verification from the broker. The data was assembled from the perspective of a “normal” client, the way they would be collected (or could have been collected) for every trader! **
You may find a listing of all brokers who have an active real money account on the subpage for REAL ACCOUNTS . Among others, these feature an MIG-Prime account, an Alpari-Pro account, a Dukascopy account and, soon, a Varengold-Premium account…and many more.
Please note that many brokers charge a commission for trading. In addition to the spread you see here, a fee of up to 10€/lot can be added, depending on the traded volume.
A listing of all brokers whose data feed we record and analyze from Demo can be found on the subpage for DEMO ACCOUNTS .. These include, among others, an Oanda account, a Think-Forex account, an ATC-Brokers account…and many more.
The published evaluations are based on the actual spread trend during the day and on the number of ticks each week. For a better understanding, please find an explanation of the evaluation logic below.
Rules for the collection and evaluation of data
1. Data from Sundays are not included in the evaluation! Only ticks between Monday 12:00 am and the last tick on Friday are used.
2. The scaling of graphics does not include the maximum spreads. The daily rollover may include spreads greater than 20. These spreads are recorded and accounted for, but the scaling of graphs does not include every maximally existing spread. If the scaling were to be adjusted according to the maximum spread, the actual spread would hardly be visible.
3. The data is recorded and analyzed according to AS-IS, i.e. without correction or adaptation.
Graphic Type I = average spread trend of the day
1. The day is divided into 1,440 minutes (24 hours of 60 minutes each).
2. Each measured tick is assigned to one of the 1,440 minutes.
3. For each representation, the linear mean value is created for the appearing spreads on a per minute basis (see the following diagram).
4. The computation time is based on GMT.

Graphic Type II = average spread trend of the days per currency pair / detailed per broker
1. The day is divided into 1,440 minutes (24 hours of 60 minutes each).
2. Each measured tick is assigned to one of the 1,440 minutes.
3. For each representation, the linear mean value is created for the appearing spreads on a per minute basis (see the following diagram)
4. In addition, the maximal and minimal spread is measured each minute.
This graphic allows for the representation of the actual spread trend and the spread’s range of variation. In addition, one can easily deduce where brokers have established clear limits for a minimal (and sometimes also) for a maximal spread.
We might add an additional evaluation, which highlights the normal distribution of price feeds (insofar as there is a normal distribution), in the coming weeks.

Graphic Type III = Tick count per broker per week
1. For each currency pair, the number of ticks the broker transmits is counted.
Each expert advisor has a start() function, which is initiated by the transmitted tick of a broker. An expert advisor will only engage in a calculation when a broker makes a tick available. Of course it is possible to circumvent this setting, but in 99% of all cases there is no point in doing this, as without a new or different price, the market will remain the same and any calculation will lead to the same results (unless time plays a pivotal role). For the functioning and the success of an expert advisor, particularly for scalping systems, the tick count is thus an elementary fact.
In addition, we have discovered in our investigations in the past months that there is a demonstrable interrelation between tick counts and spreads. Typically, the spread improves with an increasing tick count. Caution is nevertheless appropriate, since a dealing desk could easily generate several relatively similar price feeds. Moreover, the tick count is certainly dependent on the number of clients associated with a broker. The more clients trade, the more the price will change, for example when an Ask is completely bought out and a new Ask is offered at a higher tick. In this sense, FxPro is an anomaly in these graphs, as FxPro is a dealing desk (although, based on our experiences of trading with real money for more than two years, it is a very good dealing desk).

P.S. If you have read this far, we would like to reward you with a highlight: based on the accumulated knowledge of the past years and many very good contacts in the national and international foreign exchange field, ForexInnovation is currently assessing the feasibility of its own broker. The prospects are very promising :-) , of course with the ultimate goal of topping all brokers we know!
* Not all real money accounts have been opened by ForexInnovation. Some accounts belong to business partners who conduct their own trading on our servers with our software. The important fact in this regard is that these are real money accounts, on which trading occurs daily. NO DEMO!
** The only exception is the MIG-CORE data feed. This data feed constitutes the direct connection of the MIG bank to the Internet banking market. This is not a data feed on which clients are able to trade, but it is rather a direct routing of Internet bank prices. Since we have a partnership with the MIG bank and have agreed to special conditions for our clients, this data feed was made available to us.
We take no responsibility for the accuracy of the data. We collect the data on our servers and analyze it in standardized form with specific programming tools. We do not correct bad ticks and do not verify if the data stream is correct. We utilize the data in the same way we receive it—unfiltered and uncorrected, from the perspective of a typical client.



