13 12
发新话题
打印

[MT指标及EA] 无需增加设备在MT4上实现买卖开仓提示发送手机短信的功能

本主题由 如意 于 2008-1-25 12:05 设置高亮

无需增加设备在MT4上实现买卖开仓提示发送手机短信的功能

前  言
      对于大多数盯盘的人们来说,除去天天盯盘的工作量以外,仅仅是盘中的振荡起伏就会搞的心力憔悴,在这样的状态下就很难用理性的心态去做出正确的判断。所以就有了类似机械式交易的系统,利用计算机来帮着我们摆脱心理因素的影响,但仍然需要我们盯盘等待信号的出现,如果不在电脑旁边很有可能就会错过好的机会,俗话说“常在河边走哪有不失鞋?”因为总盯盘所以出现“随手棋”的情况也常见,所以总不能保证稳定的赢利。MT4平台提供了Alert函数能够让我们设定弹出窗口提示,这样我们不用总是盯着每个货币对,而只等待开仓信号就可以了。可是有没有更“得寸进尺”的简便方法,把这个提示信号发送到我们的手机上呢?这对于为了提高成功率而使得信号较少的交易系统尤其重要,大大减少了我们盯盘的时间,我们的“三剑合一”交易系统在设计之初就是按照开仓信号宁缺勿滥的一原则考虑,所以一直有实现此功能的想法,昨天晚上最终利用MT4平台提供的SenMail函数和邮件的短信通知功能初步达到了此目的,在此贡献出来与各位共享。好了说了这么多,想必急性子的
朋友有些着急了,到底实现的效果如何,过程复杂与否,别着急我们下面分三个步骤加以说明:

第一步:

     在交易系统增加外部变量,这样做的目的是可以通过设置改变发送的开关。
        extern bool EmailON=true;
     在信号出现的同时增加下面的代码:
        if (EmailON) SendMail(Symbol()+" 的"+DoubleToStr(Period(),0)+"分钟,开仓提示"," ");
     当然可以根据情况设置更为详细的提示信息,SendMail第一个参数是邮件的主题,会呈现在短信中。第二个参数是内容,因为从主题上我们就能得到足够的信息,不需要邮件的内容,所以可以为空。
      
第二步:
     在MT4环境下,选择工具-选项-电邮,并按照下面的图例进行设置,下面是针对126和yahoo两个邮件服务商的,应用选择其一即可:



     注意:两者设置的收件人和发件人都是自己,这不是错误而是特意的,这样做的目的就是为了后面的短信发送过滤做的准备,同时别忘了选择“启动”复选框。         

第三步:
     接下来要申请邮件的短信通知服务,126的邮箱的短信通知的功能名称是随身邮。在此我们测试了126和yahoo两个服务商,申请步骤登录邮箱之后都有详尽的步骤,在此就不在赘述了。需要特别说明的是,申请开通之后需要设定发送短信的规则,这个在相应的短信通知开通后的功能设置中都有向导,设计的规则可以是发件人自己的邮件地址,也就是自己发给自己的信就发短信通知,同时也可以在主题中定义主关键字加以过滤。最终实现的效果图如下:

      如果是发送的开仓信号,126的随身邮则会收到的信息是“你的126邮箱有来自:"xxxxx"的新邮件,主题是:USDJPY的30分钟有开仓提示,回复r阅读邮件内容”,yahoo的短信提示信息要简洁一些“您收到[name@yahoo.com]的邮件,[EURUSD的30分钟有开仓提示]”。

       由于不是专用的方法,所以这样实现美中不足的是短信有“多余”的头信息,其实我们只关心邮件主题的提示信息,其他的对我们并不重要,这一点上126不如yahoo做的人性化。但在短信的长度限定之内基本也能保证我们获取信息的完整性。另外在收短信的同时你的邮箱也会收到一份同样的信,如果感觉多余可以使用邮箱的“过滤器”功能将这些信转移到“垃圾箱”中,这样这些邮件就会自动定期得到清理了,不必担心邮箱发爆,但却不能转移到“已删除”里面,不然短信也收不到了,这是个优先级别的原因。从测试的效果来看速度还不错,几乎没有等待。既然不增加设备那么就要给服务商付点米了,费用方面都是每月10元,提供3天(72小时)的免费测试,如果你能找到免费的邮箱短信提醒则更好,到时候有这样的服务商别忘了告诉我呀,哈哈

       好了,罗罗嗦嗦这么多,不知道能不能给各位带来帮助,希望以后朋友们能有更好的功能实现手段以共享,让我们共同提高。

[ 本帖最后由 iemzaj 于 2008-1-24 12:49 编辑 ]
附件: 您所在的用户组无法下载或查看附件
本帖最近评分记录
  • 如意 威望 +20 精品文章 2008-1-25 12:05
  • 如意 金钱 +20 精品文章 2008-1-25 12:05

TOP

回复 1楼 的帖子

这是啥牌子手机啊?

TOP

与手机无关,只是一个参考

接收短信的都可以的

TOP

移动的139手机邮箱不是免费的吗?你试试看
做最好的自己

TOP

回复 4楼 的帖子

我刚试了一下,很好玩
做最好的自己

TOP

很想试试 可是看不懂第一步 。。。。哎

第一步:

     在交易系统增加外部变量,这样做的目的是可以通过设置改变发送的开关。
        extern bool EmailON=true;
     在信号出现的同时增加下面的代码:
        if (EmailON) SendMail(Symbol()+" 的"+DoubleToStr(Period(),0)+"分钟,开仓提示"," ");
     当然可以根据情况设置更为详细的提示信息,SendMail第一个参数是邮件的主题,会呈现在短信中。第二个参数是内容,因为从主题上我们就能得到足够的信息,不需要邮件的内容,所以可以为空。

TOP

太惨了,一个均线交叉给我发了N多邮件,手机都要爆了,自己程序写得不好,留下这种bug
做最好的自己

TOP

引用:
原帖由 sweetsmile0311 于 2008-1-25 11:58 发表
第一步:

     在交易系统增加外部变量,这样做的目的是可以通过设置改变发送的开关。
        extern bool EmailON=true;
     在信号出现的同时增加下面的代码:
        if (EmailON) SendMail(Symbol()+" 的"+Double ...
这个是在交易系统内部的代码。并且这个方法对于信号少而不愿意实时盯盘的人特别有用,如果是信号很多则不建议采用

TOP

引用:
原帖由 ylcz 于 2008-1-25 13:57 发表
太惨了,一个均线交叉给我发了N多邮件,手机都要爆了,自己程序写得不好,留下这种bug
一般象这种的,肯定要先测试,把发邮件的换成alert之类的

TOP

mail.139.com邮箱是免费的,而且反应很快

TOP

 13 12
发新话题