TRUE Forex

Просмотр кода форекс индикатора !XPS v8 CONTINUATION-test.mq4

// +------------------------------------------------------------------------------------------+ //
// |    .-._______                           XARD777                            _______.-.    | //
// |---( )_)______)                 Knowledge of the ancients                  (______(_( )---| //
// |  (    ()___)                              \¦/                               (___()    )  | //
// |       ()__)                              (o o)                               (__()       | //
// |--(___()_)__________________________oOOo___(_)___oOOo___________________________(_()___)--| //
// |______|______|______|______|______|______|______|______|______|______|______|______|______| //
// |___|______|_Cam__|______|______|______|______|______|______|______|Ismael|______|______|__| //
// |______|______|______|______|______|______|__Big_Joe____|______|______|______|______|______| //
// |___|______|______|______|_Mundu|______|______|______|______|______|______|______|______|__| //
// |______|__cja_|______|______|______|__Hendrik____|______|______|______|______|______|______| //
// |___|______|______|______|______|______|______|______|Tzuman|______|______|______|______|__| //
// |______|______|______|Hercs_|______|______|______|______|______|______|Joy22_|______|______| //
// |___|______|______|______|______|______|___Poruchik__|______|______|______|______|______|__| //
// |______|___Pava_the_Clown___|______|______|______|______|__Leledc_____|______|______|_Xard_| //
// |                                                                                     2011 | //
// |                 File:     !XPS v8 CONTINUATION.mq4                                       | //
// | Programming language:     MQL4                                                           | //
// | Development platform:     MetaTrader 4                                                   | //
// |          End product:     THIS SOFTWARE IS FOR FOREX TRADERS                             | //
// |                                                                                          | //
// |                                                                                          | //
// |     Online Resources:     http://search4metatrader.com/index.php                         | //
// |                           www.2bgoogle.com/forex4.html                                   | //
// |                           www.forex-tsd.com                                              | //
// |                           www.forexstrategiesresources.com                               | //
// |                           www.traderszone.com                                            | //
// |                           http://fxcoder.ru/indicators                                   | //
// |                           www.worldwide-invest.org/                                      | //
// |                           http://indo-investasi.com                                      | //
// |                                                                                          | //
// |                                                           [Xard777 Proprietory Software] | //
// +------------------------------------------------------------------------------------------+ //

#property indicator_separate_window
#property indicator_minimum 0.0
#property indicator_maximum 1.0
#property indicator_buffers 2
#property indicator_color1 Violet
#property indicator_width1 4
#property indicator_color2 DodgerBlue
#property indicator_width2 4



int gi_76 = -1;
double gda_80[];
double gda_84[10];
string gsa_88[10];
string gsa_92[10];
int gi_96;
string Custom_Indicator = "Continuation";
string Copyright = "© 2008, Dean Malone";
string Web_Address = "www.compassfx.com";
string label = "--Login Information--";
string EMail = "";
string Password = "";
string MA_Method_Help = "SMA=0, EMA=1";
int MA_Method = 0;
double MA_Period = 2.0;
double gda_168[];
double gda_172[];
double gda_176[];
double gda_180[];
int gi_184 = 0;
string gs_188;
string gs_196;
string gs_204;
string gs_212;
int gi_220;
int gi_224;
int gi_228;
bool gi_232 = FALSE;
int gi_236;
int gi_240;
bool gi_244 = FALSE;
string gs_248;
bool gi_256 = FALSE;
string gs_260 = "http://www.synergyforex.com/server/server2/";
string gs_268 = "http://www.compassfx.com/server/";
string gs_276;
int gi_284 = -1;
int gi_288 = 80;

