MetaTrader 5 Python用户组 - 如何在Metatrader中使用Python - 页 19

 
capissimo:

1.我原来安装的是Python 3.7.2,安装了你的软件包后,命令外壳和Jupyter记事本弹出了同样的错误:RuntimeError: IPC调用失败

2.我撕掉了Python 3.7.2,安装了Python 3.8,但是同样的情况--它在Python 3.8中无法安装。

3.安装了Anaconda Python,特别是为Python 3.7.2创建了一个虚拟环境,并尝试使用你的软件包并运行例子--同样的观点,但在侧面:RuntimeError:IPC调用失败

因此,在Python 3.8中,该软件包根本就没有安装。在Python 3.7.2中出现RuntimeError:IPC调用失败观点
 
Maxim Dmitrievsky:

做错事

马克西姆-德米特里耶夫斯基

关于如何处理数据的一个很好的教程,如果有一些你不知道的东西,但已经忘记了,就可以用MO的方式。包括一个关于如何停止认为Python是弱智的提示。

https://jakevdp.github.io/PythonDataScienceHandbook/

下面是Python 3.8中的报告


C:\Users\labor>pip install MetaTrader5

收集MetaTrader5

Using cached https://files.pythonhosted.org/packages/3c/c8/713f1b8283cbbdef30dc9cf50a5d767f9b4a194eb4f886a8e50074b696a1/MetaTrader5-5.0.6.tar.gz

安装收集的软件包:MetaTrader5

为MetaTrader5运行setup.py安装 ...错误

ERROR: 命令出错,退出状态1。

命令:'c:\python38\python.exe' -u -c'import sys, setuptools, tokenize; sys.argv[0] = '"'C:\Users\\\\labor\AppData\Local\Temp\p-install-283aremb\MetaTrader5\setup。py'"'"'; __file__='"'"'C:\\Users\\labor\\AppData\\Local\\Temp\\pip-install-283aremb\\MetaTrader5\\setup.py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-t10_91ai\install-record.txt' --single-version-externalaged --compile

cwd: C:Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\

完整的输出(16行)。

运行安装

运行建设

运行build_py

创造建设

创建build/lib.win-amd64-3.8

创建build\lib.win-amd64-3.8\MetaTrader5

复制MetaTrader5\__init__.py -> build\lib.win-amd64-3.8\MetaTrader5

运行 build_ext

建立'MetaTrader5.C'扩展

创建 build/temp.win-amd64-3.8

创建 build/temp.win-amd64-3.8/Release

创建 build\temp.win-amd64-3.8\release\src

创建 build\temp.win-amd64-3.8\Release\src\Interprocess

创建 build\temp.win-amd64-3.8\Release\src\Connector

cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DUNICODE -Isrc -Ic:\python38\include -Ic:\python38\include /EHsc /Tpsrc/MetaTrader.cpp /Fobuild\temp.win-amd64-3.8\Releasesrc/MetaTrader.obj

error: command 'cl.exe' failed: No such file or directory

----------------------------------------

ERROR: Command errored out with exit status 1: 'c:\python38\python.exe' -u -c ' import sys, setuptools, tokenize; sys.argv[0] = '"''C:\Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\setup.py''; __file_''''C:\Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\setup.py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-t10_91ai\install-record.txt' --single-version-externally-managed --compile 检查日志以查看完整的命令输出。


下面是Python 3.7.2中的报告

在Python 3.7.2下的JreBrains IDE中创建了一个项目。加载测试文件metatrader5-test.py,得到了同样的结果。

C:\Users\labor\Anaconda3\envs\metatrader5\python.exe C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py

回溯(最近的一次调用)。

文件 "C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py", 第10行, in <module>.

ticks1 = MT5CopyTicksFrom('EURAUD', datetime(2019,1,28,13), 10000, MT5_COPY_TICKS_ALL)

[2, 'Exness-MT5Real', '0000000'] # 零点关闭实数代码。

RuntimeError: IPC调用失败

[500, 2174, '11 Oct 2019']

进程结束,退出代码为1


注意:在选项->专家顾问中添加了localhost。不起作用。

 
capissimo:

偶然发现:

ticks1= MT5CopyTicksFrom("EURAUD", datetime(2019,1,28,13),10000, MT5_TICKS_ALL)

...

RuntimeError: IPC调用失败


