Daily Forex Signal

Author: Copyright � 2009, MetaQuotes Software Corp.
Daily Forex Signal
11 Views
0 Downloads
0 Favorites
Daily Forex Signal
//+------------------------------------------------------------------+
//|                                           Daily Forex Signal.mq4 |
//|                      Copyright © 2009, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_separate_window

int init() {
   IndicatorShortName("Daily Forex Signal");
   return (0);
}

int deinit() {
   ObjectsDeleteAll(1, OBJ_LABEL);
   return (0);
}

int start() {
   int li_0 = 2090;
   int li_4 = 4;
   int li_8 = 30;
   string ls_12 = "admin@valasssp.com";
   string ls_20 = "Daily Forex Signal";
   if (TimeYear(Time[0]) > li_0) {
      Alert(ls_20 + " has expired. ", "Please contact" + ls_12);
      return (0);
   }
   if (TimeYear(Time[0]) == li_0 && TimeMonth(Time[0]) > li_4) {
      Alert(ls_20 + " has expired. ", "Please contact" + ls_12);
      return (0);
   }
   if (TimeYear(Time[0]) == li_0 && TimeMonth(Time[0]) == li_4 && TimeDay(Time[0]) > li_8) {
      Alert(ls_20 + " has expired. ", "Please contact" + ls_12);
      return (0);
   }
   alerts("EURUSD", "label-01", "arrow-01", "ttp-01", "tp-01", "act-01", 2, 38);
   alerts("GBPUSD", "label-02", "arrow-02", "ttp-02", "tp-02", "act-02", 2, 56);
   alerts("AUDUSD", "label-03", "arrow-03", "ttp-03", "tp-03", "act-03", 2, 74);
   alerts("NZDUSD", "label-04", "arrow-04", "ttp-04", "tp-04", "act-04", 2, 92);
   alerts("EURGBP", "label-05", "arrow-05", "ttp-05", "tp-05", "act-05", 2, 128);
   alerts("USDJPY", "label-06", "arrow-06", "ttp-06", "tp-06", "act-06", 225, 38);
   alerts("EURJPY", "label-07", "arrow-07", "ttp-07", "tp-07", "act-07", 225, 56);
   alerts("CHFJPY", "label-08", "arrow-08", "ttp-08", "tp-08", "act-08", 225, 74);
   alerts("AUDJPY", "label-09", "arrow-09", "ttp-09", "tp-09", "act-09", 225, 92);
   alerts("CADJPY", "label-10", "arrow-10", "ttp-10", "tp-10", "act-10", 225, 110);
   alerts("GBPJPY", "label-11", "arrow-11", "ttp-11", "tp-11", "act-11", 225, 128);
   alerts("EURCHF", "label-12", "arrow-12", "ttp-12", "tp-12", "act-12", 480, 38);
   alerts("USDCHF", "label-13", "arrow-13", "ttp-13", "tp-13", "act-13", 480, 56);
   alerts("GBPCHF", "label-14", "arrow-14", "ttp-14", "tp-14", "act-14", 480, 74);
   alerts("CADCHF", "label-15", "arrow-15", "ttp-15", "tp-15", "act-15", 480, 92);
   alerts("NZDCHF", "label-16", "arrow-16", "ttp-16", "tp-16", "act-16", 480, 110);
   alerts("AUDCHF", "label-17", "arrow-17", "ttp-17", "tp-17", "act-17", 480, 128);
   alerts("USDCAD", "label-18", "arrow-18", "ttp-18", "tp-18", "act-18", 700, 38);
   alerts("AUDCAD", "label-19", "arrow-19", "ttp-19", "tp-19", "act-19", 700, 56);
   alerts("EURCAD", "label-20", "arrow-20", "ttp-20", "tp-20", "act-20", 700, 74);
   alerts("NZDCAD", "label-21", "arrow-21", "ttp-21", "tp-21", "act-21", 700, 92);
   alerts("CHFCAD", "label-22", "arrow-22", "ttp-22", "tp-22", "act-22", 700, 110);
   alerts("GBPCAD", "label-23", "arrow-23", "ttp-23", "tp-23", "act-23", 700, 128);
   return (0);
}