int doLoginCheck(string as_0) {
   double lda_16[10];
   string lsa_20[10];
   string ls_24;
   bool li_8 = FALSE;
   int li_12 = FileOpen("indicators_debug.txt", FILE_CSV|FILE_READ, ",");
   if (li_12 != -1) {
      if (FileSize(li_12) > 100000) {
         FileClose(li_12);
         FileDelete("indicators_debug.txt");
      } else FileClose(li_12);
   }
   int li_44 = 0;
   bool li_48 = FALSE;
   ArrayInitialize(lda_16, 2.01);
   //fillGlobalBuffers(as_0);
   int li_40 = openOutputFile();
   lda_16[0] = iCustom(NULL, 0, "Synergy_TradeSignal", "verInfo_AS", 0, 0);
   lsa_20[0] = "Synergy_TradeSignal";
   lda_16[1] = iCustom(NULL, 0, "Synergy_Continuation", "verInfo_AS", 0, 0);
   lsa_20[1] = "Synergy_Continuation";
   lda_16[2] = iCustom(NULL, 0, "Synergy_Volatility", "verInfo_AS", 0, 0);
   lsa_20[2] = "Synergy_Volatility";
   lda_16[3] = iCustom(NULL, 0, "Synergy_DSR", "verInfo_AS", 0, 0);
   lsa_20[3] = "Synergy_DSR";
   lda_16[4] = iCustom(NULL, 0, "Synergy_TDI", "verInfo_AS", 0, 0);
   lsa_20[4] = "Synergy_TDI";
   lda_16[5] = iCustom(NULL, 0, "Synergy_HeikenAshi", "verInfo_AS", 0, 0);
   lsa_20[5] = "Synergy_HeikenAshi";
   lda_16[6] = iCustom(NULL, 0, "Synergy_RangeFactor", "verInfo_AS", 0, 0);
   lsa_20[6] = "Synergy_RangeFactor";
   lda_16[7] = iCustom(NULL, 0, "Synergy_MTF", "verInfo_AS", 0, 0);
   lsa_20[7] = "Synergy_MTF";
   lda_16[8] = iCustom(NULL, 0, "Synergy_TradeTargets", "verInfo_AS", 0, 0);
   lsa_20[8] = "Synergy_TradeTargets";
   for (int li_32 = 0; li_32 < gi_76; li_32++) {
      for (int li_36 = 0; li_36 < 9; li_36++) {
         if (gsa_88[li_32] == lsa_20[li_36]) {
            li_8 = TRUE;
            Print("Indicator : ", lsa_20[li_36], " Value : ", lda_16[li_36], " Latest Version : ", gda_84[li_32]);
            if (lda_16[li_36] < gda_84[li_32]) {
               gsa_92[li_44] = gsa_88[li_32];
               li_44++;
               if (MathAbs(lda_16[li_36] - gda_84[li_32]) >= 0.05) {
                  li_48 = TRUE;
                  if (!GlobalVariableCheck("rA_synergy")) GlobalVariableSet("rA_synergy", 1);
               }
            }
         }
      }
      if (!li_8) {
         gsa_92[li_44] = gsa_88[li_32];
         li_44++;
      }
      li_8 = FALSE;
   }
   Print("-- Advanced Synergy Version Information --");
   Print("Files that need to be updated: ", li_44);
   if (li_44 > 0) Print("Executing AutoUpdater.exe now...");
   writeOutputFile(li_40, li_44);
   closeOutputFile(li_40, li_44);
   if (li_44 == 0) return (0);
   //int li_52 = runAutoUpdater();
   if (li_48 == FALSE) return (0);
   return (1);
}

int openOutputFile() {
   bool li_4;
   FileDelete("as2_update.txt");
   int li_0 = FileOpen("as2_update.txt", FILE_WRITE);
   if (li_0 < 1) {
      Alert("Can not open as2_update.txt for writing!");
      li_4 = TRUE;
   } else li_4 = FALSE;
   if (li_4 == FALSE) return (li_0);
   else return (li_4);
}

void writeOutputFile(int ai_0, int ai_4) {
   FileWrite(ai_0, ai_4);
   for (int li_12 = 0; li_12 < ai_4; li_12++) FileWrite(ai_0, gsa_92[li_12] + ".ex4");
}

void closeOutputFile(int ai_0, int ai_4) {
   FileClose(ai_0);
}

