App to receive, store, process and send data about crypto assets on Binance using API and many other great technologies.
Cryptool is app which is connected to PostgreSQL database and
through HTTP server (Echo) provides some endpoints with REST API
(now it's limited connection to some IPs).
This app was created for collecting data from Binance cryptocurrency
exchange, store them, process and analyze data and then send data
with API. Such functionality is already working, however there are
a lot of things in backlog waiting for their time.
- Explore Back-end world and programming languages, especially Golang
- Experiment and apply in practice acquired theoretical knowledge
- Create something complete and useful
- Learn databases both SQL and NoSQL
- See gaps in knowledge/understanding and work them out in practice
- Go / Golang
- Git
- Goland
- HTTP server - Echo web framework
- REST API
- PostgreSQL (previously was used MongoDB in this project, but to learn SQL - database was changed to Postgres)
- Docker
- CI/CD (with GitHub Actions and Digital Ocean. Previously Heroku was used)
- Linux (moved from Windows)
App collects data from Binance through API and store them in Postgres database. After request from Telegram Bot App, Cryptool processing data from database and response with required data.
You can go to https://t.me/KynselBot (Telegram) and try one of the following commands:
- "sdd 20220531" or "sdd 220531" to receive cryptocurrencies and their price change comparing current price and highest price on given date (for example 2022.05.31). You can use any date in the last 400 days. "sdd" stands for strong during downtrend - so it's better to use if overall now prices are lower than on chosen date.
- "sdu 20220531" or "sdd 220531" to receive cryptocurrencies and their price change comparing current price and highest price on given date (for example 2022.05.31). You can use any date in the last 400 days. "sdu" stands for strong during uptrend - so it's better to use if overall now prices are higher than on chosen date.
- "btcusdt 1d" or "ETHUSDT 30m" to receive candle's data for provided trade pair (coin) and timeframe. Full list of available trade pairs and timeframes you can find here