2026-10-29 14:39:39 +03:00 | | | # Установка и первый запуск
|
| | |
|
| | | [Документация](README.md) · [Настройки](configuration.md) · [Веб-интерфейс](user-guide.md)
|
| | |
|
| | | ## Подготовка компьютера
|
| | |
|
2026-11-01 11:14:41 +03:00 | | | Нужны Windows, Python, Git для клонирования проекта и два EXE из установки
|
| | | MetaTrader 5. Текущая реализация проверена на Python 3.14; пакеты перечислены
|
2026-10-29 14:39:39 +03:00 | | | в `requirements.txt`, зависимость от Python API `MetaTrader5` отсутствует.
|
| | |
|
2026-11-01 11:14:41 +03:00 | | | Один раз установите MT5 обычным способом либо подготовьте его `terminal64.exe`
|
| | | и `MetaEditor64.exe` для загрузки на сервер.
|
2026-10-29 14:39:39 +03:00 | | | Для работы менеджера все управляемые копии также запускаются в portable-режиме.
|
| | | Выберите каталог, в который текущий пользователь может записывать файлы.
|
| | | Приложение и терминалы должны работать от одного пользователя Windows, поскольку
|
| | | используют его общую папку `MetaQuotes/Terminal/Common/Files`.
|
| | |
|
| | | ## Размещение проекта
|
| | |
|
| | | Рекомендуемое расположение — `MQL5/Shared Projects/mt5-manager` внутри установки
|
| | | MT5. Например, при установке в `C:\MT5\MetaTrader5.1` корень проекта будет
|
| | | `C:\MT5\MetaTrader5.1\MQL5\Shared Projects\mt5-manager`.
|
| | |
|
2026-11-01 11:14:41 +03:00 | | | При таком размещении скомпилированный сервис попадает в папку
|
| | | `MQL5/Services/Shared Projects`. Исходную установку для получения EXE
|
| | | выбирайте явно в настройках независимо от размещения репозитория.
|
2026-10-29 14:39:39 +03:00 | | | Команды клонирования и создания Python-окружения приведены в [README](../README.md).
|
| | | Все команды запуска выполняются из корня проекта.
|
| | |
|
2026-11-01 11:14:41 +03:00 | | | Проект можно разместить отдельно, например в `C:\Apps\mt5-manager`.
|
| | | В настройках укажите папку исходной установки MT5 (`terminal_template`),
|
| | | например `C:\Programs\MetaTrader 5`. Она может находиться вне базовой папки
|
| | | управляемых экземпляров. Менеджер использует оба EXE именно из неё.
|
2026-10-29 14:39:39 +03:00 | | |
|
| | | ## Личная конфигурация
|
| | |
|
| | | В репозитории есть [config.example.json](../config.example.json) с пустым списком
|
| | | терминалов. Создайте из него `config.local.json`, как показано в README. Команды
|
| | | там подставляют путь к `Common/Files` текущего пользователя и создают каталог,
|
| | | если его ещё нет. Не запускайте пример с буквальным `USERNAME` в пути.
|
| | |
|
| | | `config.local.json` исключён из Git. Исходный `config.json` менять для первого
|
| | | запуска не требуется. При старте указывайте личный файл явно:
|
| | |
|
| | | ```powershell
|
| | | .\.venv\Scripts\python.exe run.py --config-file config.local.json --host 127.0.0.1 --port 8000
|
| | | ```
|
| | |
|
| | | Данные о базе, папках и существующих экземплярах описаны в
|
| | | [справочнике конфигурации](configuration.md).
|
| | |
|
| | | ## Файлы для создания терминала
|
| | |
|
2026-11-01 11:14:41 +03:00 | | | На странице «Настройки» укажите папку исходной установки, в которой находятся
|
| | | `terminal64.exe` и `MetaEditor64.exe`. Если одного из EXE нет, загрузите его через
|
| | | блок «Файлы исходной установки»: он будет сохранён прямо в указанную папку.
|
| | | Найденные EXE повторно загружать не требуется.
|
2026-10-29 14:39:39 +03:00 | | |
|
2026-11-01 11:14:41 +03:00 | | | Сервис собирается из исходного кода текущего проекта через выбранный MetaEditor.
|
2026-10-31 06:48:02 +03:00 | | | Для отдельного проекта EX5 создаётся рядом с исходником; в Shared Projects —
|
2026-11-01 11:14:41 +03:00 | | | в соответствующей подпапке `MQL5/Services`. Существующая сборка используется
|
| | | повторно, если она не старее исходника. При ошибке сборки проверьте MetaEditor
|
| | | и журнал компиляции.
|
| | |
|
2026-11-01 19:40:01 +03:00 | | | `servers.dat` можно выбрать отдельно при создании каждого экземпляра; загрузка
|
| | | необязательна, если нужные серверы уже доступны терминалу. Возьмите файл
|
2026-11-01 11:14:41 +03:00 | | | из папки `config` своего локального терминала, где уже есть нужный торговый сервер.
|
| | | Если его нет, предварительно найдите брокера в диалоге открытия счёта.
|
| | | Списки серверов разных экземпляров могут различаться; общего файла для всех нет.
|
| | | Менеджер копирует выбранный файл только в создаваемую папку и не обновляет другие
|
| | | терминалы.
|
2026-10-29 14:39:39 +03:00 | | |
|
| | | ## Первый экземпляр
|
| | |
|
| | | Проверьте `mt5_folder` и исходные файлы в настройках. На главной странице нажмите
|
| | | «Новый терминал». Можно оставить счёт пустым или указать уже существующие логин,
|
| | | сервер и пароль. Менеджер не открывает демо- или реальные счета самостоятельно.
|
| | |
|
| | | Создание завершится только после получения свежего состояния от сервиса, а при
|
| | | заданных реквизитах — после проверки первого подключения и повторного обычного
|
| | | запуска. Последовательность и возможные ошибки разобраны в
|
| | | [руководстве по интерфейсу](user-guide.md).
|
| | |
|
| | | ## Уже установленные экземпляры
|
| | |
|
2026-10-31 07:26:44 +03:00 | | | Укажите их базовую папку в `mt5_folder` и добавьте имена подпапок в `terminals`
|
| | | личной конфигурации. Отдельное расположение для экземпляра не задаётся.
|
2026-10-29 14:39:39 +03:00 | | | В каждом должен быть сервис по пути
|
| | | `MQL5/Services/Shared Projects/mt5-manager/ServiceStateWriter.ex5` и файл
|
| | | `config/services.ini` из `static/services.ini`. Значение `InpDatabase` должно
|
| | | совпадать с именем базы менеджера; формат файла — UTF-16.
|
| | |
|
| | | После изменения JSON вручную перезапустите менеджер. Способ развёртывания
|
| | | сервиса сразу по нескольким существующим терминалам и ограничения скрипта
|
| | | описаны в [руководстве по эксплуатации](maintenance.md).
|