0

我试图创建自己的小程序来将我的交易发布到 IRC。我在完成程序时遇到了麻烦。

然后我发现这个程序基本上完成了我想要做的事情。有两个问题:第一个问题是,我只想要一个简单的程序,它可以使用 mIRC 的 DDE 将我的买入、卖出、空头和覆盖发布到 IRC,因为我想以与其他交易者相同的格式发布交易。

第二个问题是,MT4 EA 似乎没有做任何事情。它没有连接到 IRC。MT4 专家和日志选项卡显示 EA 工作正常。我输入了服务器、频道和昵称的有效信息。我已经禁用了我的防火墙。我可以通过 IRC 客户端连接到服务器端口 6667。有人可以引导我朝着正确的方向前进吗?或者也许告诉我代码有什么问题?

编辑:我在 MT4 的“专家”选项卡中注意到 [握手错误:0] 和 [连接错误:0]

完整的 MT4 EA 脚本副本位于本页底部 [向下箭头]:http ://sites.google.com/site/prof7bit/irc_signal/experimental-new-version

4

2 回答 2

1

该脚本运行良好,但对我来说有点过于臃肿,而且缺少我需要的一个小功能,所以我会将我自己的版本注入其中并进行清理。

问题是服务器。我不知道为什么没有建立连接,但我在另一台服务器上尝试了脚本,它连接并发布了我的交易,速度非常快。

这打开了其他选项。因为我无法连接到其他服务器,所以我可以向 mIRC 发送命令,而 mIRC 又可以通过内部脚本处理我需要完成的事情。我宁愿不这样做,所以我希望我能找出为什么其他服务器不承认或允许我的连接。

编辑:

我在这里回答了我自己的问题。

Winsock - 为什么 ZNC(和 IRC 保镖)不接受我的 winsock 连接?

我尝试了以编程方式直接连接到 mirc 并发布交易的建议,这种方式提出了太多问题需要解决,而且对于任何实际使用来说都太慢了。我从来没有为 mirc 编写一个 dll,它的执行速度可能要快得多。如果你仍然想做这样的事情,我使用了一个名为 pywinauto 的自动化编程 python 库。

我使用上面的脚本发布我的交易,但我是通过 ZNC 保镖完成的。这样,ZNC 为我完成所有授权。我只需要通过 ZNC 进行身份验证。

于 2012-04-18T09:24:28.647 回答
0

你看过这部分剧本吗?

/**
* this will be called by start()
* every minute. The server won't 
* send us pings then. (at least 
* the unreal ircd at ircforex behaves 
* this way). So we dont need to
* handle any incoming messages at all!
*/
void keepAlive(){
   static int last_time;
   int error;
   if (TimeCurrent() - last_time > 60){
          // send an empty line to the server. This will keep pings away.
      sendLine("");
      error = WSAGetLastError();
      last_time = TimeCurrent();
      if (error != 0){
         // we were disconnected, so reconnect.
         ircconnect();
         message("reconnect after timeout.");
         messageSummary();
      }
   }
}

那可能是你的问题所在......

于 2012-08-31T23:35:27.090 回答