/*void fillGlobalBuffers(string as_0) {
   string ls_8;
   string ls_16;
   string ls_24;
   int li_32 = -1;
   int li_40 = 0;
   string ls_44 = "";//gGrab(as_0 + "update.php", 0);
   FileDelete("temp.txt");
   int li_36 = FileOpen("temp.txt", FILE_WRITE|FILE_READ);
   if (li_36 < 1) {
      Alert("Can not open temp text file!");
      return;
   }
   Print(ls_44);
   FileWrite(li_36, ls_44);
   FileSeek(li_36, 0, SEEK_SET);
   gi_76 = StrToDouble(FileReadString(li_36));
   while (true) {
      ls_24 = FileReadString(li_36);
      if (StringFind(ls_24, "DONE") != -1) break;
      li_32 = StringFind(ls_24, ",", 0);
      ls_8 = StringSubstr(ls_24, 0, li_32);
      ls_16 = StringSubstr(ls_24, li_32 + 1, StringLen(ls_24) - li_32);
      gda_84[li_40] = StrToDouble(ls_16);
      gsa_88[li_40] = ls_8;
      li_40++;
      if (!(FileIsEnding(li_36))) continue;
      break;
   }
   FileClose(li_36);
}*/

void logResult(string as_0, int ai_8, string as_12) {
   int li_20 = FileOpen("indicators_debug.txt", FILE_CSV|FILE_WRITE|FILE_READ, ",");
   if (li_20 < 1) {
      Print("Cannot open indicators_debug.txt for appendage!");
      return;
   }
   if (FileSeek(li_20, 0, SEEK_END) == FALSE) {
      Print("Problem seeking to the end of the file! Aborting...");
      return;
   }
   FileWrite(li_20, as_0, TimeCurrent(), ai_8, as_12);
   FileClose(li_20);
}

int init() {
   if (Custom_Indicator == "verInfo_AS") {
      IndicatorBuffers(1);
      SetIndexBuffer(0, gda_80);
      return (0);
   }
   if (Copyright != "98w34988suesdfe") {
      if (!IsDllsAllowed()) {
         Alert("WARNING: Must allow DLL imports. Go to Tools > Options > Expert Advisors and check \"Allow DLL imports\".");
         gi_244 = TRUE;
         return (0);
      }
      IndicatorShortName(" X :-))");//Continuation | www.compassfx.com  ");
      IndicatorBuffers(4);
      SetIndexStyle(0, DRAW_HISTOGRAM);
      SetIndexStyle(1, DRAW_HISTOGRAM);
      SetIndexBuffer(0, gda_168);
      SetIndexBuffer(1, gda_172);
      SetIndexBuffer(2, gda_176);
      SetIndexBuffer(3, gda_180);
      SetIndexLabel(0, NULL);//"Cont_Down");
      SetIndexLabel(1, NULL);//"Cont_Up");
      SetIndexDrawBegin(0, 10);
      SetIndexDrawBegin(1, 10);
      gi_244 = FALSE;
      gi_240 = FileOpen("advsynergy.bin", FILE_CSV|FILE_READ);
      if (gi_240 < 1) {
         gi_232 = FALSE;
         if (isInstallerRunning() != 1) {
            gi_244 = TRUE;
            return (0);
         }
         runAutoInstaller();
         gi_244 = TRUE;
         return (0);
      }
      gs_188 = FileReadString(gi_240);
      gs_196 = FileReadString(gi_240);
      gi_220 = StrToInteger(FileReadString(gi_240));
      gs_276 = FileReadString(gi_240);
      FileClose(gi_240);
      gi_232 = TRUE;
      if (gs_276 == "") gs_276 = "x";
      gs_204 = gs_188;
      gs_212 = gs_196;
      if (GlobalVariableCheck("aSyn")) {
         gi_224 = GlobalVariableGet("aSyn");
         gi_228 = TimeLocal();
         if (gi_224 > gi_228) {
            gi_244 = mylogin(gs_188, gs_196);
            if (gi_284 == 1) {
               gi_244 = mylogin(gs_188, gs_196);
               gi_284 = -1;
            }
            if (gi_244) return (0);
         }
         if (gi_228 - gi_224 >= 1800) {
            gi_244 = mylogin(gs_188, gs_196);
            if (gi_284 == 1) {
               gi_244 = mylogin(gs_188, gs_196);
               gi_284 = -1;
            }
            if (gi_244) return (0);
         }
         if (gi_228 - gi_224 <= gi_288) return (0);
         gi_244 = mykeepalive();
         if (gi_284 == 1) {
            gi_244 = mykeepalive();
            gi_284 = -1;
         }
         if (!(gi_244)) return (0);
         return (0);
      }
      gi_244 = mylogin(gs_188, gs_196);
      if (gi_284 == 1) {
         gi_244 = mylogin(gs_188, gs_196);
         gi_284 = -1;
      }
      return (0);
   }
   SetIndexBuffer(0, gda_168);
   return (0);
}

