//+------------------------------------------------------------------+ //| KlPivot_Weekly_yen.mq4 by Habeeb | //| | //+------------------------------------------------------------------+ #property indicator_chart_window extern bool Daily = False; extern bool Weekly = True; extern bool Monthly = False; double YesterdayHigh; double YesterdayLow; double YesterdayClose; double Day_Price[][6]; double Pivot,S1,S2,S3,R1,R2,R3; double WeekOpen; double WeekLow; double WeekClose; double Weekly_Price[][6]; double WeekPivot,WS21,WS22,WS23,WS24,WS25,WS26,WS27,WS28,WR21,WR22,WR23,WR24,WR25,WR26,WR27,WR28; double MonthHigh; double MonthLow; double MonthClose; double Month_Price[][6]; double MonthPivot,MS1,MS2,MS3,MR1,MR2,MR3; int init() { return(0); } //-------------------------------------------------------- int deinit() { ObjectDelete("PivotLine"); ObjectDelete("R1_Line"); ObjectDelete("R2_Line"); ObjectDelete("R3_Line"); ObjectDelete("S1_Line"); ObjectDelete("S2_Line"); ObjectDelete("S3_Line"); //-------------------------------- ObjectDelete("PivotLabel"); ObjectDelete("R1_Label"); ObjectDelete("R2_Label"); ObjectDelete("R3_Label"); ObjectDelete("S1_Label"); ObjectDelete("S2_Label"); ObjectDelete("S3_Label"); //-------------------------------------------------------- ObjectDelete("WR21_Line"); ObjectDelete("WR22_Line"); ObjectDelete("WR23_Line"); ObjectDelete("WR24_Line"); ObjectDelete("WR25_Line"); ObjectDelete("WR26_Line"); ObjectDelete("WR27_Line"); ObjectDelete("WR28_Line"); ObjectDelete("WS21_Line"); ObjectDelete("WS22_Line"); ObjectDelete("WS23_Line"); ObjectDelete("WS24_Line"); ObjectDelete("WS25_Line"); ObjectDelete("WS26_Line"); ObjectDelete("WS27_Line"); ObjectDelete("WS28_Line"); //-------------------------------- ObjectDelete("WR21_Label"); ObjectDelete("WR22_Label"); ObjectDelete("WR23_Label"); ObjectDelete("WR24_Label"); ObjectDelete("WR25_Label"); ObjectDelete("WR26_Label"); ObjectDelete("WR27_Label"); ObjectDelete("WR28_Label"); ObjectDelete("WS21_Label"); ObjectDelete("WS22_Label"); ObjectDelete("WS23_Label"); ObjectDelete("WS24_Label"); ObjectDelete("WS25_Label"); ObjectDelete("WS26_Label"); ObjectDelete("WS27_Label"); ObjectDelete("WS28_Label"); //-------------------------------------------------------- ObjectDelete("MonthPivotLine"); ObjectDelete("MR1_Line"); ObjectDelete("MR2_Line"); ObjectDelete("MR3_Line"); ObjectDelete("MS1_Line"); ObjectDelete("MS2_Line"); ObjectDelete("MS3_Line"); //-------------------------------- ObjectDelete("MonthPivotLabel"); ObjectDelete("MR1_Label"); ObjectDelete("MR2_Label"); ObjectDelete("MR3_Label"); ObjectDelete("MS1_Label"); ObjectDelete("MS2_Label"); ObjectDelete("MS3_Label"); return(0); } //--------------------------------------------------------- int start() { ArrayInitialize(Day_Price,0); ArrayCopyRates(Day_Price,(Symbol()), 1440); YesterdayHigh = Day_Price[1][3]; YesterdayLow = Day_Price[1][2]; YesterdayClose = Day_Price[1][4]; Pivot = ((YesterdayHigh + YesterdayLow + YesterdayClose)/3); R1 = (2*Pivot)-YesterdayLow; S1 = (2*Pivot)-YesterdayHigh; R2 = Pivot+(R1-S1); S2 = Pivot-(R1-S1); S3 = (YesterdayLow - (2*(YesterdayHigh-Pivot))); R3 = (YesterdayHigh + (2*(Pivot-YesterdayLow))); //-------------------------------------------------------- //-------------------------------------------------------- ArrayInitialize(Weekly_Price, 0); ArrayCopyRates(Weekly_Price, Symbol(), 10080); WeekOpen = Weekly_Price[0][1]; //WeekLow = Weekly_Price[1][2]; //WeekClose = Weekly_Price[1][4]; WeekPivot = WeekOpen; WR21 = WeekPivot + 8.5; WS21 = WeekPivot - 8.5; WR22 = WeekPivot + 9.0; WS22 = WeekPivot - 9.0; WS23 = WeekPivot - 9.5; WR23 = WeekPivot + 9.5; WS24 = WeekPivot - 10.0; WR24 = WeekPivot + 10.0; WS25 = WeekPivot - 10.50; WR25 = WeekPivot + 10.5; WS26 = WeekPivot - 11.0; WR26 = WeekPivot + 11.0; WS27 = WeekPivot - 11.50; WR27 = WeekPivot + 11.50; WS28 = WeekPivot - 12.00; WR28 = WeekPivot + 12.00; //-------------------------------------------------------- //-------------------------------------------------------- ArrayInitialize(Month_Price, 0); ArrayCopyRates(Month_Price, Symbol(), 43200); MonthHigh = Month_Price[1][3]; MonthLow = Month_Price[1][2]; MonthClose = Month_Price[1][4]; MonthPivot = ((MonthHigh + MonthLow + MonthClose)/3); MR1 = (2*MonthPivot)-MonthLow; MS1 = (2*MonthPivot)-MonthHigh; MR2 = MonthPivot+(MR1-MS1); MS2 = MonthPivot-(MR1-MS1); MS3 = (MonthLow - (2*(MonthHigh-MonthPivot))); MR3 = (MonthHigh + (2*(MonthPivot-MonthLow))); //-------------------------------------------------------- if (Daily==true) { ObjectCreate("PivotLine", OBJ_HLINE,0, CurTime(),Pivot); ObjectSet("PivotLine", OBJPROP_COLOR, Magenta); ObjectSet("PivotLine", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("PivotLabel") != 0) { ObjectCreate("PivotLabel", OBJ_TEXT, 0, Time[20], Pivot); ObjectSetText("PivotLabel", "Daily Pivot", 8, "Arial", Magenta); } else { ObjectMove("PivotLabel", 0, Time[20], Pivot); } //-------------------------------------------------------- ObjectCreate("R1_Line", OBJ_HLINE,0, CurTime(),R1); ObjectSet("R1_Line", OBJPROP_COLOR, Maroon); ObjectSet("R1_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("R1_Label") != 0) { ObjectCreate("R1_Label", OBJ_TEXT, 0, Time[20], R1); ObjectSetText("R1_Label", "Daily R1", 8, "Arial", Red); } else { ObjectMove("R1_Label", 0, Time[20], R1); } //-------------------------------------------------------- ObjectCreate("R2_Line", OBJ_HLINE,0, CurTime(),R2); ObjectSet("R2_Line", OBJPROP_COLOR, Red); ObjectSet("R2_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("R2_Label") != 0) { ObjectCreate("R2_Label", OBJ_TEXT, 0, Time[20], R2); ObjectSetText("R2_Label", "Daily R2", 8, "Arial", Red); } else { ObjectMove("R2_Label", 0, Time[20], R2); } //--------------------------------------------------------- ObjectCreate("R3_Line", OBJ_HLINE,0, CurTime(),R3); ObjectSet("R3_Line", OBJPROP_COLOR, Red); ObjectSet("R3_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("R3_Label") != 0) { ObjectCreate("R3_Label", OBJ_TEXT, 0, Time[20], R3); ObjectSetText("R3_Label", "Daily R3", 8, "Arial", Red); } else { ObjectMove("R3_Label", 0, Time[20], R3); } //--------------------------------------------------------- ObjectCreate("S1_Line", OBJ_HLINE,0, CurTime(),S1); ObjectSet("S1_Line", OBJPROP_COLOR, LimeGreen); ObjectSet("S1_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("S1_Label") != 0) { ObjectCreate("S1_Label", OBJ_TEXT, 0, Time[20], S1); ObjectSetText("S1_Label", "Daily S1", 8, "Arial", LimeGreen); } else { ObjectMove("S1_Label", 0, Time[20], S1); } //--------------------------------------------------------- ObjectCreate("S2_Line", OBJ_HLINE,0, CurTime(),S2); ObjectSet("S2_Line", OBJPROP_COLOR, LimeGreen); ObjectSet("S2_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("S2_Label") != 0) { ObjectCreate("S2_Label", OBJ_TEXT, 0, Time[20], S2); ObjectSetText("S2_Label", "Daily S2", 8, "Arial", LimeGreen); } else { ObjectMove("S2_Label", 0, Time[20], S2); } //--------------------------------------------------------- ObjectCreate("S3_Line", OBJ_HLINE,0, CurTime(),S3); ObjectSet("S3_Line", OBJPROP_COLOR, LimeGreen); ObjectSet("S3_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("S3_Label") != 0) { ObjectCreate("S3_Label", OBJ_TEXT, 0, Time[20], S3); ObjectSetText("S3_Label", "Daily S3", 8, "Arial", LimeGreen); } else { ObjectMove("S3_Label", 0, Time[20], S3); } } ObjectsRedraw(); //--------------------------------------------------------- //--------------------------------------------------------- //--------------------------------------------------------- //-------------------------------------------------------- ObjectCreate("WR22_Line", OBJ_HLINE,0, CurTime(),WR22); ObjectSet("WR22_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR22_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR22_Label") != 0) { ObjectCreate("WR22_Label", OBJ_TEXT, 0, Time[30], WR22); ObjectSetText("WR22_Label", " +900", 8, "Arial", White); } else { ObjectMove("WR12_Label", 0, Time[30], WR22); } //--------------------------------------------------------- ObjectCreate("WR23_Line", OBJ_HLINE,0, CurTime(),WR23); ObjectSet("WR23_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR23_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR23_Label") != 0) { ObjectCreate("WR23_Label", OBJ_TEXT, 0, Time[30], WR23); ObjectSetText("WR23_Label", " +950", 8, "Arial", White); } else { ObjectMove("WR23_Label", 0, Time[30], WR23); } //--------------------------------------------------------- ObjectCreate("WR24_Line", OBJ_HLINE,0, CurTime(),WR24); ObjectSet("WR24_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR24_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR24_Label") != 0) { ObjectCreate("WR24_Label", OBJ_TEXT, 0, Time[30], WR24); ObjectSetText("WR24_Label", " +1000", 8, "Arial", White); } else { ObjectMove("WR24_Label", 0, Time[30], WR24); } //--------------------------------------------------------- ObjectCreate("WR25_Line", OBJ_HLINE,0, CurTime(),WR25); ObjectSet("WR25_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR25_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR25_Label") != 0) { ObjectCreate("WR25_Label", OBJ_TEXT, 0, Time[30], WR25); ObjectSetText("WR25_Label", " +1050", 8, "Arial", White); } else { ObjectMove("WR25_Label", 0, Time[30], WR25); } //--------------------------------------------------------- ObjectCreate("WR26_Line", OBJ_HLINE,0, CurTime(),WR26); ObjectSet("WR26_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR26_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR26_Label") != 0) { ObjectCreate("WR26_Label", OBJ_TEXT, 0, Time[30], WR26); ObjectSetText("WR26_Label", " +1100", 8, "Arial", White); } else { ObjectMove("WR26_Label", 0, Time[30], WR26); } //--------------------------------------------------------- ObjectCreate("WR27_Line", OBJ_HLINE,0, CurTime(),WR27); ObjectSet("WR27_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR27_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR27_Label") != 0) { ObjectCreate("WR27_Label", OBJ_TEXT, 0, Time[30], WR27); ObjectSetText("WR27_Label", " +1150", 8, "Arial", White); } else { ObjectMove("WR27_Label", 0, Time[30], WR27); } //--------------------------------------------------------- ObjectCreate("WR28_Line", OBJ_HLINE,0, CurTime(),WR28); ObjectSet("WR28_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WR28_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WR28_Label") != 0) { ObjectCreate("WR28_Label", OBJ_TEXT, 0, Time[30], WR28); ObjectSetText("WR28_Label", " ", +1200, "Arial", White); } else { ObjectMove("WR28_Label", 0, Time[30], WR28); } //-------------------------------------------------------- ObjectCreate("WS21_Line", OBJ_HLINE,0, CurTime(),WS21); ObjectSet("WS21_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS21_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS21_Label") != 0) { ObjectCreate("WS21_Label", OBJ_TEXT, 0, Time[30], WS21); ObjectSetText("WS21_Label", "-850", 8, "Arial", White); } else { ObjectMove("WS21_Label", 0, Time[30], WS21); } //--------------------------------------------------------- ObjectCreate("WS22_Line", OBJ_HLINE,0, CurTime(),WS22); ObjectSet("WS22_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS22_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS22_Label") != 0) { ObjectCreate("WS22_Label", OBJ_TEXT, 0, Time[30], WS22); ObjectSetText("WS22_Label", " -900", 8, "Arial", White); } else { ObjectMove("WS22_Label", 0, Time[30], WS22); } //--------------------------------------------------------- ObjectCreate("WS23_Line", OBJ_HLINE,0, CurTime(),WS23); ObjectSet("WS23_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS23_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS23_Label") != 0) { ObjectCreate("WS23_Label", OBJ_TEXT, 0, Time[30], WS23); ObjectSetText("WS23_Label", "-950", 8, "Arial", White); } else { ObjectMove("WS23_Label", 0, Time[30], WS23); } //--------------------------------------------------------- ObjectCreate("WS24_Line", OBJ_HLINE,0, CurTime(),WS24); ObjectSet("WS24_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS24_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS24_Label") != 0) { ObjectCreate("WS24_Label", OBJ_TEXT, 0, Time[30], WS24); ObjectSetText("WS24_Label", "-1000", 8, "Arial", White); } else { ObjectMove("WS24_Label", 0, Time[30], WS24); } //--------------------------------------------------------- //--------------------------------------------------------- ObjectCreate("WS25_Line", OBJ_HLINE,0, CurTime(),WS25); ObjectSet("WS25_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS25_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS25_Label") != 0) { ObjectCreate("WS25_Label", OBJ_TEXT, 0, Time[30], WS25); ObjectSetText("WS25_Label", "-1050", 8, "Arial", White); } else { ObjectMove("WS25_Label", 0, Time[30], WS25); } //--------------------------------------------------------- ObjectCreate("WS26_Line", OBJ_HLINE,0, CurTime(),WS26); ObjectSet("WS26_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS26_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS26_Label") != 0) { ObjectCreate("WS26_Label", OBJ_TEXT, 0, Time[30], WS26); ObjectSetText("WS26_Label", "-1100", 8, "Arial", White); } else { ObjectMove("WS26_Label", 0, Time[30], WS26); } //--------------------------------------------------------- ObjectCreate("WS27_Line", OBJ_HLINE,0, CurTime(),WS27); ObjectSet("WS27_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS27_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS27_Label") != 0) { ObjectCreate("WS27_Label", OBJ_TEXT, 0, Time[30], WS27); ObjectSetText("WS27_Label", " -1150", 8, "Arial", White); } else { ObjectMove("WS27_Label", 0, Time[30], WS27); } //--------------------------------------------------------- ObjectCreate("WS28_Line", OBJ_HLINE,0, CurTime(),WS28); ObjectSet("WS28_Line", OBJPROP_COLOR, MediumBlue); ObjectSet("WS28_Line", OBJPROP_STYLE, STYLE_SOLID); if(ObjectFind("WS28_Label") != 0) { ObjectCreate("WS28_Label", OBJ_TEXT, 0, Time[30], WS28); ObjectSetText("WS28_Label", " -1200", 8, "Arial", White); } else { ObjectMove("WS28_Label", 0, Time[30], WS28); } } //---------------------------------------------------------
Sample
Analysis
Market Information Used:
Series array that contains open time of each bar
Indicator Curves created:
Indicators Used:
Custom Indicators Used:
Order Management characteristics:
Other Features: