bitrich-info / xchange-stream

XChange-stream is a Java library providing a simple and consistent streaming API for interacting with Bitcoin and other crypto currency exchanges via WebSocket protocol. It is build on top of of XChange library providing new interfaces for streaming API. User can subscribe for live updates via reactive streams of RxJava library.
Apache License 2.0
413 stars 222 forks source link

Trade API test status #259

Closed galic1987 closed 4 years ago

galic1987 commented 5 years ago

I tested the 4.3.11 trades API with BTC_USD(T) and I can confirm the following working:

Rest: Binance: Exception in thread "main" java.lang.IllegalArgumentException: Subscriptions must be made at connection time Can we merge this? https://github.com/bitrich-info/xchange-stream/issues/140

BitMex: INFO: Disconnected from the Exchange (after 10 seconds)

Poloniex : Just hangs in there

CexIO: Feature not yet implemented for exchange.

GDax: The ProductSubscription must be defined!

Bitflyer: INFO: Disconnected from the Exchange (after 10 seconds)

Wex: we can remove this one

Questions: 1) Did anyone tried contacting the exchanges to see if they would like provide developers for the project? It is in their interest. 2) Can we create some simple unit tests?

badgerwithagun commented 5 years ago

@galic1987:

It is very hard to create meaningful unit tests since most of the code relies on exchange connectivity and none of the exchanges provide stubs. Generally, the best developers can do is to make sure that their code maps known examples of websocket data.

There are "example" classes for manual testing, which are usually used by developers when working on changes, but running them on Travis would make the build fail half the time. I've been there with my own project - having to bypass tests to try and get a fix out during a 6-hour Binance outage is no fun.

galic1987 commented 5 years ago

So I have created a BEAM pipeline example using this library Article: https://medium.com/@igalic/bigtable-beam-dataflow-cryptocurrencies-gcp-terraform-java-maven-4e7873811e86 Github: https://github.com/GoogleCloudPlatform/professional-services/tree/master/examples/cryptorealtime

Please include it in the examples section

Thx

galic1987 commented 5 years ago

@badgerwithagun

badgerwithagun commented 5 years ago

@galic1987 - do you mean add it to this section of the README?

If so, just submit a pull request.

galic1987 commented 5 years ago

https://github.com/bitrich-info/xchange-stream/pull/288 pls approve