A bot that uses the Binance API to monitor futures coins and send automatic alerts when it detects significant movements of 20% or more.
- Real-Time Monitoring: Tracks cryptocurrency prices using Binance WebSockets
- Smart Alerts: Automatically notifies of price changes ≥20% within 2h 10m windows
- Batch Processing: Efficiently handles multiple symbols while respecting Binance limits
- 24/7 Uptime: Integrated web server to keep the bot active continuously
- Python 3.12.4+
- Binance API: For real-time market data
- Telegram Bot API: For sending alerts
- Flask: Web server for uptime
- AsyncIO: Asynchronous programming for better performance
- Binance account with API enabled
- Telegram Bot created with @BotFather
- Telegram Channel/Group to receive alerts
git clone https://github.com/johnnylinares/binance-scalping-signals-bot.git
cd binance-scalping-signals-botpip install -r requirements.txtCreate a .env file in the project's root:
# Binance API
API_KEY="your_binance_api_key"
API_SECRET="your_binance_api_secret"
# Main Telegram Bot
BOT_TOKEN="your_bot_token"
CHANNEL_ID="your_channel_id"- Go to Binance API Management
- Create a new API Key
- Enable "Enable Reading" (you don't need trading permissions)
- Save your API Key and Secret Key
- Talk to @BotFather on Telegram
- Use
/newbotto create a new bot - Save the token it provides
- Add the bot to your channel/group and make it an administrator
- Get the channel ID using @userinfobot
python main.pyThe bot includes a Flask server that responds on port 8000 to maintain uptime:
python main.pyThe server will be available at http://localhost:8000
- Connection: The bot connects to the Binance API using WebSockets
- Monitoring: It tracks prices of multiple cryptocurrencies in real time
- Analysis: It calculates percentage changes in 2-hour windows
- Alerts: It sends notifications when it detects changes ≥20%
- Filtering: It prevents spam with a time bucket system
🟢 #BTCUSDT 📈 +25.67%
💵 $45,230.50 💰 $1,234.56M
- 🟢📈 = Price increase
- 🔴📉 = Price decrease
- Cryptocurrency symbol
- Percentage change
- Current price
- Volume in millions
In price_handler.py, change the constant:
THRESHOLD = 20.0 # Change to your desired percentageTIME_WINDOW = 7800 # 2h 10m in secondsbinance-scalping-signals-bot/
├── main.py # Main entry point
├── config/
│ └── settings.py # Configuration and environment variables
├── models/
│ ├── alert_handler.py # Telegram alert handling
│ ├── coin_handler.py # Price monitoring logic
│ ├── log_handler.py # Simple log function
│ └── price_handler.py # Cryptocurrency symbol management
├── requirements.txt # Python dependencies
├── .env # Environment variables (do not include in git)
└── README.md # This file
- Verify that your API Key and Secret are correct
- Make sure the API Key has reading permissions enabled
- Check that you haven't exceeded Binance's rate limits
- Confirm that the bot is an administrator of the channel
- Verify that the CHANNEL_ID is correct (it must include the
-for channels) - Check that the BOT_TOKEN is valid
- The bot automatically handles multiple symbols in batches
- If you experience lag, reduce the number of monitored symbols
- Fork the project
- Create a branch for your feature (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This bot is for educational and informational purposes only. It does not constitute financial advice. Always do your own research before making investment decisions.
If you have problems or questions:
- Open an Issue
⭐ If this project is useful to you, don't forget to give it a star!