Обсуждение статьи "От клонирования и коммитов к CI: Расширенные возможности MQL5 Algo Forge"

Опубликована статья От клонирования и коммитов к CI: Расширенные возможности MQL5 Algo Forge:

Мы разбираем возможности Algo Forge, важные для повседневной работы с MQL5: открытие репозиториев в MetaEditor, перевод README, вкладку Units, защиту веток и тегов, внесение правок в браузере, пакеты и CI на хосте с Windows. В статье приведены точные настройки и необходимые метки раннера, а также показано, как разрешать слияние (merge) только после успешной сборки. Вы получите воспроизводимые инструкции по защите кода, автоматизации компиляции и публикации артефактов.

Существующие материалы по MQL5 Algo Forge охватывают основы: создание репозитория и коммитов из MetaEditor, операции push и pull, создание веток. В этой статье рассматриваются следующие шаги. Я последовательно изучил возможности платформы и проверил каждую на действующем экземпляре сервиса: Algo Forge построен на Forgejo, но возможности из документации Forgejo не всегда включены в этом экземпляре.

Далее — практический обзор возможностей, важных для разработки на MQL5, включая три дополнения MetaQuotes для этого сообщества и несколько ограничений, о которых стоит узнать заранее, чтобы не тратить время впустую. Для возможностей, требующих настройки, например пайплайна CI, который компилирует файлы .mq5 и помечает сборку как неуспешную при обнаружении ошибок, я привожу последовательность действий и вывод.


Автор: Shahzaib

Здравствуйте, спасибо за статью, она очень полезна.

У меня вопрос по поводу веб-хуков. Я пользовался ими (мой бот в Telegram отправлял уведомления), но несколько недель назад уведомления перестали приходить. Когда я пытаюсь открыть настройки/хуки в своём репозитории и /user/settings/hooks на уровне учётной записи, я вижу только страницу с надписью «Доступ запрещён»:

изображение


Хотя я являюсь владельцем и авторизовался.
У вас веб-хуки по-прежнему работают? Интересно, не были ли они ограничены после того, как вы тестировали их в августе, или нужно включить какую-то настройку в аккаунте. Спасибо!
Niquel Mendoza #:
Здравствуйте, спасибо за статью, она очень полезна.

У меня вопрос по поводу веб-хуков. Я пользовался ими (мой бот в Telegram отправлял уведомления), но несколько недель назад уведомления перестали приходить. Когда я пытаюсь открыть настройки/хуки в своём репозитории и /user/settings/hooks на уровне учётной записи, я вижу только страницу с надписью «Доступ запрещён»:


Хотя я являюсь владельцем и авторизовался.
У вас веб-хуки по-прежнему работают? Интересно, не были ли они ограничены после того, как вы тестировали их в августе, или нужно включить какую-то настройку в аккаунте. Спасибо!

Вебхуки пришлось временно отключить, так как некоторые пользователи начали хулиганить и пытались взломать систему.

Algo Forge продолжаем расширять и исправим часть неудобств, описанных в статье.

Исходники MQL5 теперь принудительно переводятся в UTF8+BOM во время редактирования, так что проблема с UTF16 уходит в прошлое.

Renat Fatkhullin # :

Вебхуки пришлось временно отключить, так как некоторые пользователи начали хулиганить и пытались взломать систему.

Algo Forge продолжаем расширять и исправим часть неудобств, описанных в статье.

Исходники MQL5 теперь принудительно переводятся в UTF8+BOM во время редактирования, так что проблема с UTF16 уходит в прошлое.

Зачем в кодовой базе использовать UTF8+BOM, если в MetaEditor используется UTF8?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Новая версия платформы MetaTrader 5 build 6060: Интеграция с ИИ, Passkey и удобная работа с кодом в MetaEditor

Renat Fatkhullin, 2026.07.21 08:33

Все рабочие файлы рекомендуется перевести в UTF8. Теперь это дефолтная кодировка.

Если оставлять в локальной кодировке (1251 русской, например), то в зависимости от языка интерфейса и режима "кодировка для несистемного языка", режим перекодировки будет ошибаться.


Alain Verleyen #:
UTF8+BOM, если в MetaEditor используется UTF8

как вариант из-за того что Windows сам не определился.

Если BOM есть, то PowerShell считает что это UTF-8, а если его нет то просто 8-bit ascii; что в CI сильно доставляет :-)