int start() {
   double ld_4;
   double ld_12;
   double ld_20;
   double ld_28;
   double ld_36;
   double ld_44;
   double ld_52;
   double ld_60;
   //if (gi_244) return (0);
   if (Custom_Indicator == "verInfo_AS") {
      gda_80[0] = 2.02;
      return (0);
   }
   if (Copyright == "98w34988suesdfe") {
      gda_168[0] = 14325.112;
      return (0);
   }
   if (Copyright != "98w34988suesdfe" && !gi_256) {
      gi_256 = TRUE;
      gs_248 = "Synergy_Continuation";
   /*   if (checkFilename() == -1) {
         gi_244 = TRUE;
         Alert("Filename has been changed -- Indicator haulting");
         return (-1);
      }*/
   }
   if (!gi_244) {
      if (GlobalVariableCheck("aSyn")) {
         gi_224 = GlobalVariableGet("aSyn");
         gi_228 = TimeLocal();
         if (gi_224 > gi_228) {
            gi_244 = mylogin(gs_188, gs_196);
            if (gi_284 == 1) {
               gi_244 = mylogin(gs_188, gs_196);
               gi_284 = -1;
            }
            if (gi_244) return (0);
         }
         if (gi_228 - gi_224 >= 1800) {
            gi_244 = mylogin(gs_188, gs_196);
            if (gi_284 == 1) {
               gi_244 = mylogin(gs_188, gs_196);
               gi_284 = -1;
            }
            if (gi_244) return (0);
         }
         if (gi_228 - gi_224 > gi_288) {
            gi_244 = mykeepalive();
            if (gi_284 == 1) {
               gi_244 = mykeepalive();
               gi_284 = -1;
            }
            if (gi_244) return (0);
         }
      } else {
         resetIndy();
         gi_244 = TRUE;
         return (0);
      }
   }
   if (Bars <= 10) return (0);
   gi_184 = IndicatorCounted();
   if (gi_184 < 0) return (-1);
   if (gi_184 > 0) gi_184--;
   for (int li_68 = Bars - gi_184 - 1; li_68 >= 0; li_68--) {
      ld_4 = NormalizeDouble(iMA(NULL, 0, MA_Period, 0, MA_Method, PRICE_CLOSE, li_68), Digits);
      ld_12 = NormalizeDouble(iMA(NULL, 0, MA_Period, 0, MA_Method, PRICE_LOW, li_68), Digits);
      ld_20 = NormalizeDouble(iMA(NULL, 0, MA_Period, 0, MA_Method, PRICE_OPEN, li_68), Digits);
      ld_28 = NormalizeDouble(iMA(NULL, 0, MA_Period, 0, MA_Method, PRICE_HIGH, li_68), Digits);
      ld_36 = NormalizeDouble((gda_176[li_68 + 1] + (gda_180[li_68 + 1])) / 2.0, Digits);
      ld_60 = NormalizeDouble((ld_4 + ld_28 + ld_20 + ld_12) / 4.0, Digits);
      ld_44 = MathMax(ld_28, MathMax(ld_36, ld_60));
      ld_52 = MathMin(ld_20, MathMin(ld_36, ld_60));
      if (ld_36 < ld_60) {
         gda_168[li_68] = 0;
         gda_172[li_68] = 1;
      } else {
         gda_168[li_68] = 1;
         gda_172[li_68] = 0;
      }
      gda_176[li_68] = ld_36;
      gda_180[li_68] = ld_60;
   }
   return (0);
}

/*int checkFilename() {
   double ld_0 = iCustom(NULL, 0, gs_248, "", "98w34988suesdfe", "", "", "", "", "", 0, 0, 0, 0);
   if (ld_0 != 14325.112) return (-1);
   else return (1);
}*/

