Real time cryptocurrency price data prediction command line utility using machine learning regression. Cross platform compatible on Linux, macOS, and Windows. Written in Python 3.
-
pip3 install yacu
or -
python3 -m pip install yacu
-
docker pull yetanothercryptoutil/yacu
or -
podman pull yetanothercryptoutil/yacu
NOTE: If you use this method, only the CLI features of the program will be available.
- Download and install anaconda
git clone https://github.com/1103s/crypto-bot.git
cd crypto-bot
conda create --name crypto_util python=3.9.7
source activate crypto_util
python3 -m pip install -r requirements.txt
-
Default:
yacu
-
Anaconda:
python3 src/gui.py
-
Once installed via pip you will be able to initialize the GUI using the command
yacu
in the command line.- In some cases, such as in Linux Mint installations, this will fail. If the happens it means that
.bin
is not in your path (which you can check usingecho $PATH
). Therefore you need to add.bin
to your path in order to fix this.
- In some cases, such as in Linux Mint installations, this will fail. If the happens it means that
-
Default:
yacu-cli
-
Podman:
podman run yacu
-
Docker:
docker run yacu
-
Anaconda:
python3 src/crypto_util.py
python3 crypto_util.py --crypto BTC
: The basic functionality requires the user to input at least the cryptocurrency symbol. Note that by default images of the data and predictions are saved tofigures/
python3 crypto_util.py --crypto ETH --days 10 --lags 80
: More specific flags can be specified, such as the number of days into the future to predict the price.python3 crypto_util.py --crypto ETH --days 50 --lags 400
: The largerlags
is the longer the training time, but also the higher the accuracy will be.python3 crypto_util.py --ls --source kraken
: In order for the user to see what cryptocurrency symbols are available for an API source, the utility allows for this listing argument with no additional flags.python3 crypto_util.py --help
: Prints the usage instructions.
docker run yacu
orpodman run yacu
-
podman run yacu --crypto ETH
: In this case the settings are set to default. However, the cryptocurrency you want to analyze is a required flag. -
podman run yacu --help
displays the usage and required arguments for the utility to work.
Documentation can be found here.
- docker, podman, or Python3 and pip (or pip3)
- On some Linus distributions the PySide6 import will throw an error like this:
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.28 not found
- A possible fix for this is
sudo apt-get install libc6
- A possible fix for this is
- Add method to save and load previously trained ML model files using the python library
pickle
. - More color palettes for the MainWindow (variations of dark mode)
- Add moving averages toggling to graph