通过r(原始)到终端的路径。当然,终端本身也被检测到了。

当这种情况发生时,终端是否在工作,即它没有被冻结(例如,菜单在工作)?
 
capissimo:

下面是Python 3.8中的报告


C:\Users\labor>pip install MetaTrader5

收集MetaTrader5

Using cached https://files.pythonhosted.org/packages/3c/c8/713f1b8283cbbdef30dc9cf50a5d767f9b4a194eb4f886a8e50074b696a1/MetaTrader5-5.0.6.tar.gz

安装收集的软件包:MetaTrader5

为MetaTrader5运行setup.py安装 ...错误

ERROR: 命令出错,退出状态1。

命令:'c:\python38\python.exe' -u -c'import sys, setuptools, tokenize; sys.argv[0] = '"'C:\Users\\\\labor\AppData\Local\Temp\p-install-283aremb\MetaTrader5\setup。py''; __file_'''''C:\Users\labor\AppData\Local\Temp\p-install-283aremb\MetaTrader5\setup。py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-t10_91ai\install-record.txt' --single-version-externalaged --compile

cwd: C:Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\

完整的输出(16行)。

运行安装

运行建设

运行build_py

创造建设

创建build/lib.win-amd64-3.8

创建build\lib.win-amd64-3.8\MetaTrader5

复制MetaTrader5\__init__.py -> build\lib.win-amd64-3.8\MetaTrader5

运行 build_ext

建立'MetaTrader5.C'扩展

创建build/temp.win-amd64-3.8

创建build/temp.win-amd64-3.8/Release

创建 build\temp.win-amd64-3.8\release\src

创建 build\temp.win-amd64-3.8\Release\src\Interprocess

创建 build\temp.win-amd64-3.8\Release\src\Connector

cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DUNICODE -Isrc -Ic:\python38\include -Ic:\python38\include /EHsc /Tpsrc/MetaTrader.cpp /Fobuild\temp.win-amd64-3.8\Releasesrc/MetaTrader.obj

error: command 'cl.exe' failed: No such file or directory

----------------------------------------

ERROR: Command errored out with exit status 1: 'c:\python38\python.exe' -u -c ' import sys, setuptools, tokenize; sys.argv[0] = '"''C:\Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\setup.py''; __file_''''C:\Users\labor\AppData\Local\Temp\pip-install-283aremb\MetaTrader5\setup.py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-t10_91ai\install-record.txt' --single-version-externally-managed --compile 检查日志以查看完整的命令输出。


下面是Python 3.7.2中的报告

在Python 3.7.2下的JreBrains IDE中创建了一个项目。加载测试文件metatrader5-test.py,得到了相同的结果。

C:\Users\labor\Anaconda3\envs\metatrader5\python.exe C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py

回溯(最近的一次调用)。

文件 "C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py", 第10行, in <module>.

ticks1 = MT5CopyTicksFrom('EURAUD', datetime(2019,1,28,13), 10000, MT5_COPY_TICKS_ALL)

[2, 'Exness-MT5Real', '0000000'] # 零点关闭实数代码。

RuntimeError: IPC调用失败

[500, 2174, '11 Oct 2019']

进程结束,退出代码为1


注意:在选项->专家顾问中添加了localhost。不起作用。

在第一种情况下,我想我需要一些编译器来构建软件包。开发人员会回答。我在3.7版本中一切正常。

 
Almaz:
当这种情况发生时,终端是否在工作,即它没有被冻结(例如,菜单在工作)?
终端正在正常工作。
 
Maxim Dmitrievsky:

在第一种情况下,你需要某种编译器,我理解,来构建软件包。开发人员会回答。我在3.7版本中一切正常。

如果没有这个包的Git,没有这个包的来源,又如何来梳理它呢?
 
capissimo:
如果没有这个包的Git,没有源代码,如何编译呢?
当软件包安装在你的电脑上时,它就会自己编译,你需要安装一些C编译器,比如日志中说的cL.exe。这个过程在你身上找不到
 
Maxim Dmitrievsky:
当软件包安装在你的电脑上时,它就会自己编译,为此你需要安装一些cis编译器,例如日志中所说的cL.exe。这个过程不能和你一起找到它

下载了VC_redist.x64.exe。到目前为止还没有运气,我确信我不应该这样做--这取决于开发商,不是吗?至少应该有详细的文件,考虑到所有情况。Universum没有那么大--只有3个分支的操作系统--Win/Linux/MacOS。

