В случае, если кто-то никогда не работал с ZeroMQ,
здесь можно с первого взгляда посмотреть на "ZeroMQ Принципы менее чем за Пять секунд"
, прежде чем углубляться в подробности
Исходный код DWX_ZeroMQ_Connector()
, предоставленный как есть, страдает от нескольких недостатков ZeroMQ в самообслуживании. защита узла связи от взаимоблокировки и отсутствие нескольких касаний для достижения надежности программного обеспечения профессионального уровня.
Тем не менее, самое большое предупреждение - явный оператор только для Win10 + подчиняется всем зависимостям DLL + НЕ ИСПОЛЬЗУЕТСЯ в я Python + не обновляюсь до v2.0.2 , поэтому следуйте ему, пока авторы не опубликуют sh стабильную и надежную версию. Если кто-то решил выстрелить себе в собственную ногу, это может быть мудрым шагом, чтобы никогда не выстрелить себе в собственную ногу и не делать прямо противоположное, а затем попросить сообщество StackOverflow помочь и спасти самоуничтоженную ногу, не так ли?
( v2.0.2 в настоящее время в бета-тестировании, пожалуйста, не обновляйте до v2.0.2 )
...
5) Этот проект и весь сопровождающий его исходный код должны выполняться автономно (например, через консоль Python или I Python , или пакетный процесс).
6) Пожалуйста НЕ запускайте этот код в Jupyter или I Python Ноутбуках.
7) Зависимости проекта требуют MS VC ++ Библиотеки . Без них вы можете столкнуться с ошибками «истечения времени ожидания ресурса». DLL в проектах зависимостей (mql-zmq, libzmq, libsodium) требуют , чтобы у вас была установлена последняя версия Visual C ++ runtime (2015) библиотеки.
8) Этот проект не тестировался в эмулируемых средах (например, WINE, VMWare и др. c).
9) Этот проект в настоящее время предназначен для использования исключительно в Windows 10 средах.
StackOverflow поощряет пользователей соблюдать Политики при публикации высококачественных Вопросов. В этом смысле было бы справедливо опубликовать:
- a полная копия всех
print
-едных ответов от запущенного DWX_ZeroMQ_Connector()
- копия журнала терминала MetaTrader, в которой были сделаны подключения с узла python к узлу терминала MetaTrader.
- копия параметров MQL4-кода терминала MetaTrader:
![enter image description here](https://i.stack.imgur.com/vedm5.png)
- копия доказательства активной работы терминала MetaTrader - получение торговых заявок и нажмите QUOTE-обновления:
![enter link description here](https://i.stack.imgur.com/darwC.gif)
Лучше проверьте все опубликованные условия совместимости Darwinex выше и проверьте свое соответствие установленным правилам.
По-прежнему отсутствует: полная копия [ Терминала Metatrader JOURNAL (журнал) ] с первой строки:
2020.04.12 11: 10: 46.093 MetaTrader - {BrokerEntity} сборка 1090 запущена ({WhiteLabel}) до конца эксперимента. - user3666197 23 часа a go
hi @ user3666197 Я загрузил в мой репозиторий github репозиторий и Журнал терминала, а также удалил ненужную информацию (индикаторы инициализированы, .et c ) для вашего удобства :) - tiensison 51 мин. go
StackOverflow настоятельно не рекомендует ссылаться на сторонние ресурсы, тем более со слабыми или вообще отсутствующими ссылками. Поместите все относящиеся к проблеме данные (, а не для my удобство) в качестве состояния политик StackOverflow для передового опыта сообщества.
ЭПИЛОГ: " ... не удалось получить ответы от МТ4 ..." , ну не так ...
Проблема (не получен МТ4. PUSH
-es) вызвано непониманием правил игры, а шаги, необходимые для рабочего решения, скрыты в -3- разных местах:
1) API- издатель, Darwinex , возможно, где-то задокументировал это, но первый провал - попытка использовать один и тот же TCP-порт # три раза, у которого нет другого шанса, кроме как взломать sh любые такие поздние попытки получить уже полученный ресурс (так как код, связанный с ZeroMQ в версии 2.0.1 (как есть, поскольку у меня были шансы просмотреть), не использует надлежащие параметры самозащиты, эти сбои могут блокировать любые другие варианты использования из-за зависания Context()
- экземпляры, некоторые могут сохраняться даже до перезагрузки O / S.
2) Инициализация Expert явно отключена в 2 из 3 случаев запуска, когда-либо получать уведомления о MT4. PUSH
-ed FxMarketEVENTs (QUOTE
- (tick) -data), почетным пользователем ее / его / х / жидкость / * - self
3) Вы ложно ожидаете, что код v2.0.1-RC8 что-то делать, это было явно установлено в императивной настройке кода, чтобы не делать (опять-таки, API-издатель, Darwinex , мог бы где-то задокументировать эту слабость, но учитывая, что Брокер свободен назвать торгуемые инструменты свободными как позволяют условия лицензии и ограничения конфигурации пакета MT4-Server для MetaQuotes, это ваш головной удар, если вы не адаптируете код для соответствия фактическим _Symbol
именам своего брокера и headbang в третий раз из-за всех этих несоответствий дела)
0 16:33:20.270 DWX_ZeroMQ_Server_v2.0.1_RC8 EURUSDm,H1 inputs: PROJECT_NAME = DWX_ZeroMQ_MT4_Server;
ZEROMQ_PROTOCOL = tcp;
HOSTNAME = *;
PUSH_PORT = 32768;
PULL_PORT = 32769;
PUB_PORT = 32770;
MILLISECOND_TIMER = 1;
t0 = --- Trading Parameters ---;
MagicNumber = 123456;
MaximumOrders = 1;
MaximumLotSize = 0.01;
MaximumSlippage = 3;
DMA_MODE = true;
t1 = --- ZeroMQ Configuration ---;
Publish_MarketData = false;
###########################################################################^^^^^^^^^^^^^^^^^^--------!!!!!!-( YOU OWE ME A BEER ................... )
Вы должны мне пиво ...