void alerts(string a_symbol_0, string a_name_8, string a_name_16, string a_name_24, string a_name_32, string a_name_40, int a_x_48, int a_y_52) {
   string ls_unused_176;
   double l_ima_184;
   double l_ima_192;
   double l_ima_200;
   double l_ima_208;
   color l_color_220;
   string l_text_224;
   color l_color_232;
   string l_text_236;
   color l_color_244;
   string l_text_248;
   color l_color_256;
   string ls_unused_284;
   string ls_unused_292;
   string ls_unused_300;
   string ls_unused_308;
   int li_332;
   string ls_56 = "Daily Forex Signal";
   double l_point_64 = MarketInfo(a_symbol_0, MODE_POINT);
   int l_period_72 = 24;
   int l_period_76 = 72;
   double l_ima_80 = iMA(a_symbol_0, PERIOD_M30, l_period_72, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_88 = iMA(a_symbol_0, PERIOD_M30, l_period_76, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_96 = iMA(a_symbol_0, PERIOD_H1, l_period_72, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_104 = iMA(a_symbol_0, PERIOD_H1, l_period_76, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_112 = iMA(a_symbol_0, PERIOD_H4, l_period_72, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_120 = iMA(a_symbol_0, PERIOD_H4, l_period_76, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_128 = iMA(a_symbol_0, PERIOD_D1, l_period_72, 0, MODE_EMA, PRICE_CLOSE, 0);
   double l_ima_136 = iMA(a_symbol_0, PERIOD_D1, l_period_76, 0, MODE_EMA, PRICE_CLOSE, 0);
   int l_bool_144 = l_ima_80 > l_ima_88 && l_ima_96 > l_ima_104 && l_ima_112 > l_ima_120 && l_ima_128 > l_ima_136;
   int l_bool_148 = l_ima_80 < l_ima_88 && l_ima_96 < l_ima_104 && l_ima_112 < l_ima_120 && l_ima_128 < l_ima_136;
   int l_bool_152 = l_ima_80 > l_ima_88 && l_ima_96 > l_ima_104 && l_ima_112 > l_ima_120 && l_ima_128 < l_ima_136;
   int l_bool_156 = l_ima_80 < l_ima_88 && l_ima_96 < l_ima_104 && l_ima_112 < l_ima_120 && l_ima_128 > l_ima_136;
   int l_count_160 = 0;
   int li_164 = 49;
   int l_count_168 = 0;
   for (l_count_160 = 1; l_count_160 < li_164; l_count_160++) {
      l_ima_184 = iMA(a_symbol_0, PERIOD_M30, 24, 0, MODE_EMA, PRICE_CLOSE, l_count_160 - 1);
      l_ima_192 = iMA(a_symbol_0, PERIOD_M30, 72, 0, MODE_EMA, PRICE_CLOSE, l_count_160 - 1);
      l_ima_200 = iMA(a_symbol_0, PERIOD_M30, 24, 0, MODE_EMA, PRICE_CLOSE, l_count_160 + 1);
      l_ima_208 = iMA(a_symbol_0, PERIOD_M30, 72, 0, MODE_EMA, PRICE_CLOSE, l_count_160 + 1);
      if ((l_ima_184 > l_ima_192 && l_ima_200 < l_ima_208) || (l_ima_184 < l_ima_192 && l_ima_200 > l_ima_208)) l_count_168++;
   }
   int li_216 = l_count_168 < 1;
   double l_spread_316 = MarketInfo(a_symbol_0, MODE_SPREAD);
   string l_dbl2str_276 = DoubleToStr(l_spread_316, 0);
   double l_ask_324 = MarketInfo(a_symbol_0, MODE_ASK);
   if (l_ask_324 > 10.0) li_332 = 2;
   else li_332 = 4;
   double l_ihigh_336 = iHigh(a_symbol_0, PERIOD_D1, 1);
   double l_ilow_344 = iLow(a_symbol_0, PERIOD_D1, 1);
   double l_iclose_352 = iClose(a_symbol_0, PERIOD_D1, 1);
   double ld_360 = (l_ihigh_336 + l_ilow_344 + l_iclose_352) / 3.0;
   ld_360 = NormalizeDouble(ld_360, li_332);
   double ld_368 = 2.0 * ld_360 - l_ihigh_336;
   ld_368 = NormalizeDouble(ld_368, li_332);
   double ld_376 = 2.0 * ld_360 - l_ilow_344;
   ld_376 = NormalizeDouble(ld_376, li_332);
   double l_irsi_384 = iRSI(a_symbol_0, PERIOD_M30, 14, PRICE_CLOSE, 0);
   double l_imacd_392 = iMACD(a_symbol_0, PERIOD_M30, 5, 13, 1, PRICE_CLOSE, MODE_MAIN, 0);
   double l_imacd_400 = iMACD(a_symbol_0, PERIOD_M30, 12, 26, 9, PRICE_CLOSE, MODE_MAIN, 0);
   double l_istochastic_408 = iStochastic(a_symbol_0, PERIOD_M30, 5, 3, 3, MODE_SMA, 0, MODE_MAIN, 0);
   if (l_bool_144 && li_216 && l_irsi_384 > 50.0 && l_imacd_392 > 0.0 && l_imacd_400 > 0.0) {
      l_text_224 = "Buy";
      l_color_220 = Lime;
      l_color_256 = Lime;
      l_text_236 = l_ihigh_336;
      l_color_232 = Lime;
      l_text_248 = "TP";
      l_color_244 = Lime;
   } else {
      if (l_bool_148 && li_216 && l_irsi_384 < 50.0 && l_imacd_392 < 0.0 && l_imacd_400 < 0.0) {
         l_text_224 = "Sell";
         l_color_220 = Red;
         l_color_256 = Red;
         l_text_236 = l_ilow_344;
         l_color_232 = Red;
         l_text_248 = "TP";
         l_color_244 = Red;
      } else {
         if (l_bool_152 && li_216) {
            l_text_224 = "Buy";
            l_color_220 = Lime;
            l_color_256 = Lime;
            l_text_236 = ld_376;
            l_color_232 = Lime;
            l_text_248 = "TP";
            l_color_244 = Lime;
         } else {
            if (l_bool_156 && li_216) {
               l_text_224 = "Sell";
               l_color_220 = Red;
               l_color_256 = Red;
               l_text_236 = ld_368;
               l_color_232 = Red;
               l_text_248 = "TP";
               l_color_244 = Red;
            } else {
               l_text_224 = "";
               l_color_220 = Black;
               l_color_256 = Gray;
               l_text_236 = "";
               l_color_232 = Black;
               l_text_248 = "";
               l_color_244 = Black;
            }
         }
      }
   }
   ObjectCreate(a_name_16, OBJ_LABEL, WindowFind(ls_56), 0, 0);
   ObjectSetText(a_name_16, l_dbl2str_276, 7, "Arial Bold", Yellow);
   ObjectSet(a_name_16, OBJPROP_CORNER, 0);
   ObjectSet(a_name_16, OBJPROP_XDISTANCE, a_x_48);
   ObjectSet(a_name_16, OBJPROP_YDISTANCE, a_y_52 + 2);
   ObjectCreate(a_name_8, OBJ_LABEL, WindowFind(ls_56), 0, 0);
   ObjectSetText(a_name_8, a_symbol_0, 9, "Arial Bold", l_color_256);
   ObjectSet(a_name_8, OBJPROP_CORNER, 0);
   ObjectSet(a_name_8, OBJPROP_XDISTANCE, a_x_48 + 13);
   ObjectSet(a_name_8, OBJPROP_YDISTANCE, a_y_52);
   ObjectCreate(a_name_40, OBJ_LABEL, WindowFind(ls_56), 0, 0);
   ObjectSetText(a_name_40, l_text_224, 10, "Arial Bold", l_color_220);
   ObjectSet(a_name_40, OBJPROP_CORNER, 0);
   ObjectSet(a_name_40, OBJPROP_XDISTANCE, a_x_48 + 65);
   ObjectSet(a_name_40, OBJPROP_YDISTANCE, a_y_52 + 0);
   ObjectCreate(a_name_32, OBJ_LABEL, WindowFind(ls_56), 0, 0);
   ObjectSetText(a_name_32, l_text_248, 10, "Arial Bold", l_color_244);
   ObjectSet(a_name_32, OBJPROP_CORNER, 0);
   ObjectSet(a_name_32, OBJPROP_XDISTANCE, a_x_48 + 98);
   ObjectSet(a_name_32, OBJPROP_YDISTANCE, a_y_52 + 0);
   ObjectCreate(a_name_24, OBJ_LABEL, WindowFind(ls_56), 0, 0);
   ObjectSetText(a_name_24, l_text_236, 10, "Arial Bold", l_color_232);
   ObjectSet(a_name_24, OBJPROP_CORNER, 0);
   ObjectSet(a_name_24, OBJPROP_XDISTANCE, a_x_48 + 120);
   ObjectSet(a_name_24, OBJPROP_YDISTANCE, a_y_52 + 0);
}

Comments