A Bitcoin trading bot using deep reinforcement learning (TensorForce) to automate buy/sell/hold decisions based on price history.
TensorForce Bitcoin Trading Bot is an open-source algorithmic trading system that uses deep reinforcement learning to automate Bitcoin trading decisions. It trains agents to buy, sell, or hold BTC based on historical price data, aiming to optimize trading strategies without manual rule-writing. The project focuses on hyperparameter tuning and model architecture experimentation for financial time-series.
Developers and researchers interested in applying reinforcement learning to algorithmic trading, particularly in cryptocurrency markets. It suits those with machine learning experience who want a practical, code-first exploration of trading bots.
It provides a full-stack, research-oriented trading bot with built-in hyperparameter search and visualization, unlike simpler supervised learning examples. The integration with TensorForce allows experimentation with state-of-the-art RL algorithms specifically adapted for trading.
TensorForce Bitcoin Trading Bot
Integrates Proximate Policy Optimization (PPO) from TensorForce for automated decision-making in trading, moving beyond simple prediction to strategy learning.
Uses Bayesian Optimization and gradient boosting to systematically tune neural network configurations, which the README emphasizes as critical for RL success in trading.
Supports both LSTM and CNN models, allowing experimentation with different approaches for time-series data, as discussed in the LSTM v CNN section.
Includes dry-run test mode and live trading mode with explicit risk warnings, enabling real-world deployment after validation.
Provides a React/Flask dashboard for analyzing hyperparameter runs and agent performance signals, offering more customization than TensorBoard.
The author admits tests don't converge and warns against expecting profits, stating 'something is fundamentally missing,' making it unreliable for actual trading.
Requires manual installation of TA-Lib, Postgres databases, and chasing TensorForce's HEAD from git, leading to dependency issues and steep learning curves.
Recommends GPU usage for performance, with memory constraints potentially crashing hypersearch unless using flags like --autoencode, limiting accessibility.
The project has been largely inactive since 2018, with the author stepping away, so users must rely on community support or self-maintenance.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.