Мне нужно обращаться к моделям на Python - как минимум XGBoost ну и прочие распространенные библиотеки. Только переезжаю в MT5, на предыдущем месте стратегии были на C#, а доступ к моделям был через API на Python, которое и хостило модели, т.е. по API из стратегии шлешь входные данные ну и имя модели, на выходе предикт, условно.
Если считать что схема из MQL5 кода шлю Post запрос к этому же API (в ответ получаю предикт) взять за базовую схему (как я понимаю, с реализацией трудностей быть не должно), то можно ли как-то схему улучшить (читай ускорить). Т.е. вроде есть Python API, т.е. модели, можно связывать с терминалом вроде как-то можно, но стратегии со скриптом на Python, вроде и никак. Python API, вроде, даже к глобальным переменным терминала обращаться не умеет.
Через файлы и аналогичное точно проиграет варианту с API.
Реализованная интеграция с Питоном имеет ряд особенностей:
1. Скрипт Py может говорить только с терминалом и то с очень ограниченным словарным запасом. С МКЛ никакой связи.
2. Работает только в Win.
3. В терминале может быть активирован только один интерпретатор. Т.е. можно активировать только одно окружение.
4. Очень быстрая загрузка истории. Всё остальное в порядке общей очереди.
Варианты реализации связи МКЛ <-> Python:
2. Я использую проверенную связку MQL4/5 <-> R <-> Python. Работает как в мт4 так и в мт5.
3. Здесь на сайте есть много самописных связок MQL5-Python. Это на любителя.
4. Использовать БД Redis в качестве межпроцессного комутатора.
Удачи
Реализованная интеграция с Питоном имеет ряд особенностей:
1. Скрипт Py может говорить только с терминалом и то с очень ограниченным словарным запасом. С МКЛ никакой связи.
2. Работает только в Win.
3. В терминале может быть активирован только один интерпретатор. Т.е. можно активировать только одно окружение.
4. Очень быстрая загрузка истории. Всё остальное в порядке общей очереди.
Варианты реализации связи МКЛ <-> Python:
2. Я использую проверенную связку MQL4/5 <-> R <-> Python. Работает как в мт4 так и в мт5.
3. Здесь на сайте есть много самописных связок MQL5-Python. Это на любителя.
4. Использовать БД Redis в качестве межпроцессного комутатора.
Удачи
Владимир, спасибо!
После беглого знакомства ZeroMQ пока выглядит как приоритетный и наиболее интересный/подходящий вариант. В том числе с точки зрения затрат сил на реализацию.
Я только пока не уверен что в рамках варианта ZeroMQ можно из MQL5 стратегии обращаться к коду Python, в примерах наоборот только, показано, вроде - из Python идет инициатива.
Обмен двухсторонний. Просто инициирующей стороной выбран Python(client) а отвечающей эксперт (сервер). Но возможны различные варианты.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Мне нужно обращаться к моделям на Python - как минимум XGBoost ну и прочие распространенные библиотеки. Только переезжаю в MT5, на предыдущем месте стратегии были на C#, а доступ к моделям был через API на Python, которое и хостило модели, т.е. по API из стратегии шлешь входные данные ну и имя модели, на выходе предикт, условно.
Если считать что схема из MQL5 кода шлю Post запрос к этому же API (в ответ получаю предикт) взять за базовую схему (как я понимаю, с реализацией трудностей быть не должно), то можно ли как-то схему улучшить (читай ускорить). Т.е. вроде есть Python API, т.е. модели, можно связывать с терминалом вроде как-то можно, но стратегии со скриптом на Python, вроде и никак. Python API, вроде, даже к глобальным переменным терминала обращаться не умеет.
Через файлы и аналогичное точно проиграет варианту с API.