Predict crypto prices with ML.
Project description
Crypto Util
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.
Install
Docker or podman
-
docker pull yetanothercryptoutil/yacu
or -
podman pull yetanothercryptoutil/yacu
Local installation via anaconda
- 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
Usage
GUI
-
Podman:
podman run yacu
-
Docker:
docker run yacu
-
Python:
python3 gui.py
CLI
Local command line usage
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_uitl.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_uitl.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 or podman
docker run yacu
orpodman run yacu
Example Docker or podman Usage
-
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
Documentation can be found here.
Requirements
- docker, podman, or anaconda
TODOs
- Add method to save and load previously trained ML model files using the python library
pickle
. - Implement training functionality (get_data already done)
- Add more ML models maybe? Maybe make a more customizable model, such as being able to make a 1D convolutional neural network with specified inputs (e.g. price of BTC correlated with other coins) and user-specfied outputs (whether a particular trend appears bearish or bullish).
- More color palettes for the MainWindow (variations of dark mode)
- Fix tabs. Automatically switch tabs after new forecast
- Add moving averages toggling to graph (IDK what a moving average is)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
yacu-0.0.2.2.tar.gz
(31.3 kB
view hashes)
Built Distribution
yacu-0.0.2.2-py3-none-any.whl
(32.0 kB
view hashes)