All Projects β†’ philipperemy β†’ Deep Learning Bitcoin

philipperemy / Deep Learning Bitcoin

Licence: apache-2.0
Exploiting Bitcoin prices patterns with Deep Learning.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Deep Learning Bitcoin

Machine Learning And Ai In Trading
Applying Machine Learning and AI Algorithms applied to Trading for better performance and low Std.
Stars: ✭ 258 (-46.36%)
Mutual labels:  artificial-intelligence, bitcoin
Xplain
🌎 Complex Topics Explained For Your Level And Background. ✏️
Stars: ✭ 44 (-90.85%)
Mutual labels:  artificial-intelligence, bitcoin
Deep Trading Agent
Deep Reinforcement Learning based Trading Agent for Bitcoin
Stars: ✭ 573 (+19.13%)
Mutual labels:  artificial-intelligence, bitcoin
Cryptocurrency Price Prediction
Cryptocurrency Price Prediction Using LSTM neural network
Stars: ✭ 271 (-43.66%)
Mutual labels:  artificial-intelligence, bitcoin
Ai2thor
An open-source platform for Visual AI.
Stars: ✭ 460 (-4.37%)
Mutual labels:  artificial-intelligence
Caer
High-performance Vision library in Python. Scale your research, not boilerplate.
Stars: ✭ 452 (-6.03%)
Mutual labels:  artificial-intelligence
Spacy
πŸ’« Industrial-strength Natural Language Processing (NLP) in Python
Stars: ✭ 21,978 (+4469.23%)
Mutual labels:  artificial-intelligence
Btcd
An alternative full node bitcoin implementation written in Go (golang)
Stars: ✭ 4,588 (+853.85%)
Mutual labels:  bitcoin
Simcoin
Blockchain simulation framework with Docker and Python.
Stars: ✭ 470 (-2.29%)
Mutual labels:  bitcoin
Poker ai
πŸ€– An Open Source Texas Hold'em AI
Stars: ✭ 462 (-3.95%)
Mutual labels:  artificial-intelligence
Trezor Crypto
πŸ”’ Don't use this repo, use the new monorepo instead:
Stars: ✭ 458 (-4.78%)
Mutual labels:  bitcoin
Commandcenter
Starcraft AI Bot
Stars: ✭ 456 (-5.2%)
Mutual labels:  artificial-intelligence
Pba
Efficient Learning of Augmentation Policy Schedules
Stars: ✭ 461 (-4.16%)
Mutual labels:  artificial-intelligence
Cryptocurrencyprediction
Predict Cryptocurrency Price with Deep Learning
Stars: ✭ 453 (-5.82%)
Mutual labels:  bitcoin
Tsdf Fusion Python
Python code to fuse multiple RGB-D images into a TSDF voxel volume.
Stars: ✭ 464 (-3.53%)
Mutual labels:  artificial-intelligence
Aidlearning Framework
πŸ”₯πŸ”₯AidLearning is a powerful mobile development platform, AidLearning builds a linux env supporting GUI, deep learning and visual IDE on Android...Now Aid supports OpenCL (GPU+NPU) for high performance acceleration...Linux on Android or HarmonyOS
Stars: ✭ 4,537 (+843.24%)
Mutual labels:  artificial-intelligence
Ml Visuals
🎨 ML Visuals contains figures and templates which you can reuse and customize to improve your scientific writing.
Stars: ✭ 5,676 (+1080.04%)
Mutual labels:  artificial-intelligence
Cool Fashion Papers
πŸ‘”πŸ‘—πŸ•ΆοΈπŸŽ© Cool resources about Fashion + AI! (papers, datasets, workshops, companies, ...) (constantly updating)
Stars: ✭ 464 (-3.53%)
Mutual labels:  artificial-intelligence
Serenata De Amor
πŸ•΅ Artificial Intelligence for social control of public administration
Stars: ✭ 4,367 (+807.9%)
Mutual labels:  artificial-intelligence
Arnold
Arnold - DOOM Agent
Stars: ✭ 457 (-4.99%)
Mutual labels:  artificial-intelligence

When Bitcoin meets Artificial Intelligence

dep1

Exploiting Bitcoin prices patterns with Deep Learning. Like OpenAI, we train our models on raw pixel data. Exactly how an experienced human would see the curves and takes an action.

So far, we achieved:

  • [x] Download Bitcoin tick data
  • [x] Convert to 5-minute data
  • [x] Convert to Open High Low Close representation
  • [x] Train a simple AlexNet on 20,000 samples: accuracy is 70% for predicting if asset will go UP or DOWN. Training is done on NVIDIA DIGITS and with the Caffe framework.
  • [x] Quantify how much the price will go UP or DOWN. Because the price can go UP by epsilon percent 99% of the time, and pulls back by 50%
  • [ ] Train on 1,000,000+ samples (at least)
  • [ ] Apply more complex Conv Nets (at least Google LeNet)
  • [ ] Integrate bar volumes on the generated OHLC (Open, High, Low, Close) image
  • [ ] Use CNN attention to know what's important for which image. Maybe only a fraction of the image matters for the prediction

Results on 20,000 samples (small dataset)


Training on 5 minute price data (Coinbase USD)



Some examples of the training set


Illustration of the dataset from CoinbaseUSD

                     price_open  price_high  price_low  price_close      volume  close_price_returns close_price_returns_bins  close_price_returns_labels
DateTime_UTC                                                                                                                                             
2017-05-29 11:55:00     2158.86     2160.06    2155.78      2156.00   21.034283             0.000000          (-0.334, 0.015]                           5
2017-05-29 12:00:00     2155.98     2170.88    2155.79      2158.53   47.772555             0.117347           (0.015, 0.364]                           6
2017-05-29 12:05:00     2158.49     2158.79    2141.12      2141.92  122.332090            -0.769505        (-1.0322, -0.683]                           3
2017-05-29 12:10:00     2141.87     2165.90    2141.86      2162.44   87.253402             0.958019          (0.713, 1.0623]                           8
  • Scroll right to see all the columns!
  • Volumes are displayed in BTC.
  • Returns are in percentage and are computed on the close prices.

How to get started?

git clone https://github.com/philipperemy/deep-learning-bitcoin.git
cd deep-learning-bitcoin
./data_download.sh # will download it to /tmp/
python3 data_generator.py /tmp/btc-trading-patterns/ /tmp/coinbaseUSD.csv 1 # 1 means we want to use quantiles on returns. 0 would mean we are interested if the bitcoin goes UP or DOWN only.

If you are interested into building a huge dataset (coinbase.csv contains around 18M rows), it's preferrable to run the program in background mode:

nohup python3 -u data_generator.py /tmp/btc-trading-patterns/ /tmp/coinbaseUSD.csv 1 > /tmp/btc.out 2>&1 &
tail -f /tmp/btc.out

If you ever see this error:

_tkinter.TclError: no display name and no $DISPLAY environment variable

Please refer to this solution: https://stackoverflow.com/questions/37604289/tkinter-tclerror-no-display-name-and-no-display-environment-variable

Run with Docker

To build the docker image just execute

docker build -t dlb .

from the repository folder and then run the container

docker run -it --name dlb -v $PWD:/app dlb /bin/bash

the current folder will be mounted into /app. To verify the correct mount execute inside the container

[email protected]:/app# mount| grep app
/dev/sda2 on /app type ext4 (rw,relatime,errors=remount-ro,data=ordered)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].