Skip to content
All library documents

Triangular Forex Arbitrage: Pricing, Execution, and Practical Constraints

Article MQL5 articles

Summary

This article introduces triangular arbitrage using three related currency pairs. It derives the no-arbitrage relationship among EUR/USD, GBP/USD, and EUR/GBP, then compares executable bid and ask prices to identify when one route through the triangle is cheaper than another. In principle, buying one side and selling the equivalent exposure through the other two pairs can capture a pricing discrepancy. The article also describes an expert advisor that forms currency-pair triangles, tracks opening and closing states, logs activity, and checks whether all legs have completed.

The discussion emphasizes that simultaneous opportunities are uncommon and that holding an incomplete triangle leaves residual market exposure. Exact neutrality is difficult because trade volumes must be rounded to allowed lot increments. The implementation accounts for costs such as spreads, commissions, and slippage, as well as symbol volume limits and partial execution. It notes that testing requires the relevant currency pairs, and does not provide performance results establishing profitability. Broker execution, latency, costs, and incomplete fills constrain practical arbitrage.

Key ideas

  • Triangular arbitrage compares the direct quote for a currency pair with its implied value through two other pairs.
  • Executable bid and ask prices determine whether a discrepancy remains after choosing buy and sell directions.
  • An arbitrage position may retain residual market exposure when lot sizes cannot be matched precisely.
  • A trading system must handle partial fills, position tracking, costs, volume limits, and recovery after restart.
  • The article describes implementation mechanics but provides no evidence of realized profitability.

Tags

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.