[MT4指标]区间突破指标
主图指标
mt4指标类型:趋势指标
是否能用在mt4手机版上:否
是否含有未来函数:无
修改那些使用黑色背景4图表|
[backcolor=rgb(235, 239, 249)]/ / |,我想你会发现这些颜色对眼睛更容易| [/backcolor]
/ / |这个指标会帮助你增加识别突破|
/ / ------------------------------------------------
[backcolor=rgb(245, 245, 245)]------------------ [/backcolor]
/ / ------------------------------------------------
[backcolor=rgb(245, 245, 245)]------------------ [/backcolor]
/ / |突围 - EAGLE.mq4 |
/ / | hapalkos |
/ / | 2007.02.11 |
/ / |修改,使矩形不重叠|
/ / |这使得色彩选择更加灵活|
[backcolor=rgb(245, 245, 245)]/ / |代码合并|[/backcolor]
//+------------------------------------------------------------------+ //| BreakOut-EAGLE.mq4 | //| Color Modified by ut2DaMax | //| 2007.10.14 | //| ++ modified for those that use Black Backgrounds 4 Charts | //| ++ and I think you will find these colors easier on the eyes | //| ++ this indicator will help you indentify the breakouts | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| BreakOut-EAGLE.mq4 | //| hapalkos | //| 2007.02.11 | //| ++ 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 = "05:00"; extern string periodEnd = "08:00"; extern string BoxEnd = "23:00"; extern int BoxBreakOut_Offset = 1; extern color BoxHLColor = C'44,50,48'; extern color BoxBreakOutColor = C'97,82,43'; extern color BoxPeriodColor = White; //+------------------------------------------------------------------+ //| 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));
}
//+------------------------------------------------------------------+
BreakOut-EAGLE__ut2DaMax.jpg
[backcolor=rgb(235, 239, 249)]/ / |,我想你会发现这些颜色对眼睛更容易| [/backcolor]
/ / |这个指标会帮助你增加识别突破|
/ / ------------------------------------------------
[backcolor=rgb(245, 245, 245)]------------------ [/backcolor]
/ / ------------------------------------------------
[backcolor=rgb(245, 245, 245)]------------------ [/backcolor]
/ / |突围 - EAGLE.mq4 |
/ / | hapalkos |
/ / | 2007.02.11 |
/ / |修改,使矩形不重叠|
/ / |这使得色彩选择更加灵活|
[backcolor=rgb(245, 245, 245)]/ / |代码合并|[/backcolor]
//+------------------------------------------------------------------+ //| BreakOut-EAGLE.mq4 | //| Color Modified by ut2DaMax | //| 2007.10.14 | //| ++ modified for those that use Black Backgrounds 4 Charts | //| ++ and I think you will find these colors easier on the eyes | //| ++ this indicator will help you indentify the breakouts | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| BreakOut-EAGLE.mq4 | //| hapalkos | //| 2007.02.11 | //| ++ 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 = "05:00"; extern string periodEnd = "08:00"; extern string BoxEnd = "23:00"; extern int BoxBreakOut_Offset = 1; extern color BoxHLColor = C'44,50,48'; extern color BoxBreakOutColor = C'97,82,43'; extern color BoxPeriodColor = White; //+------------------------------------------------------------------+ //| 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
