Cambodia — MetaTrader 4 (MT4) — the First Launch
A freshly installed MetaTrader 4 is mostly waiting. The program arrives without a single bar of price history, and everything a chart needs is pulled from the server afterwards, symbol by symbol and timeframe by timeframe.
Open Exness Account →Nothing is broken about a MetaTrader 4 terminal that shows blank charts for the first few minutes. A new installation ships with the program and no price history at all: once the account connects, quotes start arriving immediately, while the bars behind them are downloaded on demand, one symbol and one timeframe at a time. The first minutes therefore look worse than they are - the window is busy rather than faulty - and waiting is told apart from a refusal by the connection corner, not by the empty chart.
Measured order execution — Standard
Once the history has finished arriving and an order is actually sent, the waiting is over and the numbers change unit — fill time in milliseconds, slippage and rejects by order size, measured on the broker’s own MT5 feed:
| Instrument | Order size | Avg fill | Avg slippage | Fails |
|---|---|---|---|---|
| EURUSDm | 0.01 lot | 151 ms | -0.333 pts | 0 |
| EURUSDm | 0.1 lot | 151 ms | -0.333 pts | 0 |
| EURUSDm | 1.0 lot | 146 ms | -0.333 pts | 0 |
| GBPUSDm | 0.01 lot | 141 ms | 0.667 pts | 0 |
| GBPUSDm | 0.1 lot | 130 ms | 0.0 pts | 0 |
| GBPUSDm | 1.0 lot | 135 ms | 0.333 pts | 0 |
| XAUUSDm | 0.01 lot | 141 ms | 0.0 pts | 0 |
| XAUUSDm | 0.1 lot | 151 ms | 80.0 pts | 0 |
| XAUUSDm | 1.0 lot | 130 ms | -72.333 pts | 0 |
Small sample (a few round-trips per size); indicative. The same pricing engine feeds every program listed above, which is why they differ in what they download and not in what they quote.
What the first minutes after a MetaTrader 4 install are spent on
- The installer carries the program and nothing else: no quotes, no bars, no chart that can draw itself before the terminal has asked the server for data.
- Quotes come back first. Bid and ask lines start moving in Market Watch within seconds of a successful connection, and that movement is the earliest proof the login went through.
- History comes second, and it comes per chart: opening one symbol on one timeframe downloads that symbol on that timeframe, not the whole instrument list.
- Scrolling left is a request rather than a search - dragging the chart backwards asks the server for older bars, and the blank area fills in behind the cursor.
- Indicators are last in the queue because they are arithmetic on bars that have not arrived yet; a line that starts halfway across the chart is still growing leftwards.
- Switching a chart from one timeframe to another starts a new download for that timeframe, even though the symbol is already open.
- The connection corner at the bottom right counts traffic while data is moving, and that counter is the difference between a busy terminal and a stopped one.
- The second launch is quick: downloaded bars are kept in the terminal's own files on the device, so the same symbol and timeframe opens without another wait.
Four programs, one account, four separate downloads
| Platform | Pricing model | Suited to | Devices |
|---|---|---|---|
| MetaTrader 5 | Spread (+ commission on Raw/Zero) | Multi-asset traders who want the full toolkit | Windows, Mac, Web, iOS, Android |
| MetaTrader 4 | Spread (+ commission on Raw/Zero) | Forex traders who want the classic platform | Windows, Mac, Web, iOS, Android |
| Exness Terminal | Spread (+ commission on Raw/Zero) | Browser trading with no download | Any modern web browser |
| Exness Trade app | Spread (+ commission on Raw/Zero) | Managing trades and automatic withdrawals on the go | iOS, Android |
Processing times may vary depending on the chosen payment method.
Every program in this table reaches the same account, and every one of them keeps its own copy of the history on its own device: a chart filled in the browser terminal does nothing for the desktop one, and the wait described above starts again wherever the account is opened next.
Get started
The program itself is downloaded from the Personal Area once you open an account, or try it first on a free demo.
Open Exness Account →The order in which data comes back
Three things arrive at three different speeds, and knowing the order removes most of the alarm. The connection itself is first and takes seconds. Live quotes are second: Market Watch starts ticking almost immediately, because a quote is a few bytes and the server sends it as it happens. History is third and by far the slowest, because a year of one-minute bars is a large file and the server only sends the part a chart has actually asked for.
That is why a terminal can look contradictory in minute two: prices are visibly moving in the quote list while the chart next to them is still empty. The two panels are fed by different requests. The chart is waiting for a block of past bars; the quote list is already living in the present.
Indicators sit at the end of the queue by arithmetic, not by priority. A moving average needs a run of finished bars before it has anything to average, so on a fresh chart it appears late and then extends leftwards as older bars land. An indicator that draws only on the right-hand third of the screen has not failed - it has run out of history, and the history is still coming.
Waiting and refusal do not look the same
A waiting terminal is loud in one specific place: the connection corner at the bottom right shows a live traffic counter, and the numbers keep climbing while data moves. A refused one is silent there. That single indicator answers the question that an empty chart cannot, and it answers it in a second.
The Journal tab tells the same story in words. A wait writes nothing and simply continues; a refusal writes one line and stops - a rejected login, a server that was not reachable, an account number typed into the wrong field. A refusal repeats itself identically on every retry, while a wait is different every time you look, because more of the file has arrived.
The practical rule is to let the first minutes run. Restarting the terminal during a download is the one action that reliably makes the wait longer, because the request starts again from the beginning. If the account itself is the problem rather than the download, the account access page covers what the rejection messages mean.
Why the second launch feels like a different program
Downloaded bars are written to disk inside the terminal's own folders and stay there. The next time the same symbol is opened on the same timeframe, the chart is drawn from those files first and only the newest bars are requested, which is why day two takes seconds where day one took minutes.
The cache is per symbol and per timeframe, so the wait returns in small pieces whenever something new is opened: a new instrument, a timeframe never looked at before, or a chart that is scrolled further back than anyone has scrolled it. Each of those is a fresh request, and each is short.
The cache is also local. Reinstalling the terminal, moving to another machine or opening the same account in the browser terminal starts the download over, because history is stored by the program on the device and not by the account.
What to do during the first minutes instead of restarting
- Look at the connection corner at the bottom right before looking at the chart: a climbing traffic counter means the download is running.
- Check that Market Watch is ticking - moving quotes prove the connection and the account are fine even while every chart is still blank.
- Open one chart, not ten. Each open chart is a separate request, and ten of them share the same line.
- Leave the timeframe alone until the first one has filled; every switch starts another download for the new timeframe.
- Scroll back deliberately if older bars are needed, then wait - the blank area is a request that has been sent, not a gap in the data.
- Add indicators after the bars are there, so the line is calculated once instead of being redrawn each time history extends.
- Read the Journal tab only if nothing has moved for several minutes: a wait writes nothing, a refusal writes one line and repeats it.
A terminal that is downloading recovers on its own. The only step that lengthens the wait is closing the program in the middle of it.
What an empty chart is telling you
| What the chart looks like | Waiting or refused | What has to happen next |
|---|---|---|
| Blank chart, quotes ticking in Market Watch | Waiting | Nothing - the bars for this symbol and timeframe are on their way |
| Bars on the right, empty space on the left | Waiting | Scroll back once and let the older block arrive, or leave it and it stays as it is |
| Indicator line starting mid-screen | Waiting | More history: the line extends leftwards by itself as bars land |
| Blank chart, quotes frozen, traffic counter still | Refused | Read the one line in the Journal tab - the connection or the account, not the download |
| Chart fills, then goes blank on a timeframe change | Waiting | The new timeframe is its own download, even for a symbol already open |
| Everything fills instantly on a later launch | Neither | The bars are already on disk; only the newest ones are being requested |
Only one row in this table needs a decision. The rest are answered by waiting.