A crypto trading bot framework in Go for building, backtesting and running trading strategies across multiple exchanges.
asavinov/intelligent-trading-bot
Python framework for training ML models on historic crypto market data with feature engineering, then running them as an online service that sends trading signals.
- Stars
- 1,891
- Forks
- 414
- Open issues
- 45
- Last commit
- 6 days ago
Repolode describes open-source projects and does not give investment advice. Trading and investing can lose money: assess the risk yourself and follow the laws where you live before using this project.
What is it?
Intelligent Trading Bot is a Python framework for building automated trading signals, mainly for cryptocurrencies, using machine learning and feature engineering. It separates an offline batch pipeline, which downloads market data, merges it, generates features and labels, and trains models, from an online service that applies the same features to fresh data and produces a score.
Features are defined as Python functions and configured in a JSON file. Built-in generators cover TA-Lib indicators, tsfresh-style statistics and custom functions, and the same feature code is meant to run in both batch and streaming modes. Data frequency can be set from minutes to days, and the bundled scripts also cover backtesting through rolling re-training and trade simulation.
The online service runs on a schedule, retrieves the latest data from Binance or Yahoo, and sends results through configurable outputs such as Telegram messages, API endpoints, databases or live trade execution.
Key features
- 01Separate offline training and online prediction pipelines with shared feature logic.
- 02Feature and label generators configurable in JSON, including TA-Lib indicators and custom Python functions.
- 03Supports multiple time frequencies such as 1 minute, 1 hour or 1 day.
- 04Built-in data download from Binance and Yahoo.
- 05Pluggable outputs for Telegram notifications, APIs, databases or real trades.
- 06Rolling walk-forward backtesting and trade simulation scripts.
Use cases
- Researching whether machine learning features predict short-term crypto price moves.
- Sending automated buy or sell alerts to a Telegram channel.
- Backtesting a feature and model pipeline on historic Binance data before going live.
- Prototyping custom technical indicators within a repeatable train-and-predict workflow.
Quick start
- 1
Prepare a configuration file (sample configs are in the config folder)
- 2
Download historic market data
python -m scripts.download -c config.json - 3
Merge downloaded data, then run the features, labels and train scripts (also listed in the README)
python -m scripts.merge -c config.json - 4
Start the online trading signal service
python -m service.server -c config.json
Things to know
- Data download is limited to Binance and Yahoo, and data sources are not extendable.
- Offline training must be run before the online service can produce signals.
- Computing features on complex configurations can take hours.
Topics
FAQ
- What is intelligent-trading-bot?
- Python framework for training ML models on historic crypto market data with feature engineering, then running them as an online service that sends trading signals. Intelligent Trading Bot is a Python framework for building automated trading signals, mainly for cryptocurrencies, using machine learning and feature engineering. It separates an offline batch pipeline, which downloads market data, merges it, generates features and labels, and trains models, from an online service that applies the same features to fresh data and produces a score.
- Is intelligent-trading-bot free to use? What license does it have?
- intelligent-trading-bot is open source under the MIT license. Check the license terms before using it in commercial products.
- Is intelligent-trading-bot still maintained?
- Actively maintained. The last commit to intelligent-trading-bot was on Nov 1, 2026.
- What can I use intelligent-trading-bot for?
- Researching whether machine learning features predict short-term crypto price moves. Sending automated buy or sell alerts to a Telegram channel. Backtesting a feature and model pipeline on historic Binance data before going live. Prototyping custom technical indicators within a repeatable train-and-predict workflow.
- How do I install intelligent-trading-bot?
- Prepare a configuration file (sample configs are in the config folder) Download historic market data: python -m scripts.download -c config.json Merge downloaded data, then run the features, labels and train scripts (also listed in the README): python -m scripts.merge -c config.json Start the online trading signal service: python -m service.server -c config.json
- Where can I get intelligent-trading-bot?
- The source code and installation instructions are on GitHub: https://github.com/asavinov/intelligent-trading-bot
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Free, open source Python crypto trading bot supporting major exchanges, with backtesting, dry-run, FreqAI and Telegram/web UI control.
A self-hosted Python framework for researching, backtesting, optimizing and live-trading your own crypto trading strategies.
Rust-native, event-driven trading engine with Python control plane for backtesting and live trading across crypto, FX, equities, futures, options and betting venues.
Free open-source crypto trading bot that automates grid, DCA, AI, and TradingView strategies across Binance, Coinbase, Hyperliquid and 15+ exchanges.
Python framework for building, backtesting and live-trading stock, options, futures, forex, crypto and prediction-market strategies, with optional AI agents that make trading decisions.