Compare commits
4 commits
5f20ba0de3
...
d505268b30
| Author | SHA1 | Date | |
|---|---|---|---|
| d505268b30 | |||
| 348daa69bd | |||
| d92cb36937 | |||
| 9395e60919 |
5 changed files with 21 additions and 21 deletions
|
|
@ -15,9 +15,9 @@ mt5server_port="8001"
|
||||||
MT5_CMD_OPTIONS="${MT5_CMD_OPTIONS:-}"
|
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"
|
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"
|
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/vantageinternational5setup.exe).
|
# Broker-Installer wird mit ins Image kopiert (Metatrader/vantagemarkets5setup.exe).
|
||||||
# Fehlt er, wird das generische MetaQuotes-Terminal installiert.
|
# Fehlt er, wird das generische MetaQuotes-Terminal installiert.
|
||||||
broker_setup="/Metatrader/vantageinternational5setup.exe"
|
broker_setup="/Metatrader/vantagemarkets5setup.exe"
|
||||||
mt5setup_url="https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5setup.exe"
|
mt5setup_url="https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5setup.exe"
|
||||||
program_files="/config/.wine/drive_c/Program Files"
|
program_files="/config/.wine/drive_c/Program Files"
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
BIN
Metatrader/vantagemarkets5setup.exe
Normal file
BIN
Metatrader/vantagemarkets5setup.exe
Normal file
Binary file not shown.
8
bots.env
8
bots.env
|
|
@ -1,7 +1,7 @@
|
||||||
MT5_LOGIN=
|
MT5_LOGIN=17205580
|
||||||
MT5_PASSWORD=
|
MT5_PASSWORD=PfXb49ntGVUv@
|
||||||
MT5_SERVER=
|
MT5_SERVER=VantageInternational-Live 1
|
||||||
MT5_PATH=C:\Program Files\PU Prime MT5 Terminal\terminal64.exe
|
MT5_PATH=C:\Program Files\Vantage Markets MT5 Terminal\terminal64.exe
|
||||||
|
|
||||||
API_ID="28487993"
|
API_ID="28487993"
|
||||||
API_HASH="b14b06cec21a72b5cb2773ea782c7057"
|
API_HASH="b14b06cec21a72b5cb2773ea782c7057"
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
services:
|
services:
|
||||||
# 1. MetaTrader 5 (Wine + KasmVNC) – startet selbst den RPyC-Server auf 8001
|
# 1. MetaTrader 5 (Wine + KasmVNC) – startet selbst den RPyC-Server auf 8001
|
||||||
mt5:
|
mt5-gx:
|
||||||
build: . # eigenes Dockerfile mit Fix
|
build: . # eigenes Dockerfile mit Fix
|
||||||
image: mt5-vnc:local # eigener Name – nicht mit dem Upstream-Image verwechseln
|
image: mt5-vnc-gx:local # eigener Name – nicht mit dem Upstream-Image verwechseln
|
||||||
container_name: mt5
|
container_name: mt5-gx
|
||||||
volumes:
|
volumes:
|
||||||
- ./config:/config
|
- ./config:/config
|
||||||
ports:
|
ports:
|
||||||
- 3001:3000 # Web-UI
|
- 3010:3000 # Web-UI
|
||||||
# 8001 (RPyC) bewusst NICHT veröffentlicht – ungeschützter Vollzugriff auf MT5
|
# 8001 (RPyC) bewusst NICHT veröffentlicht – ungeschützter Vollzugriff auf MT5
|
||||||
env_file:
|
env_file:
|
||||||
- .env # CUSTOM_USER / PASSWORD = VNC-Login fürs Web-UI
|
- .env # CUSTOM_USER / PASSWORD = VNC-Login fürs Web-UI
|
||||||
|
|
@ -20,17 +20,17 @@ services:
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
||||||
# 2. MCP-Server (FastAPI) – spricht per RPyC mit MT5, Broker-Login aus bots.env
|
# 2. MCP-Server (FastAPI) – spricht per RPyC mit MT5, Broker-Login aus bots.env
|
||||||
mt5-mcp:
|
mt5-mcp-gx:
|
||||||
build: ./bots
|
build: ./bots
|
||||||
image: mt5-bots:local
|
image: mt5-bots-gx:local
|
||||||
container_name: mt5-mcp
|
container_name: mt5-mcp-gx
|
||||||
command: ["python", "mcp_server.py", "--live", "--rpyc-host", "mt5", "--rpyc-port", "8001"]
|
command: ["python", "mcp_server.py", "--live", "--rpyc-host", "mt5-gx", "--rpyc-port", "8001"]
|
||||||
env_file:
|
env_file:
|
||||||
- bots.env
|
- bots.env
|
||||||
ports:
|
ports:
|
||||||
- 127.0.0.1:8000:8000 # nur lokal – hat Order-Endpunkte ohne Auth
|
- 127.0.0.1:8010:8000 # nur lokal – hat Order-Endpunkte ohne Auth
|
||||||
depends_on:
|
depends_on:
|
||||||
mt5:
|
mt5-gx:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
healthcheck:
|
healthcheck:
|
||||||
|
|
@ -42,16 +42,16 @@ services:
|
||||||
retries: 3
|
retries: 3
|
||||||
|
|
||||||
# 3. Telegram Live-Trader – handelt über den MCP-Server
|
# 3. Telegram Live-Trader – handelt über den MCP-Server
|
||||||
live-trader:
|
live-trader-gx:
|
||||||
image: mt5-bots:local
|
image: mt5-bots-gx:local
|
||||||
container_name: live-trader
|
container_name: live-trader-gx
|
||||||
working_dir: /data # Session + diagnostics_*.json landen im Volume
|
working_dir: /data # Session + diagnostics_*.json landen im Volume
|
||||||
# Nur Kanal 2 (HM XAUUSD) – CHANNEL2_ID kommt aus bots.env
|
# Nur Kanal 2 (HM XAUUSD) – CHANNEL2_ID kommt aus bots.env
|
||||||
command: >
|
command: >
|
||||||
python /app/live_signal_trader.py --live
|
python /app/live_signal_trader.py --live
|
||||||
--channels ch1
|
--channels ch1
|
||||||
--risk-tier low
|
--risk-tier low
|
||||||
--mt5-base-url http://mt5-mcp:8000
|
--mt5-base-url http://mt5-mcp-gx:8000
|
||||||
--diagnostics-dir /data
|
--diagnostics-dir /data
|
||||||
env_file:
|
env_file:
|
||||||
- bots.env
|
- bots.env
|
||||||
|
|
@ -60,6 +60,6 @@ services:
|
||||||
volumes:
|
volumes:
|
||||||
- ./trader-data:/data
|
- ./trader-data:/data
|
||||||
depends_on:
|
depends_on:
|
||||||
mt5-mcp:
|
mt5-mcp-gx:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue