Files
trading_bot_v3/docker-compose.dev.yml
mindesbunister 9b6a393e06 🔧 CRITICAL FIX: Price Data Sync & Position Monitor Enhancement
Fixed major price data sync issues:
- Removed hardcoded price (77.63) from position monitor
- Added real-time oracle data instead of stale TWAP pricing
- Implemented cache-busting headers for fresh data
- Updated fallback prices to current market levels

- Real-time P&L tracking with trend indicators (📈📉➡️)
- Enhanced stop loss proximity alerts with color-coded risk levels
- Analysis progress indicators during automation cycles
- Performance metrics (runtime, cycles, trades, errors)
- Fresh data validation and improved error handling

- Price accuracy: 77.63 → 84.47 (matches Drift UI)
- P&L accuracy: -.91 → -.59 (correct calculation)
- Risk assessment: CRITICAL → MEDIUM (proper evaluation)
- Stop loss distance: 0.91% → 4.8% (safe distance)

- CLI monitor script with 8-second updates
- Web dashboard component (PositionMonitor.tsx)
- Real-time automation status tracking
- Database and error monitoring improvements

This fixes the automation showing false emergency alerts when
position was actually performing normally.
2025-07-25 23:33:06 +02:00

114 lines
3.3 KiB
YAML

version: '2.4'
services:
app:
container_name: trader_dev
build:
context: .
dockerfile: Dockerfile
args:
- BUILDKIT_INLINE_CACHE=1
- NODE_VERSION=20.11.1
- PNPM_VERSION=8.15.1
# Development environment variables
environment:
- NODE_ENV=development
- DOCKER_ENV=true
- PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
- PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
- TRADINGVIEW_RECORD_VIDEO=true
- TZ=Europe/Berlin
- CHROMIUM_PATH=/usr/bin/chromium
- DISABLE_CHROME_SANDBOX=true
- DISPLAY=:0
- ALLOW_MANUAL_CAPTCHA=true
- DATABASE_URL=file:./prisma/dev.db
# Development optimizations
- CHOKIDAR_USEPOLLING=false
- WATCHPACK_POLLING=false
- NEXT_TELEMETRY_DISABLED=1
# Enhanced screenshot service development settings
- SCREENSHOT_PARALLEL_SESSIONS=false
- SCREENSHOT_MAX_WORKERS=1
- BROWSER_POOL_SIZE=1
# Disable aggressive cleanup during development
- DISABLE_AUTO_CLEANUP=true
# Load environment variables from .env file
env_file:
- .env
# Development volumes with better performance
volumes:
- ./screenshots:/app/screenshots:cached
- ./videos:/app/videos:cached
- ./.tradingview-session:/app/.tradingview-session:cached
- ./prisma:/app/prisma:cached
# X11 forwarding for GUI display (when ALLOW_MANUAL_CAPTCHA=true)
- /tmp/.X11-unix:/tmp/.X11-unix:rw
# Development source code volumes for hot reloading
- ./app:/app/app:cached
- ./lib:/app/lib:cached
- ./components:/app/components:cached
- ./package.json:/app/package.json:ro
# Mount root JavaScript files for Enhanced Risk Manager
- ./start-enhanced-risk-manager.js:/app/start-enhanced-risk-manager.js:ro
# Port mapping for development
ports:
- "9001:3000"
# X11 and display configuration for manual CAPTCHA solving
privileged: true
# Faster health check for development
healthcheck:
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://localhost:3000/ || exit 1"]
interval: 10s
timeout: 5s
retries: 2
start_period: 15s
# Enhanced Risk Manager as separate service
risk_manager:
container_name: enhanced_risk_manager
build:
context: .
dockerfile: Dockerfile
args:
- BUILDKIT_INLINE_CACHE=1
- NODE_VERSION=20.11.1
- PNPM_VERSION=8.15.1
# Override entrypoint and command to run Enhanced Risk Manager directly
entrypoint: []
command: ["node", "start-enhanced-risk-manager.js"]
# Enhanced Risk Manager environment
environment:
- NODE_ENV=development
- DOCKER_ENV=true
- DATABASE_URL=file:./prisma/dev.db
- TZ=Europe/Berlin
# Load environment variables from .env file
env_file:
- .env
# Enhanced Risk Manager volumes
volumes:
- ./lib:/app/lib:cached
- ./prisma:/app/prisma:cached
- ./start-enhanced-risk-manager.js:/app/start-enhanced-risk-manager.js:ro
# Working directory
working_dir: /app
# Depends on the main app being healthy
depends_on:
app:
condition: service_healthy
# Restart policy
restart: unless-stopped