int mylogin(string as_0, string as_8) {
   string ls_16;
   int li_24;
   int li_28;
   int li_40;
   if (GlobalVariableCheck("rA_synergy")) {
      if (isExeRunning() != 1) {
         gi_244 = TRUE;
         return (1);
      }
      GlobalVariableDel("rA_synergy");
   }
   int li_32 = -1;
   string ls_44 = StringConcatenate(gs_260, "login_test.php");
   string ls_52 = StringConcatenate("user=", as_0, "&pass=", as_8, "&ver=2%2E1");
   string ls_60 = "";//gGrab(ls_44, ls_52);
   if (StringSubstr(ls_60, 0, 1) == "0") li_32 = 0;
   if (StringSubstr(ls_60, 0, 1) == "2") li_32 = 2;
   if (StringSubstr(ls_60, 0, 1) == "3") li_32 = 3;
   if (StringSubstr(ls_60, 0, 1) == "4") li_32 = 4;
   if (StringSubstr(ls_60, 0, 1) == "6") li_32 = 6;
   if (StringSubstr(ls_60, 0, 1) == "7") li_32 = 7;
   GlobalVariableDel("advSynSW");
   logResult("Continuation", li_32, " LOGIN");
   switch (li_32) {
   case 0:
      gi_244 = doLoginCheck(gs_260);
      if (gi_244) return (1);
      li_24 = StringFind(ls_60, "SVR=");
      li_28 = StringFind(ls_60, "DONE");
      li_40 = StringFind(ls_60, "zZD1");
      if (li_24 == -1) gs_276 = "x";
      else {
         if (li_28 == -1) gs_276 = "x";
         else gs_276 = StringSubstr(ls_60, li_24 + 4, li_28 - li_24 - 4);
      }
      gi_288 = StrToInteger(StringSubstr(ls_60, 4, li_40 - 4));
      if (gi_288 <= 0) gi_288 = 180;
      if (gi_288 >= 600) gi_288 = 600;
      gi_236 = TimeLocal();
      gs_204 = as_0;
      gs_212 = as_8;
      GlobalVariableSet("aSyn", TimeLocal());
      gi_240 = FileOpen("advsynergy.bin", FILE_WRITE, 8);
      if (gi_240 < 1) {
         Print("Cannot open password cache!");
         return (0);
      }
      FileWrite(gi_240, gs_188);
      FileWrite(gi_240, gs_196);
      FileWrite(gi_240, TimeLocal());
      FileWrite(gi_240, gs_276);
      FileClose(gi_240);
      return (0);
   case 7:
      Alert(StringSubstr(ls_60, 4, StringLen(ls_60)));
      gi_236 = TimeLocal();
      gs_204 = gs_188;
      GlobalVariableSet("aSyn", TimeLocal());
      gi_240 = FileOpen("advsynergy.bin", FILE_WRITE, 8);
      if (gi_240 < 1) {
         Print("Cannot open password cache!");
         return (0);
      }
      FileWrite(gi_240, gs_188);
      FileWrite(gi_240, gs_196);
      FileWrite(gi_240, TimeLocal());
      FileClose(gi_240);
      return (0);
   case 6:
      Alert(StringSubstr(ls_60, 4, StringLen(ls_60)));
      if (gi_232) FileDelete("advsynergy.bin");
      return (1);
   case 2:
      Alert("Incorrect EMail -- Please check your EMail address spelling.");
      if (gi_232) FileDelete("advsynergy.bin");
      return (1);
   case 3:
      Alert("Email OK -- Incorrect Password!\n Please check your password spelling\n and make sure Caps Lock is NOT on.");
      if (gi_232) FileDelete("advsynergy.bin");
      return (1);
   case 4:
      Alert("Your account has been disabled!\n Please contact support@compassfx.com");
      if (gi_232) FileDelete("advsynergy.bin");
      return (1);
   case -1:
      if (gs_276 != "x" && gs_276 != "" && gs_268 != gs_276) gs_268 = gs_276;
      if (gs_260 == gs_268) {
         if (IsConnected()) {
            Alert("Connection Error!\n An error connecting to the Internet has occurred.\n Please close MetaTrader and re-open.");
            resetIndy();
            return (1);
         }
         gi_96 = FileOpen("advsynergy.bin", FILE_CSV|FILE_READ);
         if (gi_96 < 1) return (1);
         FileClose(gi_96);
         gs_204 = as_0;
         gs_212 = as_8;
         GlobalVariableSet("aSyn", TimeLocal());
         return (0);
      }
      gs_260 = gs_268;
      gi_284 = 1;
      return (1);
   }
   return (0);
}

