This issue has been partially completed in #28, which leaves out the expansion of the CCXT integration
Desired Behavior
I want to connect my strategies to more than just the Kraken exchange.
Impact
The desired behavior will allow me to get better data and will allow me to offset my assets on more exchanges.
Feature Suggestion
We can achieve the desired behavior by integrating the CCXT library (REST API) into the bot's framework.
We will need to deploy the REST wrapper as a micro-service and create an adapter for this REST API that will give us access to the many exchanges supported by CCXT. The adapter will allow us to maintain the exchange interface that we currently have for the bot, thus allowing it to work seamlessly with our existing strategies.
References
This feature exists in many other cryptocurrency repos.
Here's a link to the CCXT library along with a REST wrapper around it for use in Golang:
CCXT GitHub: https://github.com/ccxt/ccxt
REST wrapper around CCXT: https://github.com/franz-see/ccxt-rest
Additional context
Some alternatives that would achieve the same result are:
- Invoke python/node code directly using IPC or queues
- manually integrate the libraries for each individual exchange
The feature suggested above was the better than these alternatives because by creating a microservice for CCXT, we can decouple the exchange integration from the bot, easily stay up-to-date with any API changes for all these exchanges, and deploy 100+ crypto exchanges with a simple adapter exchange implementation.
This issue has been partially completed in #28, which leaves out the expansion of the CCXT integration
Desired Behavior
I want to connect my strategies to more than just the Kraken exchange.
Impact
The desired behavior will allow me to get better data and will allow me to offset my assets on more exchanges.
Feature Suggestion
We can achieve the desired behavior by integrating the CCXT library (REST API) into the bot's framework.
We will need to deploy the REST wrapper as a micro-service and create an adapter for this REST API that will give us access to the many exchanges supported by CCXT. The adapter will allow us to maintain the exchange interface that we currently have for the bot, thus allowing it to work seamlessly with our existing strategies.
References
This feature exists in many other cryptocurrency repos.
Here's a link to the CCXT library along with a REST wrapper around it for use in Golang:
CCXT GitHub: https://github.com/ccxt/ccxt
REST wrapper around CCXT: https://github.com/franz-see/ccxt-rest
Additional context
Some alternatives that would achieve the same result are:
The feature suggested above was the better than these alternatives because by creating a microservice for CCXT, we can decouple the exchange integration from the bot, easily stay up-to-date with any API changes for all these exchanges, and deploy 100+ crypto exchanges with a simple adapter exchange implementation.