Identifying Arbitrage Opportunities with Graphs
gist.neo4j.org
gist.neo4j.org
Also doesn't take into account that in FX specifically, arbitraging is heavily frowned upon and if you are caught you are likely to have your account closed down.
The reasons for both of the above is that unlike for commodities/equity/futures/etc which are traded on a market, FX is more like a "gentleman's wild west" ie no defined market rules, but a lot of unofficial gentlemans agreements in place about what you can and can't do.
Various exchanges have tried to offer a standardised FX product and they all have the same issue - because a transaction on an exchange doesn't allow "last look" provision and the market makers have to honor the transaction, once an arbitrager infiltrates the market the market makers are basically at the mercy of the exchange (and all the latencies and rules within) and are forced to widen their spreads to the point that it no longer an attractive marketplace for all other market takers.
Having said that, arbitragers still do exist in FX. The most (in)famous one in Japan is a guy "Arb-san" who was making a motza in the countryside in Gifu. He had a great blog where he uploaded photos of his cars and piles of cash and trading rig, and commentary of how he was sticking it to the dumb banks. Unfortunately I can't find this blog anymore, but I did manage to find a profile of someone with the same name online that has some cars that I recognise from the that blog:
A bit of history how the messaging protocol works might make things clearer.
In the old days a trade would take place over the phone as follows:
You: "I'd like to buy USDJPY, $1 million worth please" Market Maker or broker (MM): "Ok you can get $1 million dollars worth for 123"
At this point there was a gentleman's agreement you would respond within 4 seconds whether you want that price or not (as the market may move)
You: "Mine, I'll take it"
Here you have completed your side of the contract and cannot back out. You just need the MM to confirm that they can still get your USDJPY 1 million 123 (this was traditionally confirmed with a trader sitting nearby who could see all the prices and volumes being published in the market and could give a price at which they could hedge the entire volume and still make a profit. These days traders still perform this role to a small extent but generally the broker would read a price off a screen themselves).
If they can, MM: "It's yours, USDJPY 1 million at 123" and the transaction (contract) is confirmed good. The position is transferred to you, and the trader who provided the original price hedges the risk and gets out of the position, flattening his trading book.
If the market has since moved and the trade is no longer profitable, MM: "I'm sorry the price has changed, you can now buy at 123.1" and you jump back up to the previous
Ok, so all this has been upgraded with technology over the years, specifically messaging is now done via the FIX protocol (same as is used for other asset classes). But the basic flow is still the same:
You: Request price at a quantity MM: provides price You: decide whether to take that price MM: confirms that the price is still good, then sends you confirmation the trade was good (and hedges the trade), or otherwise rejects the trade.
The issue arbitraging causes is that if the prices in the market move and those moves are known to the arbitrageur but not to the market maker then the market maker gets into a position where they accept and confirm the trade, but can't hedge out at the price they thought they could, and so lose money on the trade. A few of these trades and the losses start to build up, and if it keeps happening with a certain client (remember, no anonymous exchanges here) then it's easy to punish that client (show them worse prices, cut them off completely, etc). If an arbitrageur is hiding behind a third party then the market maker might have enough clout to punish the entire third party (in which case it would be in the third party's interest to seek out the arbitrageur and punish them themselves).
/s
2) There is more to arbitrage than Forex markets
Seems somewhat unfeasible for an individual investor.
Only benefit to being a hedge-fund is you have lots of money to play with, which you'll need because the profits in arbitrage are very thin. You need likely 20K+, good spreads, fast execution, and an automated strategy to consider it worth your time.