Saturday, May 18, 2013

Triangular Arbitrage with Bid Ask Prices

Is is possible to identify triangular arbitrage opportunities using bid and ask prices for a theoretical risk free trade? Using simple rules and examples it is possible to determine the proper formula for computing triangular arbitrage relationships. The three examples show how to calculate the triangular arbitrage formula for different currency pairs due to the way pairs are converted to base currency and traded via currency pairs. The results can be intuitively interpreted to determine if a real arbitrage opportunity exists, or if an opportunity exists to improve execution price by using the synthetic pair instead of the underlying pair for trade execution even when no real arbitrage opportunity exists.

Triangular Arbitrage with bid ask prices 1000 bid vs synthetic ask quotes.png (654×446)

Triangular Arbitrage with Bid Ask Quotes


2 comments:

BluePanther said...

Wow, risk-free trading? Can you create a MT4 EA that will do this automatically?

Have you got any updates on your RatRoller or SnowRoller EA?

Love the work you are doing man! Keep it up!

BluePanther

Patrick White said...

BluePanther,

In reality there is substantial execution risk when dealing with a triangular arbitrage strategy. The inefficiency you are taking advantage of is actually a mispricing or slow feed by a particular broker or more likely, one of its liquidity providers. If you are dealing on a single broker, it won't take long until your trades are labeled as "toxic flow" and your account starts seeing no fills on certain trades, and increased slippage and platform problems. Or you may simply be asked to leave. In this battle the counterparty tends to have all the advantage and in the end you will be shut down or prevented from profit making opportunity.

However, there is some opportunity with inter-broker arbitrage though you still need to fly under the radar to make this feasible. And the implementation is non-trivial. Dealing with multiple feeds in a timely manner and firing off trades / cancels to the various brokers requires a well-though out algorithm and a lot of technical expertise. I'm not 100% convinced that I could pull it off well. And in the end, you are still just attempting to catch a penny here and there and there aren't that many opportunities to make free $$$. Limited reward for substantial setup cost. I think there is a better way, namely taking the arb into account but playing various momentum strategies that revolve around the inefficiency. If you read the Triangular Arbitrage 101 article, I talk about / link to a thread on a public forum that talks about some of these hybrid ideas. If you have any others, please let me know!

Thanks for the kudos on RatRoller and SnowRoller. I unfortunately haven't had time to look at those. I've sort of moved away from grid trading more in the direction of systems that take part in single contract trading only.