A tough arbitration - is there life on Mars? - page 9

 

for clarity, we need to write a simple indicator, which would show on one graph in the form of horizontal coloured Aska lines and Bids of preset pairs in its settings and their synthetics (for example, on the previously mentioned Euribucks and 2 Yen)...


and you will see everything at once and clearly !

 

Bummer... Opportunities come up often enough but my API has no time to log in even though I'm sitting at 8ms ping to the site

I should probably put the API robot directly on the pad...

That would be a profit of 2 pips - the cost of about 1 pip on three pairs that is 0.1 lot can earn one quid

The demo runtime is around 16 ms(GetTickCount), or at least that's how it looks for 1 order (this already takes into account the traffic)

... I will try to parallelize the orders, i.e., asynchronously send them may win something

And it's only a few minutes ....

 
Does it make sense to try to catch an arbitrage situation with the minimum possible slippage and ping in microseconds ?! Of course this is the best option BUT... I think somebody has done it for us for sure ( those who pay thousands and tens of thousands monthly for crossconnect on optics ...) and almost certainly took away maximum available liquidity at the moment of arbitrage situation ... But then again "BUT" ... Positions are "locked" - i.e. opened in a multicurrency hedge! So they can hang there as long as they want without increasing the drawdown due to the amount of their spread at opening ... and will surely stay there until a reversal situation ( when ask and bid becomes inverse and the total position will close in the black even taking into account the slippage, swaps, commissions and other fees ... ! ! )
 
SLAWIK:
Does it make sense to try to catch an arbitrage situation with the minimum possible slippage and ping in microseconds ?! Of course this is the best option BUT... I think somebody has done it for us for sure ( those who pay thousands and tens of thousands monthly for crossconnect on optics ...) and almost certainly took away maximum available liquidity at the moment of arbitrage situation ... But then again "BUT" ... Positions are "locked" - i.e. opened in a multicurrency hedge! So they can hang there as long as they want without increasing the drawdown due to the amount of their spread at opening ... and will surely stay there until a reversal situation ( when ask and bid becomes inverse and the total position will close in the black even taking into account the slippage, swaps, commissions and other fees ... ! ! )
If we are going to catch pike instead of plankton (single pips), let it be by kilos. And kilos / per hour is not observed. The risks of non-execution (untimely execution) reduce all the efforts to zero, if not to minus. The best the scheme can do is minimize the spread due to smart selection of specific currency pairs for opening multicurrency positions at a specific moment in time. But as a rule, the stupid spread priority for "Majors" plus saving on costs of converting the deposit into the currency pair (you have to pay for it!) leads to a primitive victory of the "always open on Majors and keep the deposit in dollars" scheme. The hassle of catching pips on "complex arbitrage" is not worth the effort. Better to create an aggregator for trading with several brokers simultaneously (with dynamic selection of the "best" broker for each deal) - not much more work, but many times more arbitrage fish. But there is another problem - clearing of lots between brokers, but it is solvable, although not easy and with costs.
 
plankton is measured in kilograms ... Not per hour, but per day - stable.13
 
SLAWIK:
plankton is exactly measured in kilograms ... though not per hour, but per day -- consistently.

Is Plankton cashed in? Or is it a tester/demo?

--

"It's not really what it looks like..." ;)

 

Well, trading between different suppliers involving clearing is wooooo! (you need a lot of money)...

....you need an account at a clearing bank with liquidity providers (e.g. RaboBank)... ....make a personal agreement with each of them ... ....write multi-level API ( common for all providers ) ...

....suppliers will occasionally drop out and need to find new ones... etc... etc...

 
SLAWIK:

The only way to do this is to set up an account at a clearing bank where there are also suppliers' accounts... ....make a personal contract with each of them ... write a multi-level API ( common to all suppliers ) ...

...suppliers will occasionally drop out and need to find new ones... etc...

None of this is necessary. Everything should be right there in the aggregator, and on autopilot. The essence is the same. I will show an elementary (single) example, and use it to explain.

Suppose we (our TS) open a BUY trade on EURJPY through the aggregator. The aggregator receives a request, looks for/finds the best broker at the current moment and commands the appropriate terminal (broker A) to send this request. The order is satisfied accordingly (if successful). When this trade closes (counter SELL order) in the general case a completely different broker(B) might be "better". An interbroker LOC arises: the trader has all trades closed, there is no problem, but the aggregator has two opposite orders at different brokers(A-bay, B-sell). This is a problem - they need to be closed somehow. The solution is to create the list of all those lots and constantly monitor quotes of all blocked brokers in order to find "near-arbitrage" (ideally really arbitrage, ie with a profit) moments for the counter-closing of those orders (while respecting the equality of volumes, of course). That is all clearing.

With a large number of brokers on the aggregator and intensive multicurrency trading there is nothing to do, everything must be automated, and the velocity is a priority.

It is not easy to program all this stuff correctly in the real world, but it is quite possible.

 

So we opened positions at different brokerage houses... (If we opened lots and one of the auctions decided to cancel those that it had ( for example allegedly "non-market" lots ...) and then what to do ...? we trade without clearing ... i.e. virtually - without cash coverage of trades (as would be the case in the case of trading with clearing - the guarantor of liquidity)


or in one of the kitchens with a slippage of about 70 pips! (as JTX e.g. likes it even with api... and many others do the same...)

i.e. the only way to do this is to change the system... i.e. there is not so much choice among brokerage companies with good execution ( and even less with open api )

 
SLAWIK:

So we opened positions at different docs... ( Loki ) and one of the auctions decided to cancel those that it has ( for example allegedly "non-market" Cats ...) and then what ...? we trade without clearing ... i.e. virtually - without cash coverage of trades (as would be the case in trading with clearing - the guarantor of liquidity)


or in one of the kitchens with a slippage of about 70 pips! (as they do for example on the JTX even according to the api)


Then don't make an aggregator. That's it. ;) Mona think one of the shoulders of "complex arbitration" your kitchen can't undo. Or slip in 70 pips. That's easy.