ynagao719
@ynagao719 (Yuki)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

Pythonとの統合のためのMetaTraderモジュールをpycharmで導入方法について

解決したいこと

プログラミング初心者です。
Pythonとの統合のためのMetaTraderモジュールを使用して、pycharmでMetaTrader5の操作を行いたいと考えています。

しかし、MetaTraderモジュールのインポートする際に『ModuleNotFoundError』が出て、MetaTrader5の起動すらできない状況です。
解決方法を教えて頂きたいです。

発生している問題・エラー

Traceback (most recent call last):
  File "C:\Users\Yuki\PycharmProjects\mt5_test\main.py", line 1, in <module>
    import MetaTrader5 as mt5
  File "C:\Users\Yuki\anaconda3\lib\site-packages\MetaTrader5\__init__.py", line 257, in <module>
    from ._core import *
ModuleNotFoundError: No module named 'MetaTrader5._core'

該当するソースコード

import MetaTrader5 as mt5

# MetaTrader 5に接続する
if not mt5.initialize():
    print("initialize() failed")
    mt5.shutdown()

(MetaTrader5モジュール)

抜粋
# import C methods to our module
from ._core import *

公式HPの手順通りインストールを行い、コードをコピペしましたが実装しませんでした。

「pip install MetaTrader5」でインスト―ルすると「MetaTrader5」ファイルに下記の3つが含まれていました。
①__init__.py
②_core.cp310-win_amd64.pyd
③__pycache__ファイル

エラー内容から『MetaTrader5._core』が読み込まれていないと推測されますが、.pydファイル自体を開く事ができず内容が分かりません。
(検索しても.pydファイルに関する情報がないのでそもそもとして見れないデータからも知れないですが…汗)

自分で試したこと

分かる範囲で調べたところ以下の対応方法があったので試してみました。
①インポート対象の検索パスを追加する
➡検索パス上にモジュールはあり、読み込まれず同様のエラー
②ターミナルで実装
➡MetaTrader5が起動
ターミナルで実装できるという事は、pycharm上の設定の問題???

プログラミング初心者で勉強不足である事は重々承知の上ですが、5時間格闘して全く分からないのでお力を貸して頂けると幸いです。

0

1Answer

ターミナルで実装できるという事は、pycharm上の設定の問題

間違い無いです.ターミナルで実行されるPythonとPyCharmで実行されるPythonが異なるため生じる問題であると考えられます.

PhCharm環境に目的のライブラリをインストールしてください.

ターミナルでpython -c "import sys; print(sys.executable)"と打って出てくるPathと,PyCharmで同様のコードを書いて出てくるPathが異なるのであればそれが原因であることが確定します.

1Like

Comments

  1. @ynagao719

    Questioner

    迅速なご回答ありがとうございます。

    ご指摘の通り、PhCharmとターミナルで実行されるPythonが異なっていました。
    (PhCharm)
    C:\Users\Yuki\anaconda3\python.exe C:/Users/Yuki/PycharmProjects/mt5_test/main.py
    C:\Users\Yuki\anaconda3\python.exe
    (ターミナル)
    C:\Users\Yuki\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\python.exe

    「pip install MetaTrader5」でインスト―ルすると保存先が下記の通りになります。
    c:\users\yuki\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages

    そこで下記のディレクトリ(anaconda3/…)に保存先をコピーペーストしていますが同様のエラーが出てしまいます。
    C:\Users\Yuki\anaconda3\Lib\site-packages

    PhCharm環境に目的のライブラリをインストールするというのは上記のような意味合いではないのでしょうか?(知識が浅いため、トンチンカンな事を言ってたらすいません。。。)

    重ね重ねの質問で大変恐縮ですが、対処方法についてご指導頂けると幸いです。
  2. > PhCharm環境に目的のライブラリをインストールするというのは上記のような意味合いではない

    はい,コピペでは実現できません.

    anacondaの方のpythonを用いて
    python -m pip install MetaTrader5
    使いたいPython環境のPythonでインストールしてください.

    pip installでは,どの環境のpipなのか不明です.今後出てくる
    pip install
    は全て
    python -m pip install
    に読み替えてください.
  3. @ynagao719

    Questioner

    続けてのご回答ありがとうございます。

    ようやく仕組みが理解できまして、動作の確認ができました。

    ご丁寧にご説明頂きましてありがとうございます。

Your answer might help someone💌