System requirements and environment setup
This guide covers the technical prerequisites and initial environment setup for the auto-trading system.
Ubuntu/Debian:
# Update package index
sudo apt update
# Install Docker
sudo apt install docker.io docker-compose
# Add user to docker group (logout/login required)
sudo usermod -aG docker $USER
# Verify installation
docker --version
macOS:
docker --version
Windows:
docker --version
jq (JSON processor):
# Ubuntu/Debian
sudo apt install jq
# macOS
brew install jq
# Verify
jq --version
git clone https://github.com/peteretelej/auto-trading.git
cd auto-trading
# Create environment file from template
cp .env.sample .env
# Edit with your settings (see next sections for values)
nano .env
# Verify Docker works
docker run hello-world
# Test project scripts
chmod +x docker-launch.sh scripts/*.sh
./scripts/setup-proxy.sh
After setup, your project will have:
auto-trading/
├── config/ # Strategy configuration templates
├── docs/ # Documentation (this folder)
├── scripts/ # Management and monitoring scripts
├── user_data/ # Local strategies and data
├── docker-launch.sh # Main launch script
├── .env # Your API keys and settings
└── .env.sample # Template for environment variables
Your .env
file needs these values (details in next sections):
# Binance API (required for live trading)
BINANCE_API_KEY=your_api_key_here
BINANCE_API_SECRET=your_secret_here
# Telegram (optional, for notifications)
TELEGRAM_BOT_TOKEN=your_bot_token
TELEGRAM_CHAT_ID=your_chat_id
# Web Interface
WEB_USERNAME=admin
WEB_PASSWORD=your_secure_password
WEB_PORT=8101
# Data directory (adjust path as needed)
DATA_DIR=/home/yourusername/trading-data
Test your setup works:
# 1. Test Docker and proxy
./scripts/setup-proxy.sh
# 2. Test bot launch (dry-run mode)
./docker-launch.sh
# 3. Check web interface
curl http://localhost:8101/api/v1/ping
# 4. View logs
docker logs freqtrade-ReinforcedAverageStrategy
# Add user to docker group
sudo usermod -aG docker $USER
# Logout and login again
# Find process using port 8101
sudo lsof -i :8101
# Kill process or change WEB_PORT in .env
# Make scripts executable
chmod +x docker-launch.sh scripts/*.sh
If you want to access your bots via a custom domain instead of localhost:8101
:
With your environment ready, continue to:
Or jump to Launching Strategies if you want to test in dry-run mode first.