C:\Users\labor>pip install MetaTrader5

收集MetaTrader5

Using cached https://files.pythonhosted.org/packages/3c/c8/713f1b8283cbbdef30dc9cf50a5d767f9b4a194eb4f886a8e50074b696a1/MetaTrader5-5.0.6.tar.gz

安装收集的软件包:MetaTrader5

为MetaTrader5运行setup.py安装 ...错误

ERROR: 命令出错,退出状态为1。

命令:'c:\python38\python.exe' -u -c'import sys, setuptools, tokenize; sys.argv[0] = '"'C:\Users\\\\labor\AppData\Local\\\\Temp\p-install-d68bdu0o\MetaTrader5\setup。py'"'"'; __file__='"'"'C:\\Users\\labor\\AppData\\Local\\Temp\\pip-install-d68bdu0o\\MetaTrader5\\setup.py'';f=getattr(tokenize, '''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-mt16672p\install-record.txt' --single-version-externally-managed --compile

cwd: C:Users\labor\AppData\Local\Temp\pip-install-d68bdu0o\MetaTrader5\

完整的输出(16行)。

运行安装

运行建设

运行build_py

创造建设

创建build/lib.win-amd64-3.8

创建build\lib.win-amd64-3.8\MetaTrader5

复制MetaTrader5\__init__.py -> build\lib.win-amd64-3.8\MetaTrader5

运行 build_ext

建立'MetaTrader5.C'扩展

创建 build/temp.win-amd64-3.8

创建build/temp.win-amd64-3.8/Release

创建 build\temp.win-amd64-3.8\release\src

创建 build\temp.win-amd64-3.8\Release\src\Interprocess

创建 build\temp.win-amd64-3.8\Release\src\Connector

cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DUNICODE -Isrc -Ic:\python38\include -Ic:\python38\include /EHsc /Tpsrc/MetaTrader.cpp /Fobuild\temp.win-amd64-3.8\Releasesrc/MetaTrader.obj

error: command 'cl.exe' failed: No such file or directory

----------------------------------------

ERROR: Command errored out with exit status 1: 'c:\python38\python.exe' -u -c ' import sys, setuptools, tokenize; sys.argv[0] = '"''C:\Users\labor\AppData\Local\Temp\p-install-d68bdu0o\\MetaTrader5\setup.py''; __file__''''C:\Users\labor\AppData\Local\Temp\p-install-d68bdu0o\MetaTrader5\setup。py'';f=getattr(tokenize, '''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, '''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-mt16672p\install-record.txt' --single-version-externally-managed --compile 检查日志以查看完整的命令输出。


 
capissimo:

下载了VC_redist.x64.exe。到目前为止还没有运气,我确信我不应该这样做--这取决于开发商,不是吗?

C:\Users\labor>pip install MetaTrader5

收集MetaTrader5

Using cached https://files.pythonhosted.org/packages/3c/c8/713f1b8283cbbdef30dc9cf50a5d767f9b4a194eb4f886a8e50074b696a1/MetaTrader5-5.0.6.tar.gz

安装收集的软件包:MetaTrader5

为MetaTrader5运行setup.py安装 ...错误

ERROR: 命令出错,退出状态为1。

命令:'c:\python38\python.exe' -u -c'import sys, setuptools, tokenize; sys.argv[0] = '"''C:\Users\\\\labor\AppData\Local\\\\Temp\ip-install-d68bdu0o\MetaTrader5\setup。py''; __file_''''C:\Users\labor\AppData\Local\Temp\pip-install-d68bdu0o\MetaTrader5\setup。py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-mt16672p\install-record.txt' --single-version-externally-managed --compile

cwd: C:Users\labor\AppData\Local\Temp\pip-install-d68bdu0o\MetaTrader5\

完整的输出(16行)。

运行安装

运行建设

运行build_py

创造建设

创建build/lib.win-amd64-3.8

创建build\lib.win-amd64-3.8\MetaTrader5

复制MetaTrader5\__init__.py -> build\lib.win-amd64-3.8\MetaTrader5

运行 build_ext

建立'MetaTrader5.C'扩展

创建 build/temp.win-amd64-3.8

创建build/temp.win-amd64-3.8/Release

创建 build\temp.win-amd64-3.8\release\src

