/*------------------------------------------------------------------+ | MA-Hector_v2.mq4 | | basisforex@gmail.com | | 05/04/2010 | +------------------------------------------------------------------*/ // идея: Hector DeVille #property indicator_chart_window //+-----------------------------------------------------------------+ int deinit() { ObjectsDeleteAll(0, OBJ_LABEL); } int start() { Comment(""); double mEU30_m1_0 = iMA(NULL, PERIOD_M1, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_m1_1 = iMA(NULL, PERIOD_M1, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_m5_0 = iMA(NULL, PERIOD_M5, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_m5_1 = iMA(NULL, PERIOD_M5, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_m15_0 = iMA(NULL, PERIOD_M15, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_m15_1 = iMA(NULL, PERIOD_M15, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_m30_0 = iMA(NULL, PERIOD_M30, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_m30_1 = iMA(NULL, PERIOD_M30, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_h1_0 = iMA(NULL, PERIOD_H1, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_h1_1 = iMA(NULL, PERIOD_H1, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_h4_0 = iMA(NULL, PERIOD_H4, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_h4_1 = iMA(NULL, PERIOD_H4, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_d1_0 = iMA(NULL, PERIOD_D1, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_d1_1 = iMA(NULL, PERIOD_D1, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_w1_0 = iMA(NULL, PERIOD_W1, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_w1_1 = iMA(NULL, PERIOD_W1, 30, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU30_Mn1_0 = iMA(NULL, PERIOD_MN1, 30, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU30_Mn1_1 = iMA(NULL, PERIOD_MN1, 30, 0,MODE_SMA, PRICE_CLOSE, 1); //------------------ double mEU50_m1_0 = iMA(NULL, PERIOD_M1, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_m1_1 = iMA(NULL, PERIOD_M1, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_m5_0 = iMA(NULL, PERIOD_M5, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_m5_1 = iMA(NULL, PERIOD_M5, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_m15_0 = iMA(NULL, PERIOD_M15, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_m15_1 = iMA(NULL, PERIOD_M15, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_m30_0 = iMA(NULL, PERIOD_M30, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_m30_1 = iMA(NULL, PERIOD_M30, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_h1_0 = iMA(NULL, PERIOD_H1, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_h1_1 = iMA(NULL, PERIOD_H1, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_h4_0 = iMA(NULL, PERIOD_H4, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_h4_1 = iMA(NULL, PERIOD_H4, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_d1_0 = iMA(NULL, PERIOD_D1, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_d1_1 = iMA(NULL, PERIOD_D1, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_w1_0 = iMA(NULL, PERIOD_W1, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_w1_1 = iMA(NULL, PERIOD_W1, 50, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU50_Mn1_0 = iMA(NULL, PERIOD_MN1, 50, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU50_Mn1_1 = iMA(NULL, PERIOD_MN1, 50, 0,MODE_SMA, PRICE_CLOSE, 1); //------------------ double mEU100_m1_0 = iMA(NULL, PERIOD_M1, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_m1_1 = iMA(NULL, PERIOD_M1, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_m5_0 = iMA(NULL, PERIOD_M5, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_m5_1 = iMA(NULL, PERIOD_M5, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_m15_0 = iMA(NULL, PERIOD_M15, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_m15_1 = iMA(NULL, PERIOD_M15, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_m30_0 = iMA(NULL, PERIOD_M30, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_m30_1 = iMA(NULL, PERIOD_M30, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_h1_0 = iMA(NULL, PERIOD_H1, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_h1_1 = iMA(NULL, PERIOD_H1, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_h4_0 = iMA(NULL, PERIOD_H4, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_h4_1 = iMA(NULL, PERIOD_H4, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_d1_0 = iMA(NULL, PERIOD_D1, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_d1_1 = iMA(NULL, PERIOD_D1, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_w1_0 = iMA(NULL, PERIOD_W1, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_w1_1 = iMA(NULL, PERIOD_W1, 100, 0,MODE_SMA, PRICE_CLOSE, 1); double mEU100_Mn1_0 = iMA(NULL, PERIOD_MN1, 100, 0,MODE_SMA, PRICE_CLOSE, 0); double mEU100_Mn1_1 = iMA(NULL, PERIOD_MN1, 100, 0,MODE_SMA, PRICE_CLOSE, 1); //=========================================================================== string m1, m5, m15, m30, h1, h4, d1, w1, Mn1; if(mEU30_m1_0 > mEU50_m1_0 && mEU50_m1_0 > mEU100_m1_0 && mEU30_m1_0 > mEU30_m1_1 && mEU50_m1_0 > mEU50_m1_1 && mEU100_m1_0 > mEU100_m1_1 && iLow(NULL, PERIOD_M1, 0) > mEU30_m1_0) { m1 = "Up"; } if(mEU30_m5_0 > mEU50_m5_0 && mEU50_m5_0 > mEU100_m5_0 && mEU30_m5_0 > mEU30_m5_1 && mEU50_m5_0 > mEU50_m5_1 && mEU100_m5_0 > mEU100_m5_1 && iLow(NULL, PERIOD_M5, 0) > mEU30_m5_0) { m5 = "Up"; } if(mEU30_m15_0 > mEU50_m15_0 && mEU50_m15_0 > mEU100_m15_0 && mEU30_m15_0 > mEU30_m15_1 && mEU50_m15_0 > mEU50_m15_1 && mEU100_m15_0 > mEU100_m15_1 && iLow(NULL, PERIOD_M15, 0) > mEU30_m15_0) { m15 = "Up"; } if(mEU30_m30_0 > mEU50_m30_0 && mEU50_m30_0 > mEU100_m30_0 && mEU30_m30_0 > mEU30_m30_1 && mEU50_m30_0 > mEU50_m30_1 && mEU100_m30_0 > mEU100_m30_1 && iLow(NULL, PERIOD_M30, 0) > mEU30_m30_0) { m30 = "Up"; } if(mEU30_h1_0 > mEU50_h1_0 && mEU50_h1_0 > mEU100_h1_0 && mEU30_h1_0 > mEU30_h1_1 && mEU50_h1_0 > mEU50_h1_1 && mEU100_h1_0 > mEU100_h1_1 && iLow(NULL, PERIOD_H1, 0) > mEU30_h1_0) { h1 = "Up"; } if(mEU30_h4_0 > mEU50_h4_0 && mEU50_h4_0 > mEU100_h4_0 && mEU30_h4_0 > mEU30_h4_1 && mEU50_h4_0 > mEU50_h4_1 && mEU100_h4_0 > mEU100_h4_1 && iLow(NULL, PERIOD_H4, 0) > mEU30_h4_0) { h4 = "Up"; } if(mEU30_d1_0 > mEU50_d1_0 && mEU50_d1_0 > mEU100_d1_0 && mEU30_d1_0 > mEU30_d1_1 && mEU50_d1_0 > mEU50_d1_1 && mEU100_d1_0 > mEU100_d1_1 && iLow(NULL, PERIOD_D1, 0) > mEU30_d1_0) { d1 = "Up"; } if(mEU30_w1_0 > mEU50_w1_0 && mEU50_w1_0 > mEU100_w1_0 && mEU30_w1_0 > mEU30_w1_1 && mEU50_w1_0 > mEU50_w1_1 && mEU100_w1_0 > mEU100_w1_1 && iLow(NULL, PERIOD_W1, 0) > mEU30_w1_0) { w1 = "Up"; } if(mEU30_Mn1_0 > mEU50_Mn1_0 && mEU50_Mn1_0 > mEU100_Mn1_0 && mEU30_Mn1_0 > mEU30_Mn1_1 && mEU50_Mn1_0 > mEU50_Mn1_1 && mEU100_Mn1_0 > mEU100_Mn1_1 && iLow(NULL, PERIOD_MN1, 0) > mEU30_Mn1_0) { Mn1 = "Up"; } //=================================================================================== if(mEU30_m1_0 < mEU50_m1_0 && mEU50_m1_0 < mEU100_m1_0 && mEU30_m1_0 < mEU30_m1_1 && mEU50_m1_0 < mEU50_m1_1 && mEU100_m1_0 < mEU100_m1_1 && iHigh(NULL, PERIOD_M1, 0) < mEU30_m1_0) { m1 = "Dn"; } if(mEU30_m5_0 < mEU50_m5_0 && mEU50_m5_0 < mEU100_m5_0 && mEU30_m5_0 < mEU30_m5_1 && mEU50_m5_0 < mEU50_m5_1 && mEU100_m5_0 < mEU100_m5_1 && iHigh(NULL, PERIOD_M5, 0) < mEU30_m5_0) { m5 = "Dn"; } if(mEU30_m15_0 < mEU50_m15_0 && mEU50_m15_0 < mEU100_m15_0 && mEU30_m15_0 < mEU30_m15_1 && mEU50_m15_0 < mEU50_m15_1 && mEU100_m15_0 < mEU100_m15_1 && iHigh(NULL, PERIOD_M15, 0) < mEU30_m15_0) { m15 = "Dn"; } if(mEU30_m30_0 < mEU50_m30_0 && mEU50_m30_0 < mEU100_m30_0 && mEU30_m30_0 < mEU30_m30_1 && mEU50_m30_0 < mEU50_m30_1 && mEU100_m30_0 < mEU100_m30_1 && iHigh(NULL, PERIOD_M30, 0) < mEU30_m30_0) { m30 = "Dn"; } if(mEU30_h1_0 < mEU50_h1_0 && mEU50_h1_0 < mEU100_h1_0 && mEU30_h1_0 < mEU30_h1_1 && mEU50_h1_0 < mEU50_h1_1 && mEU100_h1_0 < mEU100_h1_1 && iHigh(NULL, PERIOD_H1, 0) < mEU30_h1_0) { h1 = "Dn"; } if(mEU30_h4_0 < mEU50_h4_0 && mEU50_h4_0 < mEU100_h4_0 && mEU30_h4_0 < mEU30_h4_1 && mEU50_h4_0 < mEU50_h4_1 && mEU100_h4_0 < mEU100_h4_1 && iHigh(NULL, PERIOD_H4, 0) < mEU30_h4_0) { h4 = "Dn"; } if(mEU30_d1_0 < mEU50_d1_0 && mEU50_d1_0 < mEU100_d1_0 && mEU30_d1_0 < mEU30_d1_1 && mEU50_d1_0 < mEU50_d1_1 && mEU100_d1_0 < mEU100_d1_1 && iHigh(NULL, PERIOD_D1, 0) < mEU30_d1_0) { d1 = "Dn"; } if(mEU30_w1_0 < mEU50_w1_0 && mEU50_w1_0 < mEU100_w1_0 && mEU30_w1_0 < mEU30_w1_1 && mEU50_w1_0 < mEU50_w1_1 && mEU100_w1_0 < mEU100_w1_1 && iHigh(NULL, PERIOD_W1, 0) < mEU30_w1_0) { w1 = "Dn"; } if(mEU30_Mn1_0 < mEU50_Mn1_0 && mEU50_Mn1_0 < mEU100_Mn1_0 && mEU30_Mn1_0 < mEU30_Mn1_1 && mEU50_Mn1_0 < mEU50_Mn1_1 && mEU100_Mn1_0 < mEU100_Mn1_1 && iHigh(NULL, PERIOD_MN1, 0) < mEU30_Mn1_0) { Mn1 = "Dn"; } //========================================================================================= ObjectCreate("l_m1", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_m1", "M1", 10, "Arial", Black); ObjectSet("l_m1", OBJPROP_XDISTANCE, 1); ObjectSet("l_m1", OBJPROP_YDISTANCE, 1); ObjectCreate("label_m1", OBJ_LABEL, 0, 0, 0); ObjectSet("label_m1", OBJPROP_XDISTANCE, 30); ObjectSet("label_m1", OBJPROP_YDISTANCE, 1); //--- ObjectCreate("l_m5", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_m5", "M5", 10, "Arial", Black); ObjectSet("l_m5", OBJPROP_XDISTANCE, 1); ObjectSet("l_m5", OBJPROP_YDISTANCE, 15); ObjectCreate("label_m5", OBJ_LABEL, 0, 0, 0); ObjectSet("label_m5", OBJPROP_XDISTANCE, 30); ObjectSet("label_m5", OBJPROP_YDISTANCE, 15); //--- ObjectCreate("l_m15", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_m15", "M15", 10, "Arial", Black); ObjectSet("l_m15", OBJPROP_XDISTANCE, 1); ObjectSet("l_m15", OBJPROP_YDISTANCE, 30); ObjectCreate("label_m15", OBJ_LABEL, 0, 0, 0); ObjectSet("label_m15", OBJPROP_XDISTANCE, 30); ObjectSet("label_m15", OBJPROP_YDISTANCE, 30); //--- ObjectCreate("l_m30", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_m30", "M30", 10, "Arial", Black); ObjectSet("l_m30", OBJPROP_XDISTANCE, 1); ObjectSet("l_m30", OBJPROP_YDISTANCE, 45); ObjectCreate("label_m30", OBJ_LABEL, 0, 0, 0); ObjectSet("label_m30", OBJPROP_XDISTANCE, 30); ObjectSet("label_m30", OBJPROP_YDISTANCE, 45); //--- ObjectCreate("l_h1", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_h1", "H1", 10, "Arial", Black); ObjectSet("l_h1", OBJPROP_XDISTANCE, 1); ObjectSet("l_h1", OBJPROP_YDISTANCE, 60); ObjectCreate("label_h1", OBJ_LABEL, 0, 0, 0); ObjectSet("label_h1", OBJPROP_XDISTANCE, 30); ObjectSet("label_h1", OBJPROP_YDISTANCE, 60); //--- ObjectCreate("l_h4", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_h4", "H4", 10, "Arial", Black); ObjectSet("l_h4", OBJPROP_XDISTANCE, 1); ObjectSet("l_h4", OBJPROP_YDISTANCE, 75); ObjectCreate("label_h4", OBJ_LABEL, 0, 0, 0); ObjectSet("label_h4", OBJPROP_XDISTANCE, 30); ObjectSet("label_h4", OBJPROP_YDISTANCE, 75); //--- ObjectCreate("l_d1", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_d1", "D1", 10, "Arial", Black); ObjectSet("l_d1", OBJPROP_XDISTANCE, 1); ObjectSet("l_d1", OBJPROP_YDISTANCE, 90); ObjectCreate("label_d1", OBJ_LABEL, 0, 0, 0); ObjectSet("label_d1", OBJPROP_XDISTANCE, 30); ObjectSet("label_d1", OBJPROP_YDISTANCE, 90); //--- ObjectCreate("l_w1", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_w1", "W1", 10, "Arial", Black); ObjectSet("l_w1", OBJPROP_XDISTANCE, 1); ObjectSet("l_w1", OBJPROP_YDISTANCE, 105); ObjectCreate("label_w1", OBJ_LABEL, 0, 0, 0); ObjectSet("label_w1", OBJPROP_XDISTANCE, 30); ObjectSet("label_w1", OBJPROP_YDISTANCE, 105); //--- ObjectCreate("l_Mn1", OBJ_LABEL, 0, 0, 0); ObjectSetText("l_Mn1", "Mn1", 10, "Arial", Black); ObjectSet("l_Mn1", OBJPROP_XDISTANCE, 1); ObjectSet("l_Mn1", OBJPROP_YDISTANCE, 120); ObjectCreate("label_Mn1", OBJ_LABEL, 0, 0, 0); ObjectSet("label_Mn1", OBJPROP_XDISTANCE, 30); ObjectSet("label_Mn1", OBJPROP_YDISTANCE, 120); //=========================================== if(m1 == "Up") ObjectSetText("label_m1", CharToStr(233), 10, "Wingdings", Lime); else if(m1 == "Dn") ObjectSetText("label_m1", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(m1) == 0) ObjectSetText("label_m1", CharToStr(54), 10, "Wingdings", White); //--- if(m5 == "Up") ObjectSetText("label_m5", CharToStr(233), 10, "Wingdings", Lime); else if(m5 == "Dn") ObjectSetText("label_m5", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(m5) == 0) ObjectSetText("label_m5", CharToStr(54), 10, "Wingdings", White); //--- if(m15 == "Up") ObjectSetText("label_m15", CharToStr(233), 10, "Wingdings", Lime); else if(m15 == "Dn") ObjectSetText("label_m15", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(m15) == 0) ObjectSetText("label_m15", CharToStr(54), 10, "Wingdings", White); //--- if(m30 == "Up") ObjectSetText("label_m30", CharToStr(233), 10, "Wingdings", Lime); else if(m30 == "Dn") ObjectSetText("label_m30", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(m30) == 0) ObjectSetText("label_m30", CharToStr(54), 10, "Wingdings", White); //--- if(h1 == "Up") ObjectSetText("label_h1", CharToStr(233), 10, "Wingdings", Lime); else if(h1 == "Dn") ObjectSetText("label_h1", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(h1) == 0) ObjectSetText("label_h1", CharToStr(54), 10, "Wingdings", White); //--- if(h4 == "Up") ObjectSetText("label_h4", CharToStr(233), 10, "Wingdings", Lime); else if(h4 == "Dn") ObjectSetText("label_h4", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(h4) == 0) ObjectSetText("label_h4", CharToStr(54), 10, "Wingdings", White); //--- if(d1 == "Up") ObjectSetText("label_d1", CharToStr(233), 10, "Wingdings", Lime); else if(d1 == "Dn") ObjectSetText("label_d1", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(d1) == 0) ObjectSetText("label_d1", CharToStr(54), 10, "Wingdings", White); //--- if(w1 == "Up") ObjectSetText("label_w1", CharToStr(233), 10, "Wingdings", Lime); else if(w1 == "Dn") ObjectSetText("label_w1", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(w1) == 0) ObjectSetText("label_w1", CharToStr(54), 10, "Wingdings", White); //--- if(Mn1 == "Up") ObjectSetText("label_Mn1", CharToStr(233), 10, "Wingdings", Lime); else if(Mn1 == "Dn") ObjectSetText("label_Mn1", CharToStr(234), 10, "Wingdings", Red); else if(StrToDouble(Mn1) == 0) ObjectSetText("label_Mn1", CharToStr(54), 10, "Wingdings", White); //=============================================================================================== return(0); } //+------------------------------------------------------------------+