MetaTrader 5 Python User Group - как использовать Python в Метатрейдере - страница 51
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Выпустили новый билд питоновской библиотеки 5.0.25
Просьба обновиться через:
Господа, можно попросить добавить объекты типа:
добавить плс или __dict__, или as_dict()
В питоне куда удобнее оперировать стандартные структурами, теми же dict/list.
Хотелось бы потом, с этого класса (и других подобных) выдернуть dict, и уже с ним работать.
Вопрос по initialize(), есть
соответственно в path пути к двум терминалам которые запускаются /portable
но при этом, все вызовы initialize ломятся в последний запущенный экземпляр терминала.
соответственно MT build 2360 и MetaTrader5-5.0.26-cp38-cp38-win32.whl
Что не так? path должна использоваться с какой-то другой логикой, или в /portable надо еще что-то передавать?
Покажите реальный код, пожалуйста.
Параметры в путях мы пока не принимаем.
Покажите реальный код, пожалуйста.
Параметры в путях мы пока не принимаем.
Вот код:
Последний запущенный терминал:
"c:\Works\MT5 - terminals\ForexClub MT5\terminal64.exe"
Судя по скриншоту, обращение пошло в последний запущенный.
А хотелось бы вызвать конкретные, к которым обращался.
Параметры в путях мы пока не принимаем.
Ммм ... не совсем понял вот этот момент, значение, но ни как не параметр, в этом месте я с конфига вынимаю параметры подключения.
Вопрос по initialize(), есть
соответственно в path пути к двум терминалам которые запускаются /portable
но при этом, все вызовы initialize ломятся в последний запущенный экземпляр терминала.
соответственно MT build 2360 и MetaTrader5-5.0.26-cp38-cp38-win32.whl
Что не так? path должна использоваться с какой-то другой логикой, или в /portable надо еще что-то передавать?
Вы хотите в одном скрипте одновременно работать с 2-мя терминалами? Такой возможности нет, следующий вызов initialize разорвет соединение с первым терминалом, для такого нужно вводить сущность соединения чтобы различать разные терминалы. Работа идет только с одним текущим соединением.
у initialize есть еще 1 параметр (он еще не документирован) mt5.initialize(blabla, portable=True) для запуска Терминала жестко в portable mode.
Вы хотите в одном скрипте одновременно работать с 2-мя терминалами? Такой возможности нет, следующий вызов initialize разорвет соединение с первым терминалом, для такого нужно вводить сущность соединения чтобы различать разные терминалы. Работа идет только с одним текущим соединением.
у initialize есть еще 1 параметр (он еще не документирован) mt5.initialize(blabla, portable=True) для запуска Терминала жестко в portable mode.
Да, надо работать с несколькими терминалами запущенными в режиме portable. О том, что нельзя одновременно инициализировать соединение с двумя разными терминалами - это было видно из структуры самой либы. Тут вопросов нет.
Я пробовал это обращаться к терминалам по очереди:
вот в такой схеме, не работает. Во всех случаях ломится на последний запущенный руками в системе терминал. Даже если он был запущен из
mt5.initialize(blabla, portable=True) - особо не помогло, все равно лезет с запросом в последний запускавшийся в системе терминал.Тут спрашивают -
Форум по трейдингу, автоматизированным торговым системам и тестированию торговых стратегий
MetaTrader 5 Python User Group - краткая информация
николи шен , 2020.03.07 15:46
Существует проблема с загрузкой пакета MetaTrader 5 с использованием версии pip, которая поставляется в комплекте с python. Обходной путь должен обновить пип. Команда для обновления pip в Windows:или в venv, используя
Вы хотите в одном скрипте одновременно работать с 2-мя терминалами? Такой возможности нет, следующий вызов initialize разорвет соединение с первым терминалом, для такого нужно вводить сущность соединения чтобы различать разные терминалы. Работа идет только с одним текущим соединением.
у initialize есть еще 1 параметр (он еще не документирован) mt5.initialize(blabla, portable=True) для запуска Терминала жестко в portable mode.
Обратите внимание, что mt5.terminal_info() показываем:
значение path='C:\\Works\\MT5 - terminals\\MetaTrader 5', data_path='C:\\Works\\MT5 - terminals\\MetaTrader 5', commondata_path='C:\\Users\\rip\\AppData\\Roaming\\MetaQuotes\\Terminal\\Common'
идентичны. Так и должно быть?
Код ниже:
Вы хотите в одном скрипте одновременно работать с 2-мя терминалами? Такой возможности нет, следующий вызов initialize разорвет соединение с первым терминалом, для такого нужно вводить сущность соединения чтобы различать разные терминалы. Работа идет только с одним текущим соединением.
А в принципе создание сущности(соединение) возможно? Не думаю, что это так нужно, но на будущее.
При установке еще одного скрипта (Py) на график, первый сбрасывается. Так и должно быть?