顺水外汇EA交易网MT4

标题: 【资源组】Breakout_PANCA_EAGLE [打印本页]

作者: 梦不觉    时间: 2018-1-11 18:13
标题: 【资源组】Breakout_PANCA_EAGLE
[attach]23660[/attach]
该指标是用来做日内特定交易时段区间突破策略的。交易时段的开始和结束时间可任意设置,图中红色方框为交易时段区间,蓝色背景方形区域为特定交易时段区间的延伸。绿色边界为交易时段区间偏移量,可根据个人情况设置。
参数设置:
[attach]23661[/attach]
NumberOfDays 显示时段数(以天计算) 默认为50
periodBegin 时段开始时间 默认为00:00
periodEnd 时段结束时间 默认为05:00
BoxEnd 区间延伸结束时间 默认为23:00
BoxBreakOut_offset 区间边界偏移量 默认为10(这里统一为5位数平台的点值,若是4位数平台10代表1个点)
BoxHLColor 区间背景色
[attach]23662[/attach]
BoxBreakOutColor 区间边界偏移量颜色
BoxPeriodColor 特定时段颜色
建议:该指标的默认设置参数所对应的时段做区间突破或反转还是不错的。若是自己没有对外汇特定时段规律统计过的朋友还是不要改默认参数。若是有自己的时段区间突破交易模型的朋友可以根据自己的模型设定参数。
游客,如果您要查看本帖隐藏内容请
作者: 过去了    时间: 2018-1-11 19:04
//+------------------------------------------------------------------+
//|                                          BreakOutPANCA-EAGLE.mq4 |
//|                                                        hapalkos  |
//|                                                       2007.11.20 |
//|   ++ modified so that rectangles do not overlay                  |
//|   ++ this makes color selection more versatile                   |
//|   ++ code consolidated                                           |
//+------------------------------------------------------------------+
#property copyright "hapalkos"
#property link      ""
#property indicator_chart_window
//----
extern int    NumberOfDays=50;
extern string periodBegin   ="00:00";
extern string periodEnd     ="05:30";
extern string BoxEnd        ="23:00";
extern int    BoxBreakOut_Offset=10;
extern color  BoxHLColor        =MidnightBlue;
extern color  BoxBreakOutColor  =LimeGreen;
extern color  BoxPeriodColor    =OrangeRed;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
  void init()
  {
   DeleteObjects();
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
  void deinit()
  {
   DeleteObjects();
   return(0);
  }
//+------------------------------------------------------------------+
//| Remove all Rectangles                                            |
//+------------------------------------------------------------------+
  void DeleteObjects()
  {
   ObjectsDeleteAll(0,OBJ_RECTANGLE);
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
  void start()
  {
   datetime dtTradeDate=TimeCurrent();
     for(int i=0; i 5) dtTradeDate=decrementTradeDate(dtTradeDate);
     }
  }
//+------------------------------------------------------------------+
//| Create Rectangles                                                |
//+------------------------------------------------------------------+
  void DrawObjects(datetime dtTradeDate, string sObjName, string sTimeBegin, string sTimeEnd, string sTimeObjEnd, color cObjColor, int iOffSet, int iForm)
  {
   datetime dtTimeBegin, dtTimeEnd, dtTimeObjEnd;
   double   dPriceHigh,  dPriceLow;
   int      iBarBegin,   iBarEnd;
//----
   dtTimeBegin=StrToTime(TimeToStr(dtTradeDate, TIME_DATE) + " " + sTimeBegin);
   dtTimeEnd=StrToTime(TimeToStr(dtTradeDate, TIME_DATE) + " " + sTimeEnd);
   dtTimeObjEnd=StrToTime(TimeToStr(dtTradeDate, TIME_DATE) + " " + sTimeObjEnd);
//----
   iBarBegin=iBarShift(NULL, 0, dtTimeBegin);
   iBarEnd=iBarShift(NULL, 0, dtTimeEnd);
   dPriceHigh=High[Highest(NULL, 0, MODE_HIGH, iBarBegin-iBarEnd, iBarEnd)];
   dPriceLow=Low [Lowest (NULL, 0, MODE_LOW , iBarBegin-iBarEnd, iBarEnd)];
//----
   ObjectCreate(sObjName, OBJ_RECTANGLE, 0, 0, 0, 0, 0);
   ObjectSet(sObjName, OBJPROP_TIME1 , dtTimeBegin);
   ObjectSet(sObjName, OBJPROP_TIME2 , dtTimeObjEnd);
//---- High-Low Rectangle
     if(iForm==1)
     {
      ObjectSet(sObjName, OBJPROP_PRICE1, dPriceHigh);
      ObjectSet(sObjName, OBJPROP_PRICE2, dPriceLow);
      ObjectSet(sObjName, OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet(sObjName, OBJPROP_COLOR, cObjColor);
      ObjectSet(sObjName, OBJPROP_BACK, True);
     }
//---- Upper Rectangle
     if(iForm==2)
     {
      ObjectSet(sObjName, OBJPROP_PRICE1, dPriceHigh);
      ObjectSet(sObjName, OBJPROP_PRICE2, dPriceHigh + iOffSet*Point);
      ObjectSet(sObjName, OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet(sObjName, OBJPROP_COLOR, cObjColor);
      ObjectSet(sObjName, OBJPROP_BACK, True);
     }
//---- Lower Rectangle
     if(iForm==3)
     {
      ObjectSet(sObjName, OBJPROP_PRICE1, dPriceLow - iOffSet*Point);
      ObjectSet(sObjName, OBJPROP_PRICE2, dPriceLow);
      ObjectSet(sObjName, OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet(sObjName, OBJPROP_COLOR, cObjColor);
      ObjectSet(sObjName, OBJPROP_BACK, True);
     }
//---- Period Rectangle
     if(iForm==4)
     {
      ObjectSet(sObjName, OBJPROP_PRICE1, dPriceHigh + iOffSet*Point);
      ObjectSet(sObjName, OBJPROP_PRICE2, dPriceLow - iOffSet*Point);
      ObjectSet(sObjName, OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet(sObjName, OBJPROP_COLOR, cObjColor);
      ObjectSet(sObjName, OBJPROP_WIDTH, 2);
      ObjectSet(sObjName, OBJPROP_BACK, False);
     }
   string sObjDesc=StringConcatenate("High: ",dPriceHigh,"  Low: ", dPriceLow, " OffSet: ",iOffSet);
   ObjectSetText(sObjName, sObjDesc,10,"Times New Roman",Black);
  }
//+------------------------------------------------------------------+
//| Decrement Date to draw objects in the past                       |
//+------------------------------------------------------------------+
  datetime decrementTradeDate (datetime dtTimeDate)
  {
   int iTimeYear=TimeYear(dtTimeDate);
   int iTimeMonth=TimeMonth(dtTimeDate);
   int iTimeDay=TimeDay(dtTimeDate);
   int iTimeHour=TimeHour(dtTimeDate);
   int iTimeMinute=TimeMinute(dtTimeDate);
//----
   iTimeDay--;
     if (iTimeDay==0)
     {
      iTimeMonth--;
        if (iTimeMonth==0)
        {
         iTimeYear--;
         iTimeMonth=12;
        }
      // Thirty days hath September...  
      if (iTimeMonth==4 || iTimeMonth==6 || iTimeMonth==9 || iTimeMonth==11) iTimeDay=30;
      // ...all the rest have thirty-one...
      if (iTimeMonth==1 || iTimeMonth==3 || iTimeMonth==5 || iTimeMonth==7 || iTimeMonth==8 || iTimeMonth==10 || iTimeMonth==12) iTimeDay=31;
      // ...except...
      if (iTimeMonth==2) if (MathMod(iTimeYear, 4)==0) iTimeDay=29; else iTimeDay=28;
     }
   return(StrToTime(iTimeYear + "." + iTimeMonth + "." + iTimeDay + " " + iTimeHour + ":" + iTimeMinute));
  }
//+------------------------------------------------------------------+

作者: haoofz    时间: 2018-1-11 20:06
日内交易,只支持1小时级别以下,1小时可能显示一根竖直线,4H,日图级别以上就不适用了。。。
作者: SHILS    时间: 2018-1-11 21:38
该指标的默认设置参数所对应的时段做区间突破或反转还是不错的,喜欢
作者: 翘楚以待    时间: 2018-1-11 22:52
感谢分享~~~
作者: 牛仔很忙    时间: 2018-1-11 23:30
支持趋势类指标模板
作者: 天涯182    时间: 2018-1-11 23:39
该指标的默认设置参数所对应的时段做区间突破或反转还是不错的,喜欢
作者: 人民币    时间: 2018-1-12 01:01
感谢分享。
作者: koko1180    时间: 2018-1-12 01:34
学习学习

作者: ooo123    时间: 2018-1-12 02:47
谢谢分享谢谢

作者: jie777    时间: 2018-1-12 03:55

谢谢分享谢谢
作者: aetey    时间: 2018-1-12 04:47
谢谢。。。。。。学习

作者: qianmojushi    时间: 2018-1-12 05:19
这个指标有点像纏论里面的中枢。
作者: yunyun-35    时间: 2018-1-12 06:14
谢谢分享


作者: ilxn    时间: 2018-1-12 06:22
辛苦啦  顶一个
作者: moopxy    时间: 2018-1-12 07:28
辛苦啦  顶一个
作者: ysyyclnh    时间: 2018-1-12 08:29
支持趋势类指标模板
作者: haoofz    时间: 2018-1-12 10:02
还是不太明白箱体是怎么突破的。。。?




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