Holding a forex position past your broker's rollover time incurs a swap — a daily credit or debit derived from the interest-rate differential between the two currencies, plus broker markup. This guide explains where swap rates come from, how to read the three MT4/MT5 swap quoting modes, why Wednesday usually charges three days at once, and how to convert a quoted swap into actual money for your position. It is educational material only, not financial advice; swap values change with central-bank rates and broker policy, and trading carries a real risk of loss.
The overnight cost of a forex position is the swap: a small daily debit (or occasionally credit) applied at rollover, and for a typical retail position it works out to a few units of the quote currency per standard lot per night — but the exact figure depends entirely on the pair, the direction, and your broker's markup. There is no universal number. The swap for holding EUR/USD long at one broker can differ meaningfully from another broker's, because each adds its own administration margin on top of the underlying market rate.
Mechanically, spot forex settles two business days after the trade (T+2). A retail position held past rollover — 5 p.m. New York time at most brokers — is not physically settled; instead it is rolled to the next value date, and the cost of that roll is the swap. The economic root is the interest-rate differential: when you are long a currency pair you are notionally long the base currency and short the quote currency, so you implicitly earn the base currency's short-term rate and pay the quote currency's. If the rate you earn exceeds the rate you pay, the raw swap is in your favour; if not, you pay. After the broker's markup is applied, it is common for both directions of a pair to be net debits.
The practical formula, once you have the broker's quoted swap rate in points, is:
swap = swap points × point size × contract size × lots × nights held (with a triple-count on the pair's designated rollover day).
Everything below unpacks the inputs: where the points come from, how brokers quote them in three incompatible units, and how to avoid the classic backtest mistake of ignoring swap entirely on strategies that hold for days or weeks.
The wholesale ingredient behind retail swap is the tom-next (tomorrow-next) rate: the price of swapping a position's value date from tomorrow to the day after, quoted in the interbank forward market. Tom-next reflects the short-term interest-rate differential between the two currencies, adjusted by forward-market supply and demand, so it moves when central banks move and drifts in between.
Your broker takes that market rate and applies a markup or administration fee before publishing the long and short swap values you see in the contract specification. This markup is why the long and short swaps on a pair never mirror each other exactly — if the raw differential were the only input, the long and short values would be near-symmetric opposites. In practice you will often see something like a modest credit one way and a larger debit the other, or debits both ways on pairs whose rates are close together. The asymmetry is the broker's revenue.
A few consequences worth internalising. First, swap values are not stable: a central-bank rate change flows through tom-next within days, so a carry cost you measured last quarter may be wrong today. Any calculator, including ours, is only as current as the swap figures you type into it — always pull today's values from your broker's symbol specification rather than from memory or a stale table. Second, direction matters as much as pair: the same instrument can be cheap to hold one way and expensive the other. Third, swap-free (Islamic) accounts do not make holding free: brokers typically replace swap with a fixed administration fee per night after a grace period, which for some pairs costs more than the swap it replaces. Comparing those two schedules is arithmetic, not marketing, and it is worth doing before choosing an account type.
Because spot forex settles T+2, the value date of a position rolled on Wednesday night moves from Friday to Monday — it must skip the weekend, when settlement does not occur. Skipping Saturday and Sunday means the roll covers three days of interest, so most brokers apply triple swap on Wednesday for FX pairs. You are not being charged extra; you are being charged for the weekend in advance, on the night whose roll spans it.
Two caveats keep this from being a clean universal rule. First, the triple day is an instrument property, not a law of nature: many non-FX CFDs (indices, energies, sometimes metals) apply their triple charge on Friday instead, because their settlement conventions differ. Second, bank holidays in either currency's settlement calendar can shift value dates and produce occasional 2× or 4× days. The only authoritative source is the broker's own specification.
On MetaTrader you can read all of this programmatically instead of guessing. In MQL5:
5
// Educational only — validate before trading; not financial advice.
void SwapInfo()
{
double swapLong = SymbolInfoDouble(_Symbol, SYMBOL_SWAP_LONG);
double swapShort = SymbolInfoDouble(_Symbol, SYMBOL_SWAP_SHORT);
long swapMode = SymbolInfoInteger(_Symbol, SYMBOL_SWAP_MODE);
long tripleDay = SymbolInfoInteger(_Symbol, SYMBOL_SWAP_ROLLOVER3DAYS);
// swapMode tells you the unit (points, money, or annual percent);
// tripleDay is the weekday on which triple swap is applied.
Comment(_Symbol, String(swapLong), String(swapShort), String(swapMode), String(tripleDay));
}SYMBOL_SWAP_MODE is the critical and most-ignored field: the same numeric swap value means completely different money depending on whether the mode is points (multiply by point size and contract size), money (already a currency amount per lot per night, in margin or profit currency), or interest (an annual percentage applied to the position's notional, divided by the year basis). An EA or calculator that assumes points when the broker quotes percent will be wrong by orders of magnitude — this is a genuine, recurring bug in shared MQL code.
Example 1 — swap quoted in points. Suppose a broker lists EUR/USD swap long as −7.2 points, where one point is 0.00001 and the contract size is 100,000. For one standard lot held one ordinary night:
swap = −7.2 × 0.00001 × 100,000 × 1 = −$7.20 (the result lands in the quote currency, USD). A 0.10-lot position pays a tenth of that, −$0.72. Held Wednesday past rollover, the same position pays 3 × −$7.20 = −$21.60. Over a 10-night hold spanning two Wednesdays, the count is 8 ordinary nights + 2 triple nights = 14 charged nights: 14 × −$7.20 = −$100.80 per lot — a full 10 pips of cost that appears nowhere in a spread-only view of the trade.
Example 2 — swap quoted in annual percent. Some brokers, common on exotics and CFDs, quote something like −2.5% per annum on the position notional. For one lot of a pair with $100,000 notional: −0.025 × 100,000 / 360 ≈ −$6.94 per night (year basis 360 or 365 per the broker's convention — check, it changes the answer by ~1.4%).
Example 3 — the direction asymmetry. If the same EUR/USD symbol lists swap short as +1.1 points, one lot short earns 1.1 × 0.00001 × 100,000 = +$1.10 per night. The gap between −7.20 and +1.10 (rather than a symmetric ±$4-ish) is the broker margin made visible.
A caution on the last example: a positive swap is not a strategy. Carry-style positions earn small nightly credits while remaining fully exposed to price moves that can erase months of accrual in hours. Historical episodes of rapid carry unwinds are well documented; nothing about a positive swap implies positive expectancy, and none of these figures are current quotes — they are arithmetic illustrations with made-up inputs.
Most backtests silently assume holding is free, and for multi-day strategies that assumption is a quiet source of inflated results. Where the leak happens depends on the platform.
TradingView does not model swap at all. The strategy tester applies commission and slippage if you configure them, but there is no rollover concept: a Pine strategy that holds positions for two weeks pays exactly nothing overnight in the tester. If your live instrument charges, say, $7 per lot per night, a 14-night average hold means roughly $100 per lot per round trip of unmodelled cost — enough to change the sign of a thin-margin system. The workaround is to estimate average nights held and fold an equivalent per-trade cost into the commission setting; crude, but far more honest than zero.
MetaTrader's strategy tester does apply swap, using the symbol's current specification — which creates the opposite trap: it back-projects today's swap rates onto years of history. A backtest spanning a period when interest-rate differentials were dramatically different (compare the near-zero-rate years with the post-2022 hiking cycles) applies costs that did not exist then, or misses costs that did. The result is directionally better than ignoring swap but still not historical truth.
The honest workflow is the same one that applies to every cost: state your assumption, then stress it. Rerun the strategy with swap at zero, at the current quoted value, and at 2–3× the current value. If the strategy's viability flips within that range, its result is a bet on rollover pricing, not on the market logic you designed — better to learn that in a tester than in a funded account. This is the general ForexCodes point in miniature: a backtest is a claim about the past under stated assumptions, never a forecast, and unstated costs are one of the most common ways that claim quietly becomes false. None of this is financial advice, and live trading carries a real risk of loss regardless of how carefully swap is modelled.
Educational only — not financial advice. Trading involves substantial risk of loss.