arbitrader icon indicating copy to clipboard operation
arbitrader copied to clipboard

Filter out currency pairs without a matching pair on a margin exchange

Open dazito opened this issue 3 years ago • 1 comments

I suspect if we add a currency to an "long" exchange that does not exist on a margin exchange we will still subscribe to ticker updates for this pair. Is this true?

If so I think we can optimize it and do not subscribe to tickers that we are not able to trade on, Something like switching line 160 with line 163 here: https://github.com/agonyforge/arbitrader/blob/master/src/main/java/com/agonyforge/arbitrader/service/TradingScheduler.java#L160

On line 163 we know which pair combinations we can trade on

I will comeback to this issue to describe it better (this is just a copy paste of my message on discord)

dazito avatar Jun 11 '21 07:06 dazito

For example, lets take two exchanges A and B where we can do margin trading only on exchange B.

Exchange A has the following configured currency pairs:

  • BTC/USD
  • ETH/USD
  • DOT/USD

Exchange B has the following configured currency pairs:

  • BTC/USD
  • ETH/USD
  • SOL/USD

In these two configurations, each exchange has one trading pair missing it's corresponding part on the other exchange. This means that exchange A has currency pair DOT/USD which is not set on exchange B. On the other hand exchange B has currency pair SOL/USD which is not set on exchange A.

Now I suspect we are subscribing for ticker events for DOT/USD on exchange A and SOL/USD on exchange B. If this is true, we can optimize it and do not subscribe to ticker events on pair DOT/USD from exchange A and on pair SOL/USD on exchange B because we will never be able to trade on these two pairs.

dazito avatar Jun 24 '21 20:06 dazito