顺水外汇EA交易网MT4

标题: 新闻突破交易EA [打印本页]

作者: lijin86    时间: 2018-1-11 00:42
标题: 新闻突破交易EA
Beta0.0.1:
思路:
新闻发布时市价突破前六根K线最值时[图表尽量采用30分钟]入场
仓位控制:
风险可自由调节,入场设置止损位亏损控制在整个仓位的1%~50%之间,并且合理利用杠杠作用,添加预存款【爆仓不等于重仓,帐号可用资金不等于自己实际用于投资额】
入场点:
见思路【突破入场】
开仓条件:
  多单):新闻发布时K线突破前6跟K线的最大值
  空单):新闻发布时K线突破前6跟K线最小值
止损条件(止损点数):
  前六根K线振幅的N倍
止盈条件:
   定额止盈:止损的3倍【后期增加移动止损】
[ol][*]//+------------------------------------------------------------------+
[*]//|                                     NEWS_trader_V0.0.1.Bag_for_5 |
[*]//|                                                   仅适用于***USD |
[*]//|                                           By:lijin86 for 5位报价 |
[*]//| 原理:当行情高于前6根K线上10点入场,止损前6根K线波幅的N倍        |
[*]//|       安全期间,尽量用于30分钟图表,对于非***USD货币对,仓位代码不同|
[*]//+------------------------------------------------------------------+
[*]#property copyright "By lijin86 at 20130607 eurcny.cn"
[*]
[*]#define MAGICMA  20130607
[*]
[*]extern double nMultiple    =1.5;//止损倍数(前六根K线波幅倍数)
[*]extern double Fengxian     =0.02;//一次下单止损亏损本金最大比率
[*]extern int    TimeDiff     =8; //时差,北京时间与服务器时间只差(小时)
[*]extern double YucunUSD     =300;//虚拟预存资金量
[*]extern datetime startTime  =D'2013.06.07 21:30:00';//新闻公布时间
[*]
[*]
[*]double 最小下单量   =0.01;
[*]bool   正版         =true;
[*]double stopLoss;
[*]int    点差;
[*]
[*]double 计算()//全局变量赋值
[*] {
[*]   点差     =MarketInfo(Symbol(),MODE_SPREAD);
[*]   stopLoss =止损点();
[*]   return(0);
[*] }
[*]
[*]int 止损点()//计算入场止损点
[*] {
[*]  double sPoint;
[*]  
[*]  sPoint=100000*nMultiple*(High[iHighest(NULL,0,MODE_HIGH,6,1)]-Low[iLowest(NULL,0,MODE_LOW,6,1)]);
[*]  if(sPointOP_SELL) 挂单++;
[*]        }
[*]     }
[*]   if(挂单>0) return(-挂单);//通过挂单控制EA暂停下单
[*]   else       return(订单);
[*]  }
[*]
[*]//+------------------------------------------------------------------+
[*]//| Check for open order conditions  检查开仓条件                    |
[*]//+------------------------------------------------------------------+
[*]void CheckForOpen()
[*]  {
[*]   int    orderNo=0;
[*]   double orderLots=下单量();
[*]   
[*]   if(orderLots==0.0) return;
[*]   if(Ask>=High[iHighest(NULL,0,MODE_HIGH,6,1)] && Time[1]=startTime+TimeDiff*3600)
[*]     {
[*]      orderNo=OrderSend(Symbol(),OP_BUY,orderLots,Ask,30,Ask-0.00001*stopLoss,Ask+0.00003*stopLoss,"",MAGICMA,0,Red);
[*]      bool isSendBuyMassage=SendNotification("BuyOrdersMassage: BeijingTime:"+TimeToStr((TimeCurrent()+TimeDiff*60*60),TIME_DATE|TIME_SECONDS)+
[*]                                             " Price : "+DoubleToStr(Ask,5)+" ;  Lots:"+DoubleToStr(orderLots,2)+" ; stopLossPoint : "
[*]                                             +DoubleToStr(stopLoss,0)+"     &   stopLoss : "+DoubleToStr(Ask-0.00001*stopLoss,5));
[*]      if(!isSendBuyMassage)
[*]        {
[*]          Print("发送手机消息错误(",GetLastError(),")");
[*]          return(0);
[*]        }
[*]      return;
[*]     }
[*]
[*]   if(Ask=startTime+TimeDiff*3600)
[*]     {
[*]      orderNo=OrderSend(Symbol(),OP_SELL,orderLots,Bid,30,Bid+0.00001*stopLoss,Bid+0.00003*stopLoss,"",MAGICMA,0,Blue);
[*]      return;
[*]      bool isSendSellMassage=SendNotification("SellOrdersMassage: BeijingTime:"+TimeToStr((TimeCurrent()+TimeDiff*60*60),TIME_DATE|TIME_SECONDS)+
[*]                                              " Price: "+DoubleToStr(Bid,5)+" ;  Lots:"+DoubleToStr(orderLots,2)+" ; stopLossPoint : "+
[*]                                              DoubleToStr(stopLoss,0)+"     &   stopLoss : "+DoubleToStr(Bid+0.00001*stopLoss,5));
[*]      if(!isSendSellMassage)
[*]        {
[*]          Print("发送手机消息错误(",GetLastError(),")");
[*]          return(0);
[*]        }
[*]      return;
[*]     }
[*]  }
[*]
[*]
[*]
[*]//+------------------------------------------------------------------+
[*]//| Calculate optimal lot size   计算订单大小                        |
[*]//| 注:适用于五位微型账号,最小下单量0.01,变量0.01                 |
[*]//+------------------------------------------------------------------+
[*]double 下单量()
[*]  {
[*]   if(点差>100)
[*]   {
[*]    Print("当前点差:"+点差+",大于100点,市场波动太大,暂停下单");
[*]    return(0.0);
[*]   }
[*]   //仅适用于***USD货币对
[*]   double lot=NormalizeDouble((AccountEquity()+YucunUSD)*Fengxian/(stopLoss+点差)/1.0,2);//2013.05.19
[*]   if(lot复制代码使用改EA要接受亏损,像这个EA如果运行在昨天(2013.06.07)非农时,亏损,(昨天新闻事件公布的数据对美元利空、利多参半)
另附源代码
----------------------------------------------------------------------------------------------------
//简单更正排版

作者: lijin86    时间: 2018-1-11 01:14
存在浮动点差风险,新版待更正。该EA改用专用,可结合其他EA公用
作者: lijin86    时间: 2018-1-11 02:13
[ol]
  • if(统计订单(Symbol())==0) CheckForOpen();[/ol]复制代码只用空单才检查是否有开仓条件,只要用单(不论是挂单还是市价单),均直接“return(0);”。

    作者: lijin86    时间: 2018-1-11 02:23
    [ol]
  •    if(统计订单(Symbol())==0) CheckForOpen();[/ol]复制代码只下一单,该EA计算仓位也是按一单算的

    作者: 牜牜    时间: 2018-1-11 02:40
  • ;//止损倍数(前六根K线波幅倍数)
  • extern double Fengxian     =0.02;//一次


    作者: 这个你懂的!    时间: 2018-1-11 03:39
    管用么!!!!!!!!!!1
    作者: 这个你懂的!    时间: 2018-1-11 04:10
    1111111111111111111111111
    作者: xuxiangwei    时间: 2018-1-11 04:33
    520 因你更快乐
    作者: xuxiangwei    时间: 2018-1-11 04:40
    520 因你更快乐
    作者: simonlang    时间: 2018-1-11 05:43
    谢谢楼主分享
    作者: 牜牜    时间: 2018-1-11 06:41

    [attach]12476[/attach]
    [attach]12476[/attach]

    作者: 牜牜    时间: 2018-1-11 06:50
    5位报价

    作者: xzhxie    时间: 2018-1-11 07:43

    谢谢楼主分享
    作者: wangdelong    时间: 2018-1-11 08:59
    看不懂?不知运行时是下1个单还是很多单??、
    作者: wangdelong    时间: 2018-1-11 09:33

    谢谢解答

    作者: koxx    时间: 2018-1-11 10:47
    很好的 学习资料, 谢谢楼主分享
    作者: 樊涛3954    时间: 2018-1-11 12:05
    看不懂?不知运行时是下1个单还是很多单??




    欢迎光临 顺水外汇EA交易网MT4 (http://waterforex.com/) Powered by Discuz! X3.2