I'm looking to fetch
values of macro- economic announcement data (e.g. interest rate announcements, unemployment figures, consumer price index figures etc.) as soon as/ as near to the time the figures are released from the original source to be used within an MQL4
algorithm written on metatrader4
.
At the moment I'm fetching
the latest value
from Quandl
which provides a csv
API
so that the value
can be fetched
within an MQL4
script
. The issue here lies in that Quandl
doesn't update latest values
as soon as the sources release them, which is a factor that is very important for my algorithm.
So:
Q. Which sources allow you to fetch real- time LATEST values upon release, to be used within an algorithm?
There doesn't seem to be any documentation on the source websites such as Bureau of Labor Statistics [US], Bank of England [UK] etc. regarding fetching
released data values, yet I see online FOREX market calendar websites retrieving latest values
sometimes within the second the value
is announced- so they must be fetching
data from the source
?
Examples of the sort of latest values
to be fetched
:
[US] Non- Farm Payroll - source: Bureau of Labor Statistics
[GB] Interest Rate Announcement - source: Bank of England
[EU] Unemployment Rate - source: Eurostat
To summarise:
which sources can I use to fetch a single real- time latest value
of an economic announcement as soon as its released? (I understand latency will mean that it won't be fetched immediately)
can be fetched using MQL4
To get "near real-time", you need to be subscribed to feed services like Bloomberg. But they are expensive. They provide an WebAPI and wrapper interface. There are other online services too, but again, they can be expensive.
Alternative way is for you to "data-scrap" them off those "near real-time" sources (note: gray-area legality).
This method is possible, I've done it. I managed to get it down to ~2sec (near real-time), and am currently using it in one of my MT4 EA project ( TriskM ): https://www.facebook.com/TrackRiskM/photos/a.800008416769352.1073741828.781013552002172/800008486769345
Basically, in involve 2 parts:
A server application that I host in the cloud. This application's job is to go out and scrape the data, and format it properly for easy downstream consumption.
At the MT4 application (EA) level, you can make HTTP request to the cloud host and request for the info.