/*------------------------------------------------------------------+ | MA-Hector.mq4 | | basisforex@gmail.com | | 05/04/2010 | +------------------------------------------------------------------*/ // идея: Hector DeVille #property indicator_chart_window //+-----------------------------------------------------------------+ 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } 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 = "BUY"; } //=================================================================================== 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } 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 = "SELL"; } //========================================================================================= Comment("M1 = ", m1, "\nM5 = ", m5, "\nM15= ", m15, "\nM30= ", m30, "\nH1 = ", h1, "\nH4 = ", h4, "\nD1 = ", d1, "\nW1 = ", w1, "\nMN1= ", Mn1); return(0); } //+------------------------------------------------------------------+