Files
xau-ai-trading-bot/docker-start.sh
T
buckybonez 82eca84230 feat: apply #28B smart breakeven + #31B H1 EMA20 filter, add backtests #26-#32
Live trading optimizations (cumulative: $2,807 net, 81.8% WR, Sharpe 3.97):
- #28B: Smart breakeven locks profit at entry + 0.5x ATR instead of fixed $2
- #31B: H1 Price vs EMA20 filter — BUY only when H1 bullish, SELL only when bearish

Backtests #26-#32 (7 scripts testing sell improvement, regime-aware entry,
confluence scoring, dynamic RR, multi-TF H1, and ML exit optimizer).
Winners: #28B (+$229), #31B (+$343). Failed: #26, #27, #29, #30, #32.

Also includes: web dashboard redesign, Docker setup, startup scripts.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:33:24 +07:00

88 lines
2.1 KiB
Bash

#!/bin/bash
# XAUBot AI - Docker Start Script
set -e
echo "🚀 Starting XAUBot AI Docker Services..."
echo ""
# Check if .env exists
if [ ! -f .env ]; then
echo "⚠️ .env file not found!"
echo "📝 Creating .env from template..."
cp .env.docker.example .env
echo "✅ .env created. Please edit it with your MT5 credentials:"
echo " - MT5_LOGIN"
echo " - MT5_PASSWORD"
echo " - MT5_SERVER"
echo " - MT5_PATH"
echo ""
read -p "Press Enter after editing .env to continue..."
fi
# Check if Docker is running
if ! docker info > /dev/null 2>&1; then
echo "❌ Docker is not running!"
echo "Please start Docker Desktop and try again."
exit 1
fi
echo "✅ Docker is running"
echo ""
# Parse command line arguments
PROFILE_FLAG=""
if [ "$1" == "--admin" ] || [ "$1" == "-a" ]; then
PROFILE_FLAG="--profile admin"
echo "📊 Starting with pgAdmin (admin profile)..."
else
echo "📊 Starting core services (postgres, api, dashboard)..."
echo "💡 Use './docker-start.sh --admin' to include pgAdmin"
fi
echo ""
# Pull latest images
echo "📥 Pulling latest base images..."
docker-compose pull
echo ""
echo "🔨 Building services..."
docker-compose build
echo ""
echo "🎯 Starting services..."
docker-compose $PROFILE_FLAG up -d
echo ""
echo "⏳ Waiting for services to be healthy..."
sleep 10
# Check health
echo ""
echo "🏥 Checking service health..."
docker-compose ps
echo ""
echo "✅ Services started successfully!"
echo ""
echo "📍 Access Points:"
echo " Dashboard: http://localhost:3000"
echo " API: http://localhost:8000"
echo " API Docs: http://localhost:8000/docs"
echo " Database: localhost:5432"
if [ "$1" == "--admin" ] || [ "$1" == "-a" ]; then
echo " pgAdmin: http://localhost:5050"
fi
echo ""
echo "📋 Useful Commands:"
echo " View logs: docker-compose logs -f"
echo " View API logs: docker-compose logs -f trading-api"
echo " Stop services: docker-compose down"
echo " Restart: docker-compose restart"
echo ""
echo "📖 Full documentation: DOCKER.md"
echo ""