We’re receiving a lot of questions about arbitrage trading and we are happy to answer them. We’ve created our 1st forex related software in 2000 and our first arbitrage forex robot in 2005. All of our arbitrage robots can be divided on 2 large groups: latency arbitrage robots and classic arbitrage robots.
Latency Arbitrage Robots
Latency arbitrage robots: robots whose software compares quotes on account (slow account) with source of fast quotes (fast feed). Usually are fast feed is quotes via unthrottled FIX API or API like ITCH from exchanges.
The Financial Information eXchange (FIX) protocol is an electronic communications protocol for international real-time exchange of information related to the securities transactions and markets. With trillions of dollars traded annually on the NASDAQ alone, financial service entities are investing heavily in optimizing electronic trading and employing direct market access (DMA) to increase their speed to financial markets. Managing the delivery of trading applications and keeping latency low increasingly requires an understanding of the FIX protocol.
ITCH is a direct data-feed protocol such as TCP (Transmission Control Protocol) or UDP (User Datagram Protocol). ITCH makes it possible for subscribers to track the status of each order from the time it is first entered until the time it is either executed or canceled.
Buy signal - the price on the fast feed is higher than the price on a slow broker. Sell signal – the price on fast feed is lower than the price on the slow broker.
This approach is just an explanation of the general algorithm, but modern latency arbitrage systems can be complicated.
Why do some arbitrage robots don’t work or work for short period of time?
It is very easy to explain. But first of all, I need to explain in couple words, how FX brokers works. When you press the BUY or SELL button on your forex trading terminal (for example on MT4 platform), an order will be sent to an MT4 server first, then via bridge to liquidity provider. When liquidity provider executes an order, you will receive order confirmation with execution price. It is STP scenario (A-Book), but in a lot of cases, the broker will put your account in B-Book first and check your trading activity for couple days and then decide switch your account to A-Book or leave it in B. If you use arbitrage software and start winning, broker has a couple solutions as well: leave your account in B-Book and apply against you using special plugins (which increase execution time or send you rejects and requotes) or switch your account in A-book. Liquidity provider several solutions as well and almost the same solutions with retail brokers.
One more important thing which will help you to understand how to trade arbitrage: When you send a SELL order from your MT4 platform, liquidity providers will receive a SELL order, but when you send close SELL – liquidity provider will receive a BUY order with volume equal to your SELL order. It is a simple explanation but in real life it works for all clients. For example, If you send 2 lots SELL EURUSD, and your friend sends 1 lot BUY EURUSD liquidity provider will have 1 lot SELL EURUSD.
Another important thing: if you send a STOP order – the liquidity provider will receive a market order and it means that this order can be slipped. Slippage is when you get a different price than expected on an entry or exit from a trade.
Why did I explain this? I want you to understand what kind of arbitrage tactic will work for a long time.
If you use latency arbitrage – you will win before broker applies a plugin. The broker understands arbitrage usage because of short time trades and small, 1-2pips, profit. Some latency arbitrage robots instead of closure, open opposite order, but such an approach in my opinion and in the light described above, is a deletant approach to arbitrage trading. Usage of stop orders to control slippage also in the light described above will work before broker switch your account to A-book or apply plug-in.
What can we conclude from all this?
Conclusion 1: Standard Latency arbitrage can work for a short period of time only.
Conclusion 2: To use Latency arbitrage for long time, the software should have opportunity to hide arbitrage activity not only from broker, but from liquidity provider as well.
One technique to do this: use standard latency arbitrage together with other EAs and percent of arbitrage flow (toxic flow) should be 2-5%.
Lock Latency Arbitrage software conception: Software opens 2 opposite orders for each trading symbol (currency, CFD, Index) on 2 accounts opened under 2 different names and connected via IPs changer from 2 different IP addresses. When an arbitrage situation appears, software closes 1 order and re-opens it on another side. This approach allows the trader to use arbitrage trading for a long time. Lock latency arbitrage software can be used for different trading platforms: Lock Arbitrage Software for MT4, Lock Arbitrage Software for MT5, Lock Arbitrage Software for FIX API accounts….
IPs Changer – software allows you to connect 2+ accounts from one VPS via different IP addresses.
Classic Arbitrage Robots
Classic or hedge or 2-legs arbitrage robots: software compares quotes between 2 or more brokers among which they may not be obviously fast, though in most cases one broker gets out fast and the second one slowly.
Hedge arbitrage conception: When an arbitrage situation appears between accounts, software opens two opposite orders on both accounts and hedge profit, then the software looks for opposite arbitrage situation and closes both orders increasing profits. This kind of arbitrage technique can work for a long time like Lock Latency arbitrage.
Hegde arbitrage software can be used for different trading platforms as well.
Crypto-Currencies Arbitrage Software can also be referred to classic arbitrage, because the software compares quotes between crypto currency exchanges and use the same algorithm like classic hedge arbitrage for forex market.