创建 build\temp.win-amd64-3.8\Release\src\Interprocess

创建 build\temp.win-amd64-3.8\Release\src\Connector

cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DUNICODE -Isrc -Ic:\python38\include -Ic:\python38\include /EHsc /Tpsrc/MetaTrader.cpp /Fobuild\temp.win-amd64-3.8\Releasesrc/MetaTrader.obj

error: command 'cl.exe' failed: No such file or directory

----------------------------------------

ERROR: Command errored out with exit status 1: 'c:\python38\python.exe' -u -c ' import sys, setuptools, tokenize; sys.argv[0] = '"''C:\Users\labor\AppData\Local\Temp\pip-install-d68bdu0o\\MetaTrader5\setup.py''; __file_''''C:\Users\labor\AppData\Local\Temp\pip-install-d68bdu0o\MetaTrader5\setup。py'';f=getattr(tokenize, ''''open'', open)(__file__);code=f.read().replace(''''\r\n'', '''''\n'');f.close();exec(compile(code, __file__, ''exec'')' install --record 'C:\Users\labor\AppData\Local\Temp\pip-record-mt16672p\install-record.txt' --single-version-externally-managed --compile 检查日志以查看完整的命令输出。


我认为这正是微软的构建工具所缺少的,这就是他们所写的内容。

https://stackoverflow.com/questions/41724445/python-pip-on-windows-command-cl-exe-failed

例如,将cl.exe添加到PATH中,或者从安装它的文件夹中打开命令行,从那里用管道安装metatrader5。

开发者不需要这样做,系统只是没有看到编译器

python pip on Windows - command 'cl.exe' failed
python pip on Windows - command 'cl.exe' failed
  • 2017.01.18
  • ashishsingalashishsingal 92422 gold badges99 silver badges2323 bronze badges
  • stackoverflow.com
I'm trying to install spaCy using but I'm getting the following error .. I have VS 2015 installed, and I have the following Python install .. I tried the following SO solutions to no avail .. As...
 
Maxim Dmitrievsky:

微软的构建工具似乎正是缺少的东西,这是他们所说的。

https://stackoverflow.com/questions/41724445/python-pip-on-windows-command-cl-exe-failed

即把cl.exe添加到PATH中,或者从安装它的文件夹中打开一个命令行,然后从那里用管道安装metatrader5。

开发人员不必如此,系统只是没有看到编译器。

至少应该有详细的文件,考虑到所有情况。 Universum没有那么大--只有3个分支的操作系统--Win/Linux/MacOS。

https://visualstudio.microsoft.com/ru/downloads/?rr=https%3A%2F%2Fwww.google.com%2F,安装了微软的构建工具。该软件包现在已经安装在Python 3.8中。这个问题已经解决了。

C:\Users\labor>pip install MetaTrader5

收集MetaTrader5

Using cached https://files.pythonhosted.org/packages/3c/c8/713f1b8283cbbdef30dc9cf50a5d767f9b4a194eb4f886a8e50074b696a1/MetaTrader5-5.0.6.tar.gz

安装收集的软件包:MetaTrader5

为MetaTrader5运行setup.py安装 ...完成

成功安装MetaTrader5-5.0.6


但是!RuntimeError: IPC调用失败。

C:\Users\labor>C:\Users\labor\Anaconda3\envs\metatrader5\python.exe C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py

[2, 'Exness-MT5Real', '0000000'] # 代码在打印输出中被清零。

[500, 2174, '11 Oct 2019']

回溯(最近的一次调用)。

文件 "C:/Users/labor/Downloads/MetaTrader5-Python/metatrader5-test.py", 第10行, in <module>.

ticks1 = MT5CopyTicksFrom("EURAUD", datetime(2019,1,28,13), 10000, MT5_TICKS_ALL)

RuntimeError: IPC调用失败

Скачиваемые файлы | IDE, Code и Team Foundation Server | Visual Studio
Скачиваемые файлы | IDE, Code и Team Foundation Server | Visual Studio
  • 2019.08.29
  • visualstudio.microsoft.com
Интегрированное комплексное решение для разработчиков, обеспечивающее высокую производительность и удобную координацию между командами любых размеров. Дополнительные сведения см. в Заметках о выпуске. Повышайте производительность с помощью профессиональных инструментов разработки и служб, предназначенных для создания приложений для любой...