Jump to content

Recommended Posts

Posted

hello friends i got this ea and it needs to be educated and tested ...

 

/*
  Generated by EX4-TO-MQ4 decompiler V4.0.224.1 []
  Website: [url]http://purebeam.biz[/url]
  E-mail : [email][email protected][/email]
*/
#property copyright "Copyright © 2006, Arab Online Forex"
#property link      "[email protected]"

extern double Lot_size = 0.1;
extern double maxLose = 0.0;
extern double TrailingStop = 0.0;
bool gi_100 = FALSE;
bool gi_104 = TRUE;
int gi_108 = 0;
string gs_112 = "2009.08.31";

int start() {
  string ls_80;
  double l_ihigh_0 = iHigh("EURUSD", PERIOD_D1, 2);
  double l_ilow_8 = iLow(NULL, PERIOD_D1, 2);
  double l_iclose_16 = iClose(NULL, PERIOD_D1, 2);
  double ld_24 = NormalizeDouble((l_ihigh_0 + l_ilow_8 + l_iclose_16) / 3.0, Digits);
  double l_ihigh_32 = iHigh(NULL, PERIOD_D1, 1);
  double l_ilow_40 = iLow(NULL, PERIOD_D1, 1);
  double l_iclose_48 = iClose(NULL, PERIOD_D1, 1);
  double l_price_64 = NormalizeDouble((l_ihigh_32 + l_ilow_40 + l_iclose_48) / 3.0, Digits);
  double ld_72 = l_ihigh_32 - l_ilow_40;
  double l_iopen_56 = iOpen(NULL, PERIOD_D1, 0);
  double l_price_88 = NormalizeDouble(2.0 * l_price_64 - l_ihigh_32, Digits);
  double l_price_96 = NormalizeDouble(l_price_64 - (l_ihigh_32 - l_ilow_40), Digits);
  double l_price_104 = NormalizeDouble(2.0 * l_price_64 - (2.0 * l_ihigh_32 - l_ilow_40), Digits);
  double l_price_112 = NormalizeDouble(2.0 * l_price_64 - l_ilow_40, Digits);
  double l_price_120 = NormalizeDouble(l_price_64 + (l_ihigh_32 - l_ilow_40), Digits);
  double l_price_128 = NormalizeDouble(2.0 * l_price_64 + (l_ihigh_32 - 2.0 * l_ilow_40), Digits);
  if (gi_108 != 0) {
     if (AccountNumber() != gi_108) {
        Alert("ArabiFx Expert is registered to account # " + gi_108 + " ONLY !\nIf this is not your registered account", 
        "\nPlease contact [email][email protected][/email] \nor Call 002-0103-925-926");
        return (0);
     }
  }
  int l_str2time_136 = StrToTime(gs_112);
  if (TimeCurrent() >= l_str2time_136) {
     Alert("This Trial version has been expired");
     Alert("Please contact [email][email protected][/email] \nor Call 002-0103-925-926");
     return (0);
  }
  if (IsDemo() == FALSE && gi_100 == TRUE) {
     Alert("You can use the program with a Demo account ONLY");
     Alert("Please contact [email][email protected][/email] \nor Call 002-0103-925-926");
     return (0);
  }
  if (AccountBalance() <= maxLose) {
     Alert("Sorry ... \nMaximum Account Stop has been Reached \nThe Program Stopped");
     CloseAllTrades();
     Comment("Maximum Account Stop has been reached - The Program Stopped");
     return (0);
  }
  if (l_price_64 >= ld_24 && l_price_64 > l_iopen_56 && l_price_64 - l_iopen_56 > 0.0014) ls_80 = " Today is BOMP DOWN or BOMP UP if Cant Break Low Yesterday";
  if (l_price_64 <= ld_24 && l_price_64 < l_iopen_56 && l_iopen_56 - l_price_64 > 0.0014) ls_80 = "2- Today is BOMP UP or BOMP DOWN if Cant Break High Yesterday";
  if (l_price_64 > ld_24 && l_price_64 < l_iopen_56 && ld_72 <= 0.015 && l_price_64 - l_price_104 > 0.0125) ls_80 = " Program OFF DONT ENTER THE MARKET TODAY - Risky Market";
  if (l_price_64 < ld_24 && l_price_64 > l_iopen_56 && ld_72 <= 0.015 && l_price_64 - l_price_104 > 0.0125) ls_80 = " Program OFF DONT ENTER THE MARKET TODAY - Risky Market";
  if (l_price_64 > ld_24 && l_price_64 < l_iopen_56 && ld_72 > 0.015) ls_80 = " Today Zigzag UP then DOWN - Flag";
  if (l_price_64 < ld_24 && l_price_64 > l_iopen_56 && ld_72 > 0.015) ls_80 = " Today Zigzag DOWN then UP - Flag";
  if (l_price_64 == l_iclose_48 || l_price_64 == l_iopen_56) ls_80 = " Program OFF DONT ENTER THE MARKET TODAY - Risky Market";
  if (l_price_64 - l_iopen_56 <= 0.0014 && l_price_64 - l_iopen_56 > 0.0 && l_price_64 - l_price_104 <= 0.0125) ls_80 = " Today is BOMP DOWN or BOMP UP - Risky Market";
  if (l_iopen_56 - l_price_64 <= 0.0014 && l_iopen_56 - l_price_64 > 0.0 && l_price_64 - l_price_104 <= 0.0125) ls_80 = " Today is BOMP UP or BOMP DOWN - Risky Market";
  if (l_price_64 - l_iopen_56 <= 0.0014 && l_price_64 - l_iopen_56 > 0.0 && l_price_64 - l_price_104 > 0.0125) ls_80 = " Program OFF DONT ENTER THE MARKET TODAY - Risky Market";
  if (l_iopen_56 - l_price_64 <= 0.0014 && l_iopen_56 - l_price_64 > 0.0 && l_price_64 - l_price_104 > 0.0125) ls_80 = " Program OFF DONT ENTER THE MARKET TODAY - Risky Market";
  Comment(ls_80, 
     "\n\n", "???? ?????? ?????? ????? ??? ??????? ?????\n ?? ????? ??? ???????? ???? ????? ?? ?????? \n??????? ??? ?????? ?? ?? ??? ??? ????? ?? ??? ????? ?? ????? ????? ??? ?????\n ??? ???? ??? ????? ??? ??????? ???? ?? ???? ???????? ???????? ?????????", 
  "\n\n", "Coded By: ArabOnlineForex.com - Tel: 002 0103 925 926");
  if (gi_104 == TRUE)
     if (TimeHour(TimeCurrent()) >= 23) CloseAllTrades();
  if (Hour() >= 21 && Minute() == Minute()) {
     for (int l_pos_140 = 0; l_pos_140 < OrdersTotal(); l_pos_140++) {
        OrderSelect(l_pos_140, SELECT_BY_POS, MODE_TRADES);
        if (OrderSymbol() == Symbol() && OrderType() == OP_BUYLIMIT || OrderType() == OP_SELLLIMIT || OrderType() == OP_BUYSTOP || OrderType() == OP_SELLSTOP) OrderDelete(OrderTicket());
     }
  }
  if (Hour() >= 21) return (0);
  if (Hour() < 21 && !ExistPositions()) {
     if (l_price_64 == l_iclose_48 || l_price_64 == l_iopen_56) return (0);
     if (l_price_64 > ld_24 && l_price_64 < l_iopen_56 && ld_72 <= 0.015 && l_price_64 - l_price_104 > 0.0125) return (0);
     if (l_price_64 < ld_24 && l_price_64 > l_iopen_56 && ld_72 <= 0.015 && l_price_64 - l_price_104 > 0.0125) return (0);
     if (l_price_64 - l_iopen_56 <= 0.0014 && l_price_64 - l_iopen_56 > 0.0 && l_price_64 - l_price_104 > 0.0125) return (0);
     if (l_iopen_56 - l_price_64 <= 0.0014 && l_iopen_56 - l_price_64 > 0.0 && l_price_64 - l_price_104 > 0.0125) return (0);
     if (l_iopen_56 > l_iclose_48 && l_iopen_56 - l_iclose_48 >= 0.0014) OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_iopen_56 - 30.0 * Point, 2, l_iopen_56, l_iclose_48 + 5.0 * Point, "ArabiFx", 32165498, 0, Red);
     if (l_iopen_56 < l_iclose_48 && l_iclose_48 - l_iopen_56 >= 0.0014) OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_iopen_56 + 30.0 * Point, 2, l_iopen_56, l_iclose_48 - 5.0 * Point, "ArabiFx", 32165498, 0, Blue);
     if (l_price_64 >= ld_24 && l_price_64 > l_iopen_56 && l_price_64 - l_iopen_56 > 0.0014 && Hour() > 10) {
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_112 + 15.0 * Point, 2, l_price_64 - 50.0 * Point, l_price_120 - 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_112 + 25.0 * Point, 2, l_price_64 - 50.0 * Point, l_price_128 - 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_112 + 50.0 * Point, 2, l_price_64 - 50.0 * Point, l_price_128 - 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_ilow_40, 2, l_price_64 + 50.0 * Point, l_price_96 + 20.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_ilow_40, 2, l_price_64 + 50.0 * Point, l_price_104 + 15.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_88 - 50.0 * Point, 2, l_price_64 + 50.0 * Point, l_price_104 + 15.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_96, 2, l_price_96 - 50.0 * Point, l_price_96 + 25.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_104 - 20.0 * Point, 2, l_price_104 + 25.0 * Point, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_104, 2, l_price_104 - 40.0 * Point, l_price_104 + 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_128, 2, l_price_128 + 40.0 * Point, l_price_128 - 10.0 * Point, "ArabiFx", 32165498, 0, Red);
     }
     if (l_price_64 <= ld_24 && l_price_64 < l_iopen_56 && l_iopen_56 - l_price_64 > 0.0014 && Hour() > 10) {
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_88 - 15.0 * Point, 2, l_price_64 + 50.0 * Point, l_price_96 + 10.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_88 - 25.0 * Point, 2, l_price_64 + 50.0 * Point, l_price_104 + 10.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_88 - 50.0 * Point, 2, l_price_64 + 50.0 * Point, l_price_104 + 10.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32, 2, l_price_64 - 50.0 * Point, l_price_120 - 20.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32, 2, l_price_64 - 50.0 * Point, l_price_128 - 15.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_112 + 50.0 * Point, 2, l_price_64 - 50.0 * Point, l_price_128 - 15.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_120, 2, l_price_120 + 50.0 * Point, l_price_120 - 25.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_128 + 20.0 * Point, 2, l_price_128 - 25.0 * Point, l_price_128 + 50.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_128, 2, l_price_128 + 40.0 * Point, l_price_128 - 10.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_104, 2, l_price_104 - 40.0 * Point, l_price_104 + 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
     }
     if (l_price_64 > ld_24 && l_price_64 < l_iopen_56 && ld_72 > 0.015) {
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_64 + 10.0 * Point, 2, l_price_96, l_price_64 + 25.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_64, 2, l_price_96, l_price_64 + 10.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_88 + 12.0 * Point, 2, l_price_96, l_price_88 + 50.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_88, 2, l_price_96, l_price_88 + 50.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_88 - 35.0 * Point, 2, l_price_96, l_price_88 + 50.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_88 - 50.0 * Point, 2, l_price_96, l_price_88 + 50.0 * Point, "ArabiFx", 32165498, 0, Blue);
     }
     if (l_price_64 < ld_24 && l_price_64 > l_iopen_56 && ld_72 > 0.015) {
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_64 - 15.0 * Point, 2, l_price_120, l_price_64 - 25.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_64, 2, l_price_120, l_price_64 - 10.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_112 - 12.0 * Point, 2, l_price_120, l_price_112 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_112, 2, l_price_120, l_price_112 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_112 + 35.0 * Point, 2, l_price_120, l_price_112 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLLIMIT, Lot_size, l_price_112 + 50.0 * Point, 2, l_price_120, l_price_112 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
     }
     if (l_price_64 - l_iopen_56 <= 0.0014 && l_price_64 - l_iopen_56 > 0.0 && l_price_64 - l_price_104 <= 0.0125) {
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_120, 2, l_price_112, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_128, 2, l_price_120, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_128, 2, l_price_120, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_ilow_40 - 5.0 * Point, 2, l_price_64, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_96, 2, l_price_64, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_104, 2, l_price_96, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_104, 2, l_price_96, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32 + 5.0 * Point, 2, l_price_64, l_price_120 - 15.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32 + 15.0 * Point, 2, l_price_64, l_price_128, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_96 + 10.0 * Point, 2, l_price_96, l_price_96 + 20.0 * Point, "ArabiFx", 32165498, 0, Blue);
     }
     if (l_iopen_56 - l_price_64 <= 0.0014 && l_iopen_56 - l_price_64 > 0.0 && l_price_64 - l_price_104 <= 0.0125) {
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_120, 2, l_price_112, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_128, 2, l_price_120, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_price_128, 2, l_price_120, l_price_128 + 35.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_ilow_40 - 5.0 * Point, 2, l_price_64, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_96, 2, l_price_64, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_104, 2, l_price_96, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_SELLSTOP, Lot_size, l_price_104, 2, l_price_96, l_price_104 - 50.0 * Point, "ArabiFx", 32165498, 0, Red);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32 + 5.0 * Point, 2, l_price_64, l_price_120 - 15.0 * Point, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYSTOP, Lot_size, l_ihigh_32 + 15.0 * Point, 2, l_price_64, l_price_128, "ArabiFx", 32165498, 0, Blue);
        OrderSend(Symbol(), OP_BUYLIMIT, Lot_size, l_price_96 + 10.0 * Point, 2, l_price_96, l_price_96 + 20.0 * Point, "ArabiFx", 32165498, 0, Blue);
     }
  }
  int l_ord_total_144 = OrdersTotal();
  for (int l_pos_148 = 0; l_pos_148 < l_ord_total_144; l_pos_148++) {
     OrderSelect(l_pos_148, SELECT_BY_POS, MODE_TRADES);
     if (OrderType() <= OP_SELL && OrderSymbol() == Symbol()) {
        if (OrderType() == OP_BUY) {
           if (TrailingStop > 0.0) {
              if (Bid - OrderOpenPrice() > Point * TrailingStop) {
                 if (OrderStopLoss() < Bid - Point * TrailingStop) {
                    OrderModify(OrderTicket(), OrderOpenPrice(), Bid - Point * TrailingStop, OrderTakeProfit(), 0, Blue);
                    return (0);
                 }
              }
           }
        }
        if (OrderType() == OP_SELL) {
           if (TrailingStop > 0.0) {
              if (OrderOpenPrice() - Ask > Point * TrailingStop) {
                 if (OrderStopLoss() > Ask + Point * TrailingStop || OrderStopLoss() == 0.0) {
                    OrderModify(OrderTicket(), OrderOpenPrice(), Ask + Point * TrailingStop, OrderTakeProfit(), 0, Red);
                    return (0);
                 }
              }
           }
        }
     }
  }
  return (0);
}