int mykeepalive() {
   int li_0 = -1;
   string ls_4 = StringConcatenate(gs_260, "keepalive_new.php");
   string ls_12 = StringConcatenate("user=", gs_204, "&pass=", gs_212);
   string ls_20 = "";//gGrab(ls_4, ls_12);
   if (StringSubstr(ls_20, 0, 1) == "0") li_0 = 0;
   if (StringSubstr(ls_20, 0, 1) == "1") li_0 = 1;
   if (StringSubstr(ls_20, 0, 1) == "2") li_0 = 2;
   if (StringSubstr(ls_20, 0, 1) == "3") li_0 = 3;
   if (StringSubstr(ls_20, 0, 1) == "4") li_0 = 4;
   if (StringSubstr(ls_20, 0, 1) == "5") li_0 = 5;
   if (li_0 != -1)
      if (GlobalVariableCheck("advSynSW")) GlobalVariableDel("advSynSW");
   logResult("MTF", li_0, DoubleToStr(GlobalVariableCheck("advSynSW"), 0) + " -- KEEPALIVE");
   switch (li_0) {
   case 1:
      gi_244 = mylogin(gs_204, gs_212);
      if (gi_284 == 1) {
         gi_244 = mylogin(gs_204, gs_212);
         gi_284 = -1;
      }
      return (0);
   case 2:
      Alert("Your account has been logged into from a different computer.\n  This connection has been terminated.");
      resetIndy();
      return (1);
   case 3:
      Alert("Your username was not found in our database of logged in users.\n Please close indicators and re-open\n them to re-login.");
      resetIndy();
      return (1);
   case 4:
      Alert(StringSubstr(ls_20, 4, StringLen(ls_20)));
      GlobalVariableSet("aSyn", TimeLocal());
      break;
   case 5:
      Alert(StringSubstr(ls_20, 4, StringLen(ls_20)));
      resetIndy();
      return (1);
   case -1:
      if (gs_276 != "x" && gs_276 != "" && gs_276 != gs_268) gs_268 = gs_276;
      if (gs_260 == gs_268) {
         if (GlobalVariableCheck("advSynSW")) {
            if (TimeLocal() - GlobalVariableGet("advSynSW") <= 1200.0) break;
            if (IsConnected()) {
               Alert("Connection Error!\n An error connecting to the Internet has occurred.\n Please close MetaTrader and re-open.");
               resetIndy();
               return (1);
            }
            gi_96 = FileOpen("advsynergy.bin", FILE_CSV|FILE_READ);
            if (gi_96 < 1) return (1);
            FileClose(gi_96);
            return (0);
         }
         GlobalVariableSet("advSynSW", TimeLocal());
      } else {
         gs_260 = gs_268;
         gi_284 = 1;
         return (1);
      }
      break;
   }
   GlobalVariableSet("aSyn", TimeLocal());
   return (0);
}

