Skip to content
All library documents

Sourcing Real-Time Forex Tick Data and Comparing Feeds

Article Quant Q&A · Author: amin msh

Summary

The discussion addresses access to live tick by tick foreign exchange prices for charting and analysis. It distinguishes executable quotes from a single liquidity provider, bundled executable liquidity available through an electronic communications network, and indicative quotes distributed by information services. It also suggests that broker streaming APIs can supply live bid and ask observations for users with accounts, while some providers offer data through other products.

A central caveat is that prices and ticks can differ across brokers or liquidity sources, so a feed is not a universal record of one market price. The material provides several source categories and an example of capturing a broker stream, but does not assess licensing, historical coverage, latency, completeness, or suitability for backtesting. Its practical lesson is to choose data based on whether the task needs executable or indicative quotes and to account for source specific pricing when interpreting results.

Key ideas

  • Forex tick data can come from individual liquidity providers, ECNs, information networks, or broker APIs.
  • Executable quotes and indicative quotes represent different kinds of market data.
  • Broker feeds can differ in observed prices and ticks, so results may depend on the chosen source.
  • The discussion does not establish that a free real time feed is suitable for historical research or execution analysis.

Tags

Full text
# Real-time tick data source


# Real-time tick data source












I am looking for a free real time tick by tick data for training and analyzing and plotting forex charts, but I am searching a lot and I couldn't find any good data feed provider.

Why there is no support or any solution for this problem? Is it costly for companies to provide?

Is it possible to me to gain my needed data directly from the markets?

After a lot of searching I find out maybe it's better to gain my needed data directly from brokers for example sniff the websocket on google chrome (some binary options brokers use websocket for their web based platforms ) and export that data using javascript, or I decided to write some mql code for metatrader to export tick data and use in other place.

The other problem that I am facing is that if use tick data for example from company 'A' it have some differences in ticks and prices in other company 'B' and can make some problems.

Can someone show me a solution or a way or a website that can help me?

Thank you all.

## Answer by hroptatyr (score 0, accepted)

https://quant.stackexchange.com/a/53924

> Is it possible to me to gain my needed data directly from the markets?

Yes, and no. If you want executable quotes from one liquidity provider, talk to them (eg. JPFX, Saxo FX, etc.).

If you want bundled executable liquidity, sign up on an ECN (eg. Euronext FX (formerly Fastmatch), Currenex, etc.)

For indicative quotes use an information network, both The Terminal and Eikon provide APIs.

## Answer by Jorisdrees (score 0)

https://quant.stackexchange.com/a/53931

Try AlphaVantage they are good https://www.alphavantage.co/

## Answer by babelproofreader (score 0)

https://quant.stackexchange.com/a/53932

> After a lot of searching I find out maybe it's better to gain my needed data directly from brokers

and

> Can someone show me a solution or a way

Here is a one line command line/terminal script to directly download streaming tick data from Oanda, in this case for the EUR_USD pair.

```
stdbuf -oL -eL curl -s -H "Content-Type: application/json" -H "Authorization: Bearer XXX..." "https://stream-fxtrade.oanda.com/v3/accounts/XXX-XXX-XXXXXX-XXX/pricing/stream?instruments=EUR_USD" | jq --raw-output --unbuffered '[.time, .bids[0].price, .asks[0].price] | @csv' | sed -u 's/["Z]//g' | sed -u 's/[-T:]/,/g' >> ~/path/to/append/to/output
```

This will directly append to a file the timestamp and bid and ask prices, i.e.

```
2020,05,07,05,57,12.280265922,1.07898,1.07908
```

You can change the sed editing if you'd prefer a slightly different format, i.e. to

```
2020-05-07T05:57:12.280265922Z,1.07898,1.07908
```

or whatever.

You'll need both Curl and JQ installed on you system (both are FOSS) and stdbuf and the sed editor are a basic on Unix/Linux systems. On Windows, I have no ideas how you might do this, although the general approach is probably similar.

Of course you'll need an account with Oanda to download from, but the actual data download will be free and real time. Change the API call and this may very well work with any broker that offers streaming prices through an API.

Further details on a recent blog post of mine.

## Answer by pintadelai (score -1)

https://quant.stackexchange.com/a/47446

Perhaps the following free software may serve you well, provided by courtesy of StrategyQuant. Even though it has not got the whole stock Universe at least it might get you started!

Quant Data Manager - Strategy Quant

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.