void CloseAllTrades() {
  for (int l_pos_0 = 0; l_pos_0 < OrdersTotal(); l_pos_0++) {
     if (OrderSelect(l_pos_0, SELECT_BY_POS, MODE_TRADES)) {
        if (Symbol() == OrderSymbol() && OrderMagicNumber() == 32165498) {
           if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, 2, Blue);
           if (OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, 2, Red);
        }
     }
  }
}

bool ExistPositions() {
  for (int l_pos_0 = 0; l_pos_0 < OrdersTotal(); l_pos_0++) {
     if (OrderSelect(l_pos_0, SELECT_BY_POS, MODE_TRADES))
        if (OrderSymbol() == Symbol() && OrderMagicNumber() == 32165498) return (TRUE);
  }
  return (FALSE);
}

Posted

Re: need help educating this ea

 

I don't see any include in your mq4 so I guess the only change you need to put is

string gs_112 = "2009.08.31";

change that to any future date and it should be 'educated'

 

cheers,

Joe

Posted

Re: need help educating this ea

 

I don't see any include in your mq4 so I guess the only change you need to put is

string gs_112 = "2009.08.31";

change that to any future date and it should be 'educated'

 

cheers,

Joe

thanx ..joe

i will give it atry...

Posted

Re: need help educating this ea

 

find the following and add them to disable the checks.. it should run in live account and no date checks..

 

 

/* <<<<<---- add this

if (gi_108 != 0) {

if (AccountNumber() != gi_108) {

Alert("ArabiFx Expert is registered to account # " + gi_108 + " ONLY !\nIf this is not your registered account",

"\nPlease contact [email protected] \nor Call 002-0103-925-926");

return (0);

}

}

int l_str2time_136 = StrToTime(gs_112);

if (TimeCurrent() >= l_str2time_136) {

Alert("This Trial version has been expired");

Alert("Please contact [email protected] \nor Call 002-0103-925-926");

return (0);

}

if (IsDemo() == FALSE && gi_100 == TRUE) {

Alert("You can use the program with a Demo account ONLY");

Alert("Please contact [email protected] \nor Call 002-0103-925-926");

return (0);

}

add this ---->>> */

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...