设为首页 收藏本站 切换语言

自作绕开MQL5.Community的交易信号的思路

| 发表于 2022-10-18 12:48:36 | 显示全部楼层 |复制链接
最近看到一下关于自作在内部网络拷贝交易的帖子,分享给大家。
本方法不需要从MQL5.Community订购信号,本地的交易情报当成信号,共其他主机订购跟从交易。
当前环境构成:1. 服务器侧有一台PC机,用手工交易,或者EA交易,2. 客户端侧可以有多台PC机,跟从交易
思路:在服务器侧增加一个EA(取名为MonitorTrade),其功能是检测服务器上的交易活动,一旦有交易增加或减少,则将此交易信息发布给各个客户端。交易信息的内容为货币对,买卖方向,买卖种类,lot数,open价格,新建还是关闭Position,期限等。另外,在客户端增加一个EA(取名为SlaveTrade),其功能是接受服务器发布的信息,并跟从这些信息被动交易。
要解决的问题:由于MQL4并不支持网络通讯,服务器侧的MonitorTrade不能将交易信息直接发布到客户端,客户端侧的SlaveTrade也不能直接接受服务器侧的信息。该怎么办呢?
解决问题的方法:MQL4是支持文件读写的。MonitorTrade将交易信息写入文件。另外用其他语言工具(比如VC++)编写一个服务器程序,该程序监视MonitorTrade写入的文件,并等待客户端的连接,当有文件写入是读取文件并把文件内容发送给建立链接的客户端。同样做一个客户端的程序,该程序链接到服务器,等待接收服务器发给的信息,一旦接受到信息,就写入另一个文件,此文件是提供给SlaveTrade使用的。
SlaveTrade将定时监视该文件,一旦有新的信息,则跟从这个信息进行自动交易。
这样一来,通过两个VC++的程序和文件的中转,就是先了客户端的EA能跟从服务器端的信号自动交易了。
如果是MQL5,由于MQL5已经支持网络直接通信,就不需要VC++程序作为中转了。

举报

评论 使用道具

精彩评论7

河马编程
DDD
| 发表于 2022-10-18 13:39:44 | 显示全部楼层
我已经实现了这个,不过不是用的你说的方法。
如果按照你这个思路,也要考虑好:多个信号怎么办,内存消耗怎么办。MT4/MT5之间的通用性等问题。
我叫这个为:远程跟单。
举报

点赞 评论 使用道具

biao_xiang
DD
 楼主 | 发表于 2022-10-18 13:51:40 | 显示全部楼层
多谢指教。这个方法的确有很多不足之处,不知道您是怎么实现的,能否公布出来让大家学习一下呢。
举报

点赞 评论 使用道具

qwe11
CCC
| 发表于 2022-10-18 14:54:17 | 显示全部楼层
内存消耗怎么办
举报

点赞 评论 使用道具

JOKEEBOSS
DD
| 发表于 2022-10-18 16:31:13 | 显示全部楼层
多个信号怎么办,内存消耗怎么办。
举报

点赞 评论 使用道具

ea12213
C
| 发表于 2022-10-18 19:56:34 | 显示全部楼层
会有延迟
举报

点赞 评论 使用道具

ssbienhild
DD
| 发表于 2022-10-22 10:35:27 | 显示全部楼层
有点深奥,学习了
举报

点赞 评论 使用道具

daerwushen
DD
| 发表于 2022-10-24 19:41:26 | 显示全部楼层
什么意思
举报

点赞 评论 使用道具

发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册

简体中文
繁體中文
English(英语)
日本語(日语)
Deutsch(德语)
Русский язык(俄语)
بالعربية(阿拉伯语)
Türkçe(土耳其语)
Português(葡萄牙语)
ภาษาไทย(泰国语)
한어(朝鲜语/韩语)
Français(法语)