文章 "MetaTrader 5 与 Python 的集成:接收和发送数据" - 页 6

 
Maxim Dmitrievsky:

大家好

注意事项

连接地址应添加到客户端允许的地址列表中(Tools \ Options \ Expert Advisors)。

如果连接失败,错误 5272 (ERR_NETSOCKET_CANNOT_CONNECT) 将被写入_LastError 中。

该函数只能从智能交易系统和脚本中调用,因为它们在各自的执行线程中运行。如果从指标调用,GetLastError() 返回 错误 4014 - "函数不允许调用"。



https://www.mql5.com/en/docs/network/socketconnect


你好,马克西姆-德米特里耶夫斯基、

我已经允许使用本地主机,而且运行正常。非常感谢! 但是当我使用策略测试器进行回溯测试时,错误 4014 依然存在。套接字在反向测试中不起作用?

致以最崇高的敬意
 
auuuuu1628:

你好,马克西姆-德米特里耶夫斯基、

我允许使用本地主机,现在运行正常。非常感谢! 但是当我使用策略测试器进行回溯测试时,错误 4014 依然存在。套接字在反向测试中不起作用?

谨致问候

是的,好的。Metaquotes 禁用了回溯测试 中的这一功能,但他们说也许在不久的将来会允许。

 

为什么不在收到服务器响应后立即关闭 "xxx",而要等响应超时?

我指的是 @MaximDmitrievsky 开发的神奇程序-> https://www.mql5.com/zh/articles/5691

(( socketreceive() 函数监听一个端口,并在收到服务器的响应后以字符串形式返回:))

string socketreceive(int sock, int timeout) {
        char rsp[];
        string result = "";
        uint len;
        uint timeout_check=GetTickCount()+timeout;
        do {
                len=SocketIsReadable(sock); 
                if(len){
                        int rsp_len;
                        rsp_len = SocketRead(sock,rsp,len,timeout);
                        if(rsp_len>0){
                                result+=CharArrayToString(rsp,0,rsp_len); 
                        }
                }
        } while((GetTickCount()<timeout_check) && !IsStopped());
        return result;
}

祝贺你写出这篇好文章。

Maxim Dmitrievsky
Maxim Dmitrievsky
  • www.mql5.com
Опубликовал статью Грокаем "память" рынка через дифференцирование и энтропийный анализ Область применения дробного дифференцирования достаточно широка. Например, алгоритмы машинного обучения, обычно, принимают дифференцированный ряд на вход. Проблема в том, что необходимо вывести новые данные в...
 
你好!
我想知道如何才能继续从 mql5 获取实时数据并将其附加到我的列表或数据框中。
目前,一个touple从metatrader命令中产生并转换为数据帧,但如果我们想继续获取数据并将其添加到数据帧中,该怎么办呢?
谢谢 maxim,您帮了大忙。
 

早上好,我遇到了一个 dll 错误

回溯(最近一次调用):

文件 "tete_conexao.py",第 2 行,在<module>
从 MetaTrader5 导入 *
File "C:\Users\anton\AppData\Local\Programs\Python\Python37\libsite-packages\MetaTrader5\__init__.py", line 35, in <module>.
从 .C 导入 *

ImportError: DLL load failed: The specified module could not be found.


有人知道我做错了什么吗?

 

<删除

这是一个英语论坛。请仅使用英语发帖。

 

您好、

有人能写一个示例代码,说明如何从 Python 开立 "买入 "或 "卖出 "仓位,以及如何关闭该仓位吗?

或者这不可能吗?

非常感谢!

 
Antonio Batista:

早上好,我遇到了一个 dll 错误

回溯(最近一次调用):

文件 "tete_conexao.py",第 2 行,在 <module> 中
从 MetaTrader5 导入 *
File "C:\Users\anton\AppData\Local\Programs\Python\Python37\libsite-packages\MetaTrader5\__init__.py", line 35, in <module>
从 .C import *

ImportError: DLL load failed: The specified module could not be found.


有人知道我做错了什么吗?

你好,安东尼奥、

当您尝试在非 Python for Windows 的 Python 上安装库时,通常会出现此错误。请尝试安装https://www.python.org/downloads/,看看是否能纠正错误。


谢谢

Download Python
Download Python
  • www.python.org
The official home of the Python Programming Language
 

MetaTrader5 模块不起作用

MetaTrader5导入 mt5 是这样工作的

但当从 MetaTrader5 导入 * 时(我将其完全连接,它就会在 Pycharme 中消失)。

有人能告诉我问题出在哪里吗??????

 

如何将 metatrader5 指标连接到 python。


谢谢