bmoscon / cryptofeed

Cryptocurrency Exchange Websocket Data Feed Handler
Other
2.19k stars 679 forks source link

Support top 10 crypto exchanges #63

Closed bmoscon closed 5 years ago

bmoscon commented 5 years ago

see https://coinmarketcap.com/rankings/exchanges/

the following support websockets

rendonghai commented 5 years ago

Hello bmoscon,you can cooperate with BitcoinExchangeFH https://github.com/BitcoinExchangeFH. This project packaged you and the CCXT project. Maybe you should focus on the websocket API instead of doing what CCXT has done.

bmoscon commented 5 years ago

@rendonghai thanks for the PR. I have focused primarily on the websocket api and most the major websocket APIs are supported. If there is an exchange you feel is missing feel free to mention it here (so I can add it) or submit another PR

rendonghai commented 5 years ago

I need support okex and okcoin, many Chinese use this exchange. I will submit another PR to support okex, and get familiar with your project through this. Maybe you can support okcoin yourself :)

bmoscon commented 5 years ago

@rendonghai sure. I documented the process of adding a new exchange: https://github.com/bmoscon/cryptofeed/blob/master/docs/exchange.md

bmoscon commented 5 years ago

@rendonghai okcoin added

rendonghai commented 5 years ago

Oh, you're doing it too fast. I'm still reading okex's API documentation and thinking about how to record its index data.Thank you for your guidance and I will read it as soon as possible.

bmoscon commented 5 years ago

@rendonghai i added okex support. Its basically the same as okcoin, just a different socket address

rendonghai commented 5 years ago

Hello bmoscon, I have a new problem. I need to record index data of okex, but your okex exchange only supports spot type.More and more exchanges support multiple types of markets.For example, Huobi and Kraken support spot and futures, and okex markets are divided into spot, futures, swaps and indexes. For now, the simplest solution is to set up exchanges for each of these types, such as okex-index, okex-swap.Any other solution would require a change to your existing program structure.What do you think?

bmoscon commented 5 years ago

@rendonghai we should probably move this conversation to a new ticket/issue, but it seems like what you want does not need to be a new exchange type, but rather a new channel type. eg, instead of TRADES, it could be TRADES-SWAP, or the like. This assumes that the subscription channel differs and the symbols do not, eg, if the symbol for spot is BTC-USD and the symbol for swap is swpBTC-USD, then it wouldnt need a new channel.

rendonghai commented 5 years ago

Yes, it is indeed a new issue. You open a new issue, let's discuss it there. I agree with your idea of using channel instead of exchange.This is more in line with their real hierarchy. It's just that for a long time these new channels may have looked like they were just for okex.

noconstruct commented 5 years ago

maybe use ccxt to interact with exchanges ? also take a look at http://www.openmarketcap.com

bmoscon commented 5 years ago

@noconstruct ccxt does not support websockets. I'll take a look at that website and see if any of the top exchanges support websockets and add them to the list - thanks!

bmoscon commented 5 years ago

Please limit conversation on this ticket to exchanges that should be considered for inclusion

11bblandin commented 5 years ago

Deribit has a websocket interface, as well as FIX (not sure if there are any plans for that). They offer options data as well as futures

Bybit also seems to be an up-and-coming exchange, offering perpetual swaps on BTC, ETH, EOS, and XRP

nateGeorge commented 5 years ago

Cointiger looks to be the 2nd in 24h volume currently and seems to have a websocket API: https://github.com/cointiger/api-docs-en/wiki

Some others currently in the top 10 are:

For 30d volume, Bitmax is currently top: https://github.com/bitmax-exchange/api-doc/blob/master/README.md

cheekybastard commented 5 years ago

@nateGeogre who is the source for the volume ranking? 50+% of global reported volume is fake. With respect, your source is not filtering wash trading exchanges, for example cointigers google analytics show <10K visitors/day, 70% drop in traffic for June. They granted similarweb access to their analytics data: https://www.similarweb.com/website/cointiger.com They are not doing volume similar to exchanges getting ~1million visitors/day, not possible.

I'd suggest reading the Bitwise & Alameda Research reports on fake exchange volume.

Currently the best sources I could find for volume ranking are:

bmoscon commented 5 years ago

going to close this as exchanges will be added as needed, most the larger exchanges per the coingecko list are already supported

nateGeorge commented 5 years ago

@cheekybastard thanks for the info will check it out. Was using coinmarketcap but they seem to just include everything.