mt5linux “[Errno 111] Connection refused” не могу решить эту проблему

Вопрос или проблема

Я использую mt5linux, но когда пытаюсь подключиться к демо-счету, просто чтобы увидеть, работает ли это, у меня много ошибок:

Traceback (most recent call last):
  File "/PycharmProjects/MT5 BOT 1/main.py", line 33, in <module>
    startup = mt5_lib.start_mt5(project_settings=mt5_settings)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/mt5_lib.py", line 10, in start_mt5
    mt5 = MetaTrader5()
          ^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/mt5linux/__init__.py", line 364, in __init__
    self.__conn = rpyc.classic.connect(host,port)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/rpyc/utils/classic.py", line 76, in connect
    return factory.connect(host, port, SlaveService, ipv6=ipv6, keepalive=keepalive)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/rpyc/utils/factory.py", line 102, in connect
    s = SocketStream.connect(host, port, ipv6=ipv6, keepalive=keepalive)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/rpyc/core/stream.py", line 174, in connect
    return cls(cls._connect(host, port, **kwargs))
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/rpyc/core/stream.py", line 126, in _connect
    s = socket_backoff_connect(family, socktype, proto, sockaddr, timeout, attempts)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/PycharmProjects/MT5 BOT 1/.venv/lib/python3.12/site-packages/rpyc/lib/__init__.py", line 146, in socket_backoff_connect
    sock.connect(addr)

ConnectionRefusedError: [Errno 111] Connection refused

Process finished with exit code 1

Я фактически не использую пакет MetaTrader5, потому что он не может работать на Linux, я пытался установить его через Wine, но это не сработало, поэтому я использовал mt5linux, но меня интересует, вызывает ли это mt5linux мою проблему или это моя ошибка в коде …

Я просто хочу знать, может ли кто-нибудь хотя бы сказать, откуда происходит ошибка, я не могу продолжать разрабатывать своего бота, если не могу даже подключиться к счету ….

Я использовал settings.json с учетными данными демо-счета

"username": "*",
"password": "*",
"server": "MetaQuotes-Demo",

Возможно, это не тот сервер, который я должен использовать для демо, но я думаю, что это не проблема, я сейчас в замешательстве, был бы признателен за любую помощь. Спасибо.

Я установил пакет rpyc через pip, но он все равно не работает …

Ответ или решение

Ошибка соединения “[Errno 111] Connection refused” в библиотеке mt5linux для MetaTrader 5 — это распространенная проблема, с которой могут столкнуться пользователи, пытающиеся подключиться к демо-аккаунту. Давайте внимательно рассмотрим этот вопрос и предложим возможные пути его решения.

Понимание проблемы

Ошибка соединения означает, что программа не может установить связь с сервером. Как показано в предоставленном вами трассировке стека, выполнение программы в строке SocketStream.connect(host, port) завершается неудачей. Эта ошибка может быть вызвана несколькими причинами, и чтобы её устранить, важно проанализировать каждую из них.

Шаги по устранению неполадок

  1. Проверка параметров подключения:

    • Убедитесь, что в вашем файле settings.json указаны правильные учетные данные (имя пользователя, пароль, сервер).
    • Ваша текущая конфигурация должна выглядеть следующим образом:
      {
        "username": "ваше_имя_пользователя",
        "password": "ваш_пароль",
        "server": "MetaQuotes-Demo"
      }
    • Убедитесь, что вы используете именно тот сервер, на который хотите подключиться. Например, с использованием MetaQuotes-Demo вы не должны сталкиваться с проблемами.
  2. Проверка работы сервера:

    • Убедитесь, что сервер MetaQuotes действительно работает и доступен. Попробуйте подключиться к нему с других приложений или устройств.
    • Также проверьте, не блокирует ли ваш брандмауэр или антивирус соединение с этим сервером.
  3. Настройки rpyc:

    • Библиотека rpyc используется для удалённого вызова процедур, проверьте, правильно ли запущен rpyc-сервер. Необходимо убедиться, что он слушает на ожидаемом порту и доступен для подключения.
    • Если вы используете локальную версию rpyc, вероятно, на вашем компьютере не запущен rpyc-сервер. В этом случае следует его запустить, используя команду, подобную следующей:
      python -m rpyc_classic
  4. Проверка конфигурации сети:

    • Убедитесь, что у вас есть доступ к интернету и что нет ограничений со стороны вашего провайдера.
    • Иногда проблема может быть связана с сетевыми настройками маршрутизатора. Попробуйте временно отключить VPN или прокси, если они используются.
  5. Обновление и переустановка библиотек:

    • Убедитесь, что все ваши библиотеки, включая mt5linux и rpyc, обновлены до последних версий. Иногда проблемы могут быть вызваны конфликтующими версиями библиотек.
      pip install --upgrade mt5linux rpyc
  6. Запись сообщений журнала:

    • Добавьте дополнительные логи в вашу программу для отслеживания этапов и ошибок. Это может помочь в диагностике проблемы.

Заключение

Если все предложенные решения не помогли, стоит рассмотреть возможность обращения к сообществу пользователей mt5linux или к документации по данным библиотекам. Возможно, другие пользователи столкнулись с аналогичной проблемой и смогут предложить решение. Не стоит забывать и о том, что использование Wine для запуска MetaTrader на Linux может вызвать дополнительные сложности, что и побудило вас перейти на mt5linux.

Теперь, следуя предложенной инструкции, вы сможете диагностировать и устранить проблему соединения, что позволит вам продолжить разработку вашего торгового бота. Если потребуется дальнейшая помощь, не стесняйтесь обращаться к специализированным форумам и сообществам разработчиков.

Оцените материал
Добавить комментарий

Капча загружается...