void resetIndy() {
   ArrayInitialize(gda_168, EMPTY_VALUE);
   ArrayInitialize(gda_172, EMPTY_VALUE);
   ArrayInitialize(gda_176, EMPTY_VALUE);
   ArrayInitialize(gda_180, EMPTY_VALUE);
   GlobalVariableDel("aSyn");
   GlobalVariableDel("advSynSW");
}
int isInstallerRunning(){
return(0);
}
void runAutoInstaller(){
}
//int runAutoUpdater(){return(0);}
int isExeRunning(){return(0);}
// ------------------------------------------------------------------------------------------ //
//                                     E N D   P R O G R A M                                  //
// ------------------------------------------------------------------------------------------ //
/*                                                         
                                        ud$$$**BILLION$bc.                          
                                    u@**"        PROJECT$$Nu                       
                                  J                ""#$$$$$$r                     
                                 @                       $$$$b                    
                               .F                        ^*3$$$                   
                              :% 4                         J$$$N                  
                              $  :F                       :$$$$$                  
                             4F  9                       J$$$$$$$                 
                             4$   k             4$$$$bed$$$$$$$$$                 
                             $$r  'F            $$$$$$$$$$$$$$$$$r                
                             $$$   b.           $$$$$$$$$$$$$$$$$N                
                             $$$$$k 3eeed$$b    XARD777."$$$$$$$$$                
              .@$**N.        $$$$$" $$$$$$F'L $$$$$$$$$$$  $$$$$$$                
              :$$L  'L       $$$$$ 4$$$$$$  * $$$$$$$$$$F  $$$$$$F         edNc   
             @$$$$N  ^k      $$$$$  3$$$$*%   $F4$$$$$$$   $$$$$"        d"  z$N  
             $$$$$$   ^k     '$$$"   #$$$F   .$  $$$$$c.u@$$$          J"  @$$$$r 
             $$$$$$$b   *u    ^$L            $$  $$$$$$$$$$$$u@       $$  d$$$$$$ 
              ^$$$$$$.    "NL   "N. z@*     $$$  $$$$$$$$$$$$$P      $P  d$$$$$$$ 
                 ^"*$$$$b   '*L   9$E      4$$$  d$$$$$$$$$$$"     d*   J$$$$$r   
                      ^$$$$u  '$.  $$$L     "#" d$$$$$$".@$$    .@$"  z$$$$*"     
                        ^$$$$. ^$N.3$$$       4u$$$$$$$ 4$$$  u$*" z$$$"          
                          '*$$$$$$$$ *$b      J$$$$$$$b u$$P $"  d$$P             
                             #$$$$$$ 4$ 3*$"$*$ $"$'c@@$$$$ .u@$$$P               
                               "$$$$  ""F~$ $uNr$$$^&J$$$$F $$$$#                 
                                 "$$    "$$$bd$.$W$$$$$$$$F $$"                   
                                   ?k         ?$$$$$$$$$$$F'*                     
                                    9$$bL     z$$$$$$$$$$$F                       
                                     $$$$    $$$$$$$$$$$$$                        
                                      '#$$c  '$$$$$$$$$"                          
                                       .@"#$$$$$$$$$$$$b                          
                                     z*      $$$$$$$$$$$$N.                       
                                   e"      z$$"  #$$$k  '*$$.                     
                                .u*      u@$P"      '#$$c   "$$c                   
                        u@$*"""       d$$"            "$$$u  ^*$$b.               
                      :$F           J$P"                ^$$$c   '"$$$$$$bL        
                     d$$  ..      @$#                      #$$b         '#$       
                     9$$$$$$b   4$$                          ^$$k         '$      
                      "$$6""$b u$$                             '$    d$$$$$P      
                        '$F $$$$$"                              ^b  ^$$$$b$       
                         '$W$$$$"                                'b@$$$$"         
                                                                  ^$$$*/     
                                                                  
                                             
                                             
                                             
/*

extern bool   alertsOn         = true;
extern bool   alertsOnCurrent  = false;
extern bool   alertsMessage    = true;
extern bool   alertsSound      = false;
extern bool   alertsEmail      = false;


//------------------------------------------------------------------------------------
manageAlerts();
      return (0);
   }        


void manageAlerts()
{
   if (!calculateValue && alertsOn)
   {
      if (alertsOnCurrent)
           int whichBar = 0;
      else     whichBar = 1; whichBar = iBarShift(NULL,0,iTime(NULL,timeFrame,whichBar));
      if (trend[whichBar] != trend[whichBar+1])
      {
         if (trend[whichBar] ==  1) doAlert(whichBar,"UP");
         if (trend[whichBar] == -1) doAlert(whichBar,"DOWN");
      }
   }
}

//
//
//
//
//

void doAlert(int forBar, string doWhat)
{
   static string   previousAlert="nothing";
   static datetime previousTime;
   string message;
   
   if (previousAlert != doWhat || previousTime != Time[forBar]) {
       previousAlert  = doWhat;
       previousTime   = Time[forBar];

       //
       //
       //
       //
       //

       message =  StringConcatenate(Symbol()," ",timeFrameToString(timeFrame)," at ",TimeToStr(TimeLocal(),TIME_SECONDS)," Continuation: Trend changed to ",doWhat);
          if (alertsMessage) Alert(message);
          if (alertsEmail)   SendMail(StringConcatenate(Symbol()," Continuation "),message);
          if (alertsSound)   PlaySound("alert.wav");
   }
}


*/

Комментарии к исходному коду форекс индикатора !XPS v8 CONTINUATION-test.mq4
В целях безопасности и борьбы со спамом в тексте комментариев запрещено размещать html-теги и ссылки. Благодарим за понимание.

  • X
  • 0% загружено
« индикатор !XPS v8 CLOCK.mq4
индикатор !XPS v8 CONTINUATION.mq4 »