Отслеживать
1
1
Ответвление
У вас уже есть ответвление mt5-manager
1
ответвлён от antekov/mt5-manager
Нет описания
  • Python 63%
  • JavaScript 17.1%
  • CSS 7.6%
  • HTML 6.9%
  • MQL5 5.4%
Найти файл
Файлы репозитория (в начале последний коммит)
Имя файла Текст последнего коммита Дата последнего коммита
2026-11-02 22:40:33 +03:00
.forgejo/workflows Trigger the Windows runner check on workflow changes 2026-10-30 15:14:08 +03:00
docs Finalize part five screenshots and publication draft 2026-11-02 22:39:14 +03:00
static Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00
templates Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00
tests Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00
tools Improve terminal settings and operation notifications 2026-11-01 19:40:01 +03:00
.gitignore Support running the manager outside a MetaTrader installation 2026-10-31 06:48:02 +03:00
config.example.json Simplify terminal setup and support instance editing 2026-11-01 11:14:41 +03:00
config.json Draft version 2026-07-25 20:52:51 +03:00
config.py Simplify terminal setup and support instance editing 2026-11-01 11:14:41 +03:00
deploy_service.py Simplify terminal setup and support instance editing 2026-11-01 11:14:41 +03:00
extracticon.py Add account info, BEP, start/stop icons 2025-10-24 02:13:35 +03:00
LICENSE Initial commit 2025-10-04 08:21:12 +00:00
main.py Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00
mt5_control.py Avoid creating empty databases when reading terminal state 2026-10-31 08:21:17 +03:00
project_updates.py Ensure service autostart during deployment 2026-10-31 14:22:28 +03:00
README.md Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00
requirements.txt Добавить создание терминалов, обновление сервиса и документацию 2026-10-29 14:39:39 +03:00
run.py Добавить создание терминалов, обновление сервиса и документацию 2026-10-29 14:39:39 +03:00
ServiceStateWriter.mq5 Avoid creating empty databases when reading terminal state 2026-10-31 08:21:17 +03:00
terminal_manager.py Support terminal relocation and refresh part five illustrations 2026-11-02 18:42:23 +03:00

MT5 Manager

Веб-приложение для управления несколькими экземплярами MetaTrader 5 на Windows. Позволяет создавать терминалы, запускать и останавливать их, задавать торговые счета и просматривать состояние и финансовые показатели. Данные поступают от MQL5-сервиса через общую SQLite; Python-библиотека MetaTrader5 для работы менеджера не требуется.

Быстрый старт

Понадобятся Windows, Python (текущая версия проверена на 3.14) и хотя бы одна установка MetaTrader 5, уже запущенная в режиме /portable. Менеджер и терминалы должны работать от одного пользователя Windows.

  1. Клонируйте проект в удобную папку. Размещение внутри установки MT5 необязательно. Если выбрать MQL5/Shared Projects/mt5-manager, менеджер сможет автоматически использовать файлы этой установки без дополнительной настройки. В примере терминал установлен в C:\MT5\MetaTrader5.1:

    New-Item -ItemType Directory -Force 'C:\MT5\MetaTrader5.1\MQL5\Shared Projects' | Out-Null
    Set-Location 'C:\MT5\MetaTrader5.1\MQL5\Shared Projects'
    git clone https://forge.mql5.io/antekov/mt5-manager.git
    Set-Location mt5-manager
    
  2. Установите зависимости в отдельное окружение:

    py -3.14 -m venv .venv
    .\.venv\Scripts\python.exe -m pip install -r requirements.txt
    
  3. Подготовьте личную конфигурацию из примера. Команды подставят путь к общей папке текущего пользователя вместо USERNAME:

    $managerConfig = Get-Content config.example.json -Raw | ConvertFrom-Json
    $managerConfig.database = Join-Path $env:APPDATA 'MetaQuotes\Terminal\Common\Files\mt5-manager.sqlite'
    New-Item -ItemType Directory -Force (Split-Path -Parent $managerConfig.database) | Out-Null
    $managerConfig | ConvertTo-Json -Depth 10 | Set-Content config.local.json -Encoding utf8
    

    В примере нет счетов и существующих экземпляров. При необходимости измените mt5_folder: это базовая папка всех терминалов. Каждый экземпляр расположен в её подпапке с именем из terminals. Для изменения базовой папки через интерфейс предусмотрен перенос экземпляров с подтверждением и остановкой терминалов. Если менеджер находится внутри базовой папки, сначала разместите его отдельно.

  4. Запустите приложение из корня проекта и откройте главную страницу:

    .\.venv\Scripts\python.exe run.py --config-file config.local.json --host 127.0.0.1 --port 8000
    
  5. Откройте «Настройки», укажите базовую папку экземпляров и папку исходной установки MT5. Она может находиться вне базовой папки. Менеджер берёт из неё terminal64.exe и MetaEditor64.exe; если EXE отсутствует, его можно загрузить в эту папку через интерфейс. Сервис собирается из исходников проекта автоматически.

  6. На главной странице нажмите «Новый терминал». При необходимости выберите servers.dat с вашего компьютера для этого экземпляра; загрузка необязательна. Реквизиты счёта можно указать сразу или позже.

В настройках также доступны проверка Git-обновлений и отдельная команда сборки и распространения сервиса. Порядок обновления описан в руководстве по эксплуатации.

Если терминалу не хватает сведений о нужном брокере, загрузите servers.dat, содержащий его торговый сервер. Как подготовить файлы и разместить проект вне установки MT5, описано в руководстве по установке.

В приложении пока нет входа пользователей и разграничения прав. Для удалённой работы используйте защищённый доступ, например VPN. Параметры сети и хранения реквизитов разобраны в документации по эксплуатации.

Документация

Документация описывает текущую реализацию и обновляется вместе с кодом. Статьи сохраняют последовательность разработки и состояние соответствующей части цикла.

MQL5 Algo Forge / antekov