
Cointegration-based pairs trading in forex is a market-neutral style that trades the relationship between two currency pairs, not a single directional bet on one chart. You go long one pair and short the other when their combined spread stretches too far from its historical equilibrium—and you unwind when that spread mean-reverts.
The edge is not “EURUSD looks bullish.” The edge is: these two series move together over time, their spread is statistically mean-reverting, and the current dislocation is large enough to pay after costs if it snaps back.
This guide covers cointegration versus correlation, how to estimate a hedge ratio, how to build and trade a z-score of the spread, which forex pairs usually make sense, what fails in live markets, and how to fit the approach inside a funded account’s risk rules.
What Pairs Trading Means in Forex
Classic equity pairs trading buys the undervalued stock and shorts the overvalued stock in the same sector. In forex, the same idea becomes:
- Select two related instruments (for example EURUSD and GBPUSD, or AUDUSD and NZDUSD).
- Estimate how many units of B offset one unit of A (the hedge ratio).
- Form a spread: ( S_t = A_t - \beta B_t ) (or log prices).
- When ( S_t ) is unusually high or low versus its recent distribution, trade the expectation of reversion.
- Exit when the spread returns toward its mean, or when a stop says the relationship broke.
You can still lose money if the relationship fails, if costs eat the edge, or if you size like a directional gambler. Cointegration does not remove risk. It changes which risk you are paid to take: relative-value risk instead of naked trend risk.
Correlation Is Not Cointegration
This is the mistake that ruins most “pairs” blogs and most failed live books.
Correlation measures how two returns move together over a window. EURUSD and GBPUSD can be highly correlated this month because both sold off against the dollar. Correlation can flip. Two series can be correlated and still wander arbitrarily far apart in level.
Cointegration is about levels (or log levels). Two non-stationary price series are cointegrated if a linear combination of them is stationary—meaning the spread has a stable mean and a tendency to revert after shocks.
| Correlation | Cointegration | |
|---|---|---|
| Looks at | Returns / co-movement | Levels / long-run equilibrium |
| Can be high while spread drifts | Yes | No (by definition the spread is mean-reverting) |
| Good enough for pairs trading? | No | Necessary foundation |
| Breaks when | Regime / dollar factor changes | Structural break, policy shock, pair “divorces” |
You can screen with correlation, but you trade only after cointegration (or an equivalent mean-reverting spread test) supports the book.
Why Cointegration Fits Forex
Currency pairs are linked through:
- Shared dollar legs (EURUSD and GBPUSD both vs USD)
- Regional blocs (AUDUSD and NZDUSD; EURUSD and EURGBP dynamics)
- Interest-rate and risk-sentiment regimes
- Cross-rate identities (triangular relationships)
That does not mean every related pair is cointegrated forever. Brexit, Swiss floor events, sudden USD liquidity squeezes, and central-bank surprises can break historical equilibria. Cointegration-based pairs trading in forex is a conditional edge: valid while the relationship holds, dangerous when it does not.
The Core Math (Without Turning This Into a Thesis)
1. Prices are usually non-stationary
Spot FX levels behave more like random walks than like a fixed mean. You cannot naively mean-revert EURUSD alone and call it statistical arbitrage.
2. A cointegrating combination can be stationary
If ( A_t ) and ( B_t ) are I(1) (integrated of order one) and there exists ( \beta ) such that:
[ S_t = A_t - \beta B_t ]
is I(0) (stationary), then A and B are cointegrated with hedge ratio ( \beta ).
3. Engle–Granger (practical two-step)
- Regress ( A_t ) on ( B_t ) (or log A on log B).
- Take residuals ( \hat{e}_t = A_t - \hat{\beta} B_t - \hat{\alpha} ).
- Test whether ( \hat{e}_t ) is stationary (ADF test on residuals, with cointegration critical values—not naive ADF cutoffs).
If residuals look stationary, you have evidence of cointegration over that sample.
4. Johansen test (for robustness / more than two series)
Johansen works in a VAR framework and can detect multiple cointegrating vectors. For most discretionary or semi-systematic forex pair traders, Engle–Granger on a single candidate pair is the starting point; Johansen is the confirmation layer when you have the toolchain.
5. Half-life of mean reversion
Once the spread is mean-reverting, estimate how fast it decays (often via an AR(1) on the demeaned spread).
- Very short half-life → more trades, more cost sensitivity
- Very long half-life → capital tied up; funded daily limits can hurt before reversion arrives
If half-life is weeks and your account cannot hold through that path volatility, the pair is academically cointegrated and practically untradable for you.
Building the Spread and Hedge Ratio
Price spread vs log spread
- Price spread: ( S = P_A - \beta P_B )
- Log spread: ( S = \ln P_A - \beta \ln P_B )
Logs often behave better for multiplicative FX moves. Be consistent in backtest and live.
What ( \beta ) means in practice
If ( \beta = 1.2 ), a long-spread trade that buys 1.0 unit of A typically sells 1.2 units of B (scaled by contract value / pip value so dollar risk matches the regression). Pip values differ across pairs. Always convert to notional or dollar-neutral risk, not “1 lot vs 1 lot” unless the pairs and ( \beta ) truly justify it.
Rolling vs static hedge ratio
- Static ( \beta ) (fit on 1–2 years, refresh quarterly): simple, can go stale
- Rolling ( \beta ) (e.g. 60–120 trading days): adapts, can overfit noise
A common professional compromise: estimate on a long window for cointegration validity, update ( \beta ) slowly, and trade z-scores on a shorter lookback.
From Spread to Trade: The Z-Score
Demean and standardize the spread:
[ z_t = \frac{S_t - \mu_S}{\sigma_S} ]
where ( \mu_S ) and ( \sigma_S ) are rolling mean and standard deviation of ( S ).
Example rule set (teaching template, not a holy grail):
| Signal | Action |
|---|---|
| ( z > +2 ) | Short the spread: short A, long ( \beta ) B |
| ( z < -2 ) | Long the spread: long A, short ( \beta ) B |
| ( | z |
| ( | z |
Refine with:
- Minimum holding time to avoid noise
- No entry in the last minutes into major red-folder events unless that is your edge
- Cointegration re-check on a schedule; disable the pair if the test fails
Which Forex Pairs Are Common Candidates?
Candidates are pairs that usually share a driver:
| Basket | Examples | Why traders look here |
|---|---|---|
| Europe vs USD | EURUSD–GBPUSD | Shared dollar + EU/UK rate narratives |
| Commodity FX | AUDUSD–NZDUSD | Risk and commodity sentiment |
| Safe-haven crosses | USDCHF–USDJPY (careful) | Risk regimes; breaks in stress |
| Cross consistency | EURGBP vs EURUSD/GBPUSD implied | Identity links; still needs costs/reality check |
Rules of thumb for selection
- Economic link you can explain in one sentence.
- Cointegration significant on your sample.
- Half-life compatible with your holding style.
- Spread volatility large enough vs spreads/commissions.
- Liquidity in both legs during your session.
Avoid random “high correlation this week” couples with no story. That is correlation shopping, not cointegration-based pairs trading in forex.
Worked Teaching Example (EURUSD vs GBPUSD)
This is a sketch of the workflow, not a live signal.
- Download daily closes for EURUSD and GBPUSD for 2–3 years.
- Regress log(EURUSD) on log(GBPUSD); suppose ( \hat{\beta} = 0.85 ).
- Residual spread ( S = \ln(EUR) - 0.85\ln(GBP) ) passes a cointegration residual test on the sample.
- Half-life estimate ≈ 8 trading days.
- Compute 60-day rolling z of ( S ).
- At ( z = +2.2 ): short EURUSD, long 0.85-risk-equivalent GBPUSD.
- Target exit near ( z = 0 ); stop if ( z ) expands to +3.5 or if a weekly cointegration refresh fails.
PnL comes from the spread, not from guessing the next NFP print. Both legs can lose directionally on a USD spike while the spread trade still works—or both can “look fine” while the spread blows out against you.
Execution Details That Decide Live Results
Dollar neutrality
Match risk using pip value × lot × stop distance on each leg so that a 1σ move in the residual maps to a known dollar variance. Amateur books use 1 lot vs 1 lot and accidentally run a sneaky USD directional book.
Costs
Two spreads, two commissions, possible swaps on both legs. Mean-reversion edges are often small. If average capture per round trip is 0.4R before costs and costs are 0.25R, you do not have a business.
Timing
Enter as a package. Legging in—filling one side and “waiting” on the other—turns pairs trading into accidental speculation.
Session
Trade when both legs are liquid. Asian hours can distort crosses and widen spreads enough to fake z-score extremes.
News
Cointegration assumes a stable equilibrium. FOMC, ECB, BoE, and CPI can temporarily shatter it. Either flatten into the event or size as if the stop will be tested.
Risks and Failure Modes
- Structural break — policy shock ends the cointegrating relationship.
- Overfitting — pair chosen because it worked on one bull-dollar year.
- Lookahead bias — using full-sample ( \beta ) in a backtest as if you knew it on day one.
- Ignoring stationarity of the trading residual — trading a drifting residual with z-scores is trend-fighting in disguise.
- Correlation masquerading as cointegration — high r, non-stationary spread.
- Swap and rollover bleed on multi-day half-lives.
- Funded-account path risk — spread can go further against you before reverting; daily loss limits do not care about your ADF p-value.
When cointegration fails, the correct trade is flat—not “add to the spread.”
Step-by-Step Process You Can Repeat
- List economically linked pair candidates.
- Clean data (consistent timestamps, adjust for missing bars).
- Test cointegration (Engle–Granger; optional Johansen).
- Estimate ( \beta ) and build spread (prefer logs).
- Estimate half-life; discard pairs that do not fit your holding capacity.
- Define z-score lookback, entry, exit, abort thresholds.
- Convert ( \beta ) into lot sizes via pip value.
- Backtest with costs, swaps, and realistic fills; walk-forward validate.
- Paper trade execution as a two-leg package.
- Go live small; re-test cointegration on a fixed calendar; kill switches ready.
Cointegration-Based Pairs Trading on a FundedFirm Account
Pairs trading can fit prop rules if you treat both legs as one idea.
Position logic: Long EURUSD and short GBPUSD is not the same as hedging one symbol long and short. FundedFirm’s conflicted-bias rules target opposite positions on the same instrument. Cross-pair relative value is a different structure—still confirm the current Trading Rules tab for your account.
Risk logic that matters
| Concern | What to do |
|---|---|
| Daily loss | Size the combined two-leg book so a adverse z move to your abort level ≤ your chosen fraction of daily max loss |
| Overall loss | Cap portfolio heat across all open pairs |
| Instant Daily open-loss caps | Wide multi-day half-life pairs may violate tight floating-loss limits—choose faster pairs or smaller size |
| Lot consistency / clustering | Do not split one pair idea into many near-identical tickets to game metrics |
| News | Decide pre-event: hold with reduced size or flat |
| Correlation stacking | Running EURUSD–GBPUSD and AUDUSD–NZDUSD is two ideas only if residuals are not the same risk factor in disguise |
For challenge and Instant accounts, floating equity counts. A cointegrated spread that is “correct” but −2.5% on open can still breach a 3% daily rule. Your stop must be a book-level stop in account currency, not hope that mean reversion arrives before the rule does.
Restricted Regions:
FundedFirm LTD. does not provide services for citizens/residents of the USA, Cuba, Iraq, Myanmar, North Korea, Sudan, Iran, Russia, UAE. The services of FundedFirm LTD. are not intended for distribution to, or use by, any person in any country or jurisdiction where such distribution or use would be contrary to local law or regulation.
Common Mistakes
- Trading correlated pairs with no cointegration test
- Using 1 lot vs 1 lot ignoring pip value and ( \beta )
- Entering every mild z-score wiggle
- No abort when z explodes
- Fitting ( \beta ) on the same window you use to “prove” profits
- Holding through regime breaks because “it always comes back”
- Running pairs size like a single-pair momentum trade
Frequently Asked Questions
What is cointegration-based pairs trading in forex?
It is trading two FX instruments against each other based on a statistically mean-reverting spread formed with a hedge ratio, typically justified by a cointegration relationship rather than by simple correlation.
Is correlation enough?
No. Correlation can be high while the spread drifts. Cointegration addresses the equilibrium of the spread.
How many pairs should I trade?
Start with one validated pair. Add only when each pair has its own tested parameters and the combined heat fits your daily loss limit.
Can this work on M15?
Intraday cointegration is noisier and more cost-sensitive. Many practitioners prefer H1/H4/D1 for stability, then execute on a lower timeframe without changing the hedge logic.
Does pairs trading remove drawdowns?
No. It changes the source of drawdowns. Relationship breaks can be violent.
Final Thoughts
Cointegration-based pairs trading in forex is relative-value trading with a statistical backbone: find linked pairs, prove the spread mean-reverts, size both legs through a real hedge ratio, enter on extreme z-scores, and exit on reversion—or abort when the relationship fails.
The traders who last are not the ones with the fanciest Johansen printout. They are the ones who respect costs, dollar-neutralize ( \beta ), schedule cointegration refresh, and size the combined book for hard account limits. Do that, and pairs trading becomes a process. Skip that, and it becomes two correlated losses with extra steps.
Educational content only. Trading leveraged markets involves a substantial risk of loss. Nothing here is investment advice. FundedFirm programs use simulated evaluations; payouts depend on program rules. Confirm current Instant/challenge terms on fundedfirm.com before you trade.









