Compare commits

..

No commits in common. "d505268b300119d5a116ea43d45a88f4025152fd" and "5f20ba0de346a3ec3e50b018de8adffe81ce99ca" have entirely different histories.

5 changed files with 21 additions and 21 deletions

View file

@ -15,9 +15,9 @@ mt5server_port="8001"
MT5_CMD_OPTIONS="${MT5_CMD_OPTIONS:-}"
mono_url="https://dl.winehq.org/wine/wine-mono/10.3.0/wine-mono-10.3.0-x86.msi"
python_url="https://www.python.org/ftp/python/3.11.9/python-3.11.9-amd64.exe"
# Broker-Installer wird mit ins Image kopiert (Metatrader/vantagemarkets5setup.exe).
# Broker-Installer wird mit ins Image kopiert (Metatrader/vantageinternational5setup.exe).
# Fehlt er, wird das generische MetaQuotes-Terminal installiert.
broker_setup="/Metatrader/vantagemarkets5setup.exe"
broker_setup="/Metatrader/vantageinternational5setup.exe"
mt5setup_url="https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5setup.exe"
program_files="/config/.wine/drive_c/Program Files"

Binary file not shown.

Binary file not shown.

View file

@ -1,7 +1,7 @@
MT5_LOGIN=17205580
MT5_PASSWORD=PfXb49ntGVUv@
MT5_SERVER=VantageInternational-Live 1
MT5_PATH=C:\Program Files\Vantage Markets MT5 Terminal\terminal64.exe
MT5_LOGIN=
MT5_PASSWORD=
MT5_SERVER=
MT5_PATH=C:\Program Files\PU Prime MT5 Terminal\terminal64.exe
API_ID="28487993"
API_HASH="b14b06cec21a72b5cb2773ea782c7057"

View file

@ -1,13 +1,13 @@
services:
# 1. MetaTrader 5 (Wine + KasmVNC) – startet selbst den RPyC-Server auf 8001
mt5-gx:
mt5:
build: . # eigenes Dockerfile mit Fix
image: mt5-vnc-gx:local # eigener Name – nicht mit dem Upstream-Image verwechseln
container_name: mt5-gx
image: mt5-vnc:local # eigener Name – nicht mit dem Upstream-Image verwechseln
container_name: mt5
volumes:
- ./config:/config
ports:
- 3010:3000 # Web-UI
- 3001:3000 # Web-UI
# 8001 (RPyC) bewusst NICHT veröffentlicht – ungeschützter Vollzugriff auf MT5
env_file:
- .env # CUSTOM_USER / PASSWORD = VNC-Login fürs Web-UI
@ -20,17 +20,17 @@ services:
retries: 5
# 2. MCP-Server (FastAPI) – spricht per RPyC mit MT5, Broker-Login aus bots.env
mt5-mcp-gx:
mt5-mcp:
build: ./bots
image: mt5-bots-gx:local
container_name: mt5-mcp-gx
command: ["python", "mcp_server.py", "--live", "--rpyc-host", "mt5-gx", "--rpyc-port", "8001"]
image: mt5-bots:local
container_name: mt5-mcp
command: ["python", "mcp_server.py", "--live", "--rpyc-host", "mt5", "--rpyc-port", "8001"]
env_file:
- bots.env
ports:
- 127.0.0.1:8010:8000 # nur lokal – hat Order-Endpunkte ohne Auth
- 127.0.0.1:8000:8000 # nur lokal – hat Order-Endpunkte ohne Auth
depends_on:
mt5-gx:
mt5:
condition: service_healthy
restart: unless-stopped
healthcheck:
@ -42,16 +42,16 @@ services:
retries: 3
# 3. Telegram Live-Trader – handelt über den MCP-Server
live-trader-gx:
image: mt5-bots-gx:local
container_name: live-trader-gx
live-trader:
image: mt5-bots:local
container_name: live-trader
working_dir: /data # Session + diagnostics_*.json landen im Volume
# Nur Kanal 2 (HM XAUUSD) – CHANNEL2_ID kommt aus bots.env
command: >
python /app/live_signal_trader.py --live
--channels ch1
--risk-tier low
--mt5-base-url http://mt5-mcp-gx:8000
--mt5-base-url http://mt5-mcp:8000
--diagnostics-dir /data
env_file:
- bots.env
@ -60,6 +60,6 @@ services:
volumes:
- ./trader-data:/data
depends_on:
mt5-mcp-gx:
mt5-mcp:
condition: service_healthy
restart: unless-stopped