On this page
The short version
- Platform timestamps come from the broker's trade server, not your computer — the same tick can show different times on different brokers.
- The forex trading day conventionally ends at 5 p.m. New York time (22:00 UTC in winter), and many brokers set their server offset so midnight server time lands on that close.
- Daily candle boundaries and swap/rollover charges are anchored to the same server-defined day boundary.
- US and European daylight-saving clocks shift on different dates, creating a few weeks each year when offsets look 'wrong'.
- Check your broker's server offset from your own charts or their symbol specification instead of assuming it.
If you have ever opened a chart at what your phone says is 9 a.m. and seen a fresh daily candle already nine hours old, you have met forex server time. Every MetaTrader and most other retail platforms run on a clock set by your broker's trade server, not by your computer and not by UTC. Understanding that one fact explains a surprising amount of platform behavior: when your daily candles close, when swap is charged, why historical bars shift, and why an Expert Advisor that worked on one broker misfires on another.
Server time is the broker's clock, not yours
In MetaTrader, "the time shown on quotes and charts" is the time formed on the broker's trade server. MetaQuotes' official MQL5 documentation is explicit about this: TimeCurrent() returns "the last known server time, time of the last quote receipt," and that value "is formed on a trade server and does not depend on the time settings on your computer." A second function, TimeTradeServer(), calculates the estimated current server time in the terminal, again distinct from TimeLocal(), your PC's clock. Even the GMT the terminal computes — TimeGMT() — is derived from your computer's local time and DST settings, not read from a reference clock.
Practically, this means the timestamps you see on candles are quoted in the broker's chosen offset from GMT/UTC. Two brokers can show different timestamps for the same tick. Neither is "wrong"; they are simply in different time zones.
Why the forex day ends at 5 p.m. New York
Forex does not close at midnight anywhere in particular — there is no single exchange bell. The convention the industry settled on is that the trading day ends when the afternoon of the last trading session winds down in New York. OANDA, for example, describes its operating week as running "from approximately 5 p.m. Sunday to 5 p.m. Friday (New York time)," explicitly noting that times shift with daylight saving. Wikipedia's summary of the market matches: continuous trading from 22:00 UTC on Sunday until 22:00 UTC on Friday.
Those two statements are the same fact in two clocks: 22:00 UTC is 5:00 p.m. in New York during winter, when the city observes standard time (UTC−5). The New York close is the anchor because it is the last major session of the global day — the moment when one "trading day" rolls into the next for interest and accounting purposes.
Where 00:00 server time comes from
Many brokers configure their MetaTrader servers so that the daily candle boundary — midnight in server time — coincides with that New York close. This is where the famous "GMT+2 in winter, GMT+3 in summer" pattern comes from: the server offset is chosen so that 00:00 on the server equals 17:00 in New York, and then the offset is moved by an hour when New York switches to daylight saving.
You can verify the arithmetic yourself. This is an illustrative calculation, not a market fact:
22:00 UTC = 17:00 New York standard time (EST, UTC−5). So a daily close at 22:00 UTC is the 5 p.m. New York close.
If a broker's server runs at UTC+2, then 00:00 server time = 22:00 UTC = 17:00 New York (EST). Daily candles close at the New York close.
If the server runs at UTC+3 while New York observes daylight time (EDT, UTC−4), then 00:00 server time = 21:00 UTC = 17:00 New York (EDT). Same alignment, one hour later in UTC.
The takeaway is not that "all brokers are GMT+2/+3" — some run UTC or other offsets. The takeaway is that the offset is a deliberate design choice made per broker, and you can read it off your own charts: watch the timestamp of your last daily bar on a Friday.
Daylight saving: two clocks that move on different weekends
Because the New York close is the anchor, brokers that align to it shift their server clock when New York shifts. But Europe shifts on different dates, which creates the annual "strange weeks" traders notice. The rules: since 1996, European Summer Time runs from the last Sunday in March to the last Sunday in October; since 2007, most of the United States and Canada observe DST from the second Sunday in March to the first Sunday in November.
The two schedules diverge twice a year. As an illustrative calculation for 2026: US DST begins on 8 March while Europe starts on 29 March — a 21-day stretch where one region has switched and the other has not. In autumn, the US ends DST on 1 November but Europe ended on 25 October — a 7-day gap. During these windows, a broker aligned to New York will be at a different offset from London or your local time than usual, which is exactly when scheduled news times, session filters and multi-broker comparisons appear to drift by an hour.
Risk note: if you hard-code "news comes out at 14:30" or "London opens at 08:00" in your local time or in server time without checking the offset that week, you will be wrong for a few weeks a year. This is not a rare edge case; it happens twice, every year.
What server time actually changes for you
Daily candles and bar boundaries. Your daily bar is defined by the server clock. If your broker closes the day at 00:00 server time, a scheduled New York morning data release lands inside the day that closes hours later; on a broker running UTC it may land in a different daily bar. Chart patterns, support/resistance drawn from daily candles, and backtests run on daily data inherit this choice. Two traders comparing "the daily chart" on different brokers may see slightly different candles — around the daily close, even different highs and lows.
Swap and rollover. A position held past the daily close is "moved to the next trading day" — the rollover — and that is when swap (the daily interest adjustment) applies. MetaTrader 5's official help describes exactly this: on OTC markets such as forex, when a position is moved to the next trading day, stop-loss and take-profit levels are preserved, and the platform supports closing the position "at the end of the trading" and re-opening it the next day "at the close price +/- the swap." In other words, the swap event is anchored to the same server-defined day boundary as your candles. A broker whose day ends at 22:00 UTC charges swap at 22:00 UTC; a different broker charges it an hour or two earlier or later. Triple-swap Wednesday conventions exist on many brokers to account for the weekend, but the exact day and multiplier are per-broker contract specifications, not platform constants — check the symbol specification rather than assuming.
Time-based code. If you write or buy Expert Advisors and indicators, the MQL5 documentation makes the trap explicit: TimeCurrent() (server time of the last quote) is what platform logic sees, while TimeGMT() and TimeLocal() come from your PC. Code that filters "trades between 08:00 and 17:00" is filtering in one of those clocks, and its meaning changes between brokers and across DST. Well-written code converts explicitly using TimeGMT() and a known server offset; naive code silently trades different hours on different servers.
How to check your broker's server time
There is no standard place to look, but there are reliable methods:
Read the timestamp of the last daily candle on a Friday and compare it with 22:00 UTC. If the last daily bar is stamped 23:00 on a Friday, your server is at UTC+1 for that moment (23:00 server = 22:00 UTC). A quick comparison against a UTC clock tells you the live offset.
Check the symbol specification. MetaTrader's Market Watch specification window shows the trading conditions each broker sets per instrument, including session and swap-related parameters. The swap rows are where brokers document their rollover conventions.
Ask or search the broker's documentation for "server time." Reputable brokers state it, including the DST behavior.
For coders, log
TimeCurrent(),TimeTradeServer()andTimeGMT()at runtime and compute the offset yourself instead of assuming it.
Limits and honest caveats
Server offsets are broker-specific. Nothing in this article means your broker is GMT+2/+3; it means many are, and you should verify yours.
The New York close is a convention, not a law. A few brokers and platforms deliberately use UTC or local-to-exchange times for non-forex instruments; equity CFDs, futures and crypto often follow different day boundaries on the same platform.
None of this affects where prices come from or what your broker earns on execution — it is a timekeeping layer. But because indicators, backtests and risk scripts all read those timestamps, a wrong assumption about the clock propagates quietly into everything downstream.
The server clock is one of those plumbing details that costs minutes to check and can save a retest, a mis-timed news trade, or a week of confused backtesting. Look at your Friday daily candle tonight and write your broker's offset into your trading notes.
Sources & further reading
Check the original source for its scope, publication date and latest terms.
- MQL5 Reference — TimeCurrenthttps://www.mql5.com/en/docs/dateandtime/timecurrent
- MQL5 Reference — TimeTradeServerhttps://www.mql5.com/en/docs/dateandtime/timetradeserver
- MQL5 Reference — TimeGMThttps://www.mql5.com/en/docs/dateandtime/timegmt
- MetaTrader 5 Help — Trading (advanced): swaps and position rolloverhttps://www.metatrader5.com/en/terminal/help/trading/trading_advanced
For education and research, not personal investment advice. Trading involves risk. Broker terms and protections depend on your country, account and contracting legal entity.



