#property copyright "Copyright ForexFunnel" #property link "" #import "MT_PRO.dll" string AccountMatch(string a0, string a1); #import string gs_unused_76 = "http://www.forexfunnel.com/mt_auth/serveme.php"; string gs_unused_84 = "ther\'s an error!"; string gs_unused_92 = "this is not registered account number!"; string gs_unused_100 = "this account does not match the registered account number!"; string gs_unused_108 = "trial period had been expired!"; string gs_unused_116 = "Good Account!"; string gs_unused_124 = ""; bool gi_132 = FALSE; double g_point_136 = 0.0001; extern double Lots = 0.1; extern int MagicNum = 98760; extern bool UseTime = FALSE; extern bool Sunday = TRUE; extern bool Monday = TRUE; extern bool Tuesday = TRUE; extern bool Wednesday = TRUE; extern bool Thursday = TRUE; extern bool Friday = TRUE; extern bool Saturday = TRUE; int gia_188[10] = {25, 20, 20, 25, 25, 20, 20, 20, 20, 25}; int gia_192[10] = {20, 20, 20, 20, 25, 25, 20, 20, 20, 30}; double g_lots_196 = 0.0; int GetFinalInc(double ad_0) { ad_0 = NormalizeDouble(ad_0 / g_lots_196, 0); for (int li_8 = 0; li_8 < 10; li_8++) if (MathPow(2.0, li_8) == ad_0) return (gia_188[li_8]); return (gia_188[9]); } int GetFinalIncNum(double ad_0) { ad_0 = NormalizeDouble(ad_0 / g_lots_196, 0); for (int li_8 = 0; li_8 < 10; li_8++) if (MathPow(2.0, li_8) == ad_0) return (gia_192[li_8]); return (gia_192[9]); } int init() { gi_132 = TRUE; if (Point == 0.00001) g_point_136 = 0.0001; else { if (Point == 0.001) g_point_136 = 0.01; else g_point_136 = Point; } if (MarketInfo(Symbol(), MODE_MINLOT) == 10000.0) g_lots_196 = 10000.0 * Lots; else g_lots_196 = Lots; return (0); } int deinit() { return (0); } int start() { double l_pips_4; double l_pips_12; double l_price_92; double l_price_100; double l_price_108; double l_lots_116; if (gi_132 == FALSE) return (0); gi_132 = TRUE; bool li_0 = FALSE; double l_ord_lots_20 = 0; double l_ord_lots_28 = 0; double l_ord_open_price_36 = 0; double l_ord_open_price_44 = 0; double l_ord_takeprofit_52 = 0; double l_ord_takeprofit_60 = 0; int l_slippage_68 = 3; int li_72 = 0; int li_76 = 24; int li_80 = 35; int li_84 = 1000; bool li_88 = FALSE; int l_ticket_124 = 0; int l_ticket_128 = 0; int l_ticket_132 = 0; int l_ticket_136 = 0; int l_ticket_140 = 0; int l_ticket_144 = 0; double l_ord_lots_148 = 0; double l_ord_lots_156 = 0; double ld_164 = 0; double ld_172 = 0; if (!UseTime || (DayOfWeek() == 0 && Sunday) || (DayOfWeek() == 1 && Monday) || (DayOfWeek() == 2 && Tuesday) || (DayOfWeek() == 3 && Wednesday) || (DayOfWeek() == 4 && Thursday) || (DayOfWeek() == 5 && Friday) || (DayOfWeek() == 6 && Saturday)) li_88 = TRUE; for (int l_pos_180 = 0; l_pos_180 < OrdersTotal(); l_pos_180++) { OrderSelect(l_pos_180, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNum) { if (OrderType() == OP_BUY && l_ticket_124 < OrderTicket()) { l_ord_lots_20 = OrderLots(); l_ord_open_price_36 = OrderOpenPrice(); l_ticket_124 = OrderTicket(); l_ord_takeprofit_60 = OrderTakeProfit(); if (OrderLots() == g_lots_196) ld_164 = OrderOpenPrice() - li_84 * g_point_136; } if (OrderType() == OP_SELL && l_ticket_128 < OrderTicket()) { l_ord_lots_28 = OrderLots(); l_ord_open_price_44 = OrderOpenPrice(); l_ticket_128 = OrderTicket(); l_ord_takeprofit_52 = OrderTakeProfit(); if (OrderLots() == g_lots_196) ld_172 = OrderOpenPrice() + li_84 * g_point_136; } if (OrderType() == OP_BUYLIMIT) { l_ticket_132 = OrderTicket(); l_ord_lots_156 = OrderLots(); } if (OrderType() == OP_SELLLIMIT) { l_ticket_136 = OrderTicket(); l_ord_lots_156 = OrderLots(); } if (OrderType() == OP_BUYSTOP) { l_ticket_140 = OrderTicket(); l_ord_lots_148 = OrderLots(); } if (OrderType() == OP_SELLSTOP) { l_ticket_144 = OrderTicket(); l_ord_lots_148 = OrderLots(); } } } if (l_ticket_124 == 0) { if (l_ticket_132 != 0) OrderDelete(l_ticket_132); if (l_ticket_140 != 0) OrderDelete(l_ticket_140); l_price_100 = Ask - li_84 * g_point_136; if (li_84 <= 0) l_price_100 = 0; l_price_108 = Ask + li_80 * g_point_136; if (TimeHour(TimeCurrent()) >= li_72 && TimeHour(TimeCurrent()) < li_76 && li_88) { } } if (l_ticket_128 == 0) { if (l_ticket_136 != 0) OrderDelete(l_ticket_136); if (l_ticket_144 != 0) OrderDelete(l_ticket_144); l_price_100 = Bid + li_84 * g_point_136; if (li_84 <= 0) l_price_100 = 0; l_price_108 = Bid - li_80 * g_point_136; if (TimeHour(TimeCurrent()) >= li_72 && TimeHour(TimeCurrent()) < li_76 && li_88) OrderSend(Symbol(), OP_SELL, g_lots_196, Bid, l_slippage_68, l_price_100, l_price_108, "MagicNum = " + MagicNum, MagicNum, 0, CLR_NONE); } if (l_ticket_124 != 0 && l_ticket_132 == 0) { l_pips_12 = GetFinalInc(l_ord_lots_20); l_pips_4 = GetFinalIncNum(l_ord_lots_20); l_price_92 = l_ord_open_price_36 + l_pips_12 * g_point_136; if (li_0 == FALSE) l_price_100 = l_price_92 - li_84 * g_point_136; else l_price_100 = ld_164; if (li_84 <= 0) l_price_100 = 0; l_price_108 = l_price_92 - l_pips_4 * g_point_136; l_lots_116 = NormalizeDouble(2.0 * l_ord_lots_20, l_pips_4); if (li_88) OrderSend(Symbol(), OP_BUYLIMIT, l_lots_116, l_price_92, l_slippage_68, l_price_100, l_price_108, "MagicNum = " + MagicNum, MagicNum, 0, CLR_NONE); } if (l_ticket_128 != 0 && l_ticket_136 == 0) { l_pips_12 = GetFinalInc(l_ord_lots_28); l_pips_4 = GetFinalIncNum(l_ord_lots_28); l_price_92 = l_ord_open_price_44 + l_pips_12 * g_point_136; if (li_0 == FALSE) l_price_100 = l_price_92 + li_84 * g_point_136; else l_price_100 = ld_172; if (li_84 <= 0) l_price_100 = 0; l_price_108 = l_price_92 - l_pips_4 * g_point_136; l_lots_116 = NormalizeDouble(2.0 * l_ord_lots_28, l_pips_4); if (li_88) OrderSend(Symbol(), OP_SELLLIMIT, l_lots_116, l_price_92, l_slippage_68, l_price_100, l_price_108, "MagicNum = " + MagicNum, MagicNum, 0, CLR_NONE); } if (l_ticket_124 != 0 && l_ticket_140 == 0) { l_pips_12 = GetFinalInc(l_ord_lots_20); l_pips_4 = GetFinalIncNum(l_ord_lots_20); l_price_92 = l_ord_open_price_36 + l_pips_4 * g_point_136; if (li_0 == FALSE) l_price_100 = l_price_92 + li_84 * g_point_136; else l_price_100 = ld_164; if (li_84 <= 0) l_price_100 = 0; l_price_108 = l_price_92 + l_pips_4 * g_point_136; l_lots_116 = NormalizeDouble(2.0 * l_ord_lots_20, l_pips_4); if (li_88) OrderSend(Symbol(), OP_BUYSTOP, l_lots_116, l_price_92, l_slippage_68, l_price_100, l_price_108, "MagicNum = " + MagicNum, MagicNum, 0, CLR_NONE); } if (l_ticket_128 != 0 && l_ticket_144 == 0) { l_pips_12 = GetFinalInc(l_ord_lots_28); l_pips_4 = GetFinalIncNum(l_ord_lots_28); l_price_92 = l_ord_open_price_44 - l_pips_12 * g_point_136; if (li_0 == FALSE) l_price_100 = l_price_92 - li_84 * g_point_136; else l_price_100 = ld_172; if (li_84 <= 0) l_price_100 = 0; l_price_108 = l_price_92 - l_pips_4 * g_point_136; l_lots_116 = NormalizeDouble(2.0 * l_ord_lots_28, l_pips_4); if (li_88) OrderSend(Symbol(), OP_SELLSTOP, l_lots_116, l_price_92, l_slippage_68, l_price_100, l_price_108, "MagicNum = " + MagicNum, MagicNum, 0, CLR_NONE); } for (l_pos_180 = 0; l_pos_180 < OrdersTotal(); l_pos_180++) { OrderSelect(l_pos_180, SELECT_BY_POS, MODE_TRADES); if (OrderSymbol() == Symbol() && OrderType() == OP_BUY && l_ticket_124 != 0 && OrderMagicNumber() == MagicNum) { if (li_0 == FALSE) l_price_100 = l_ord_open_price_36 - li_84 * g_point_136; else l_price_100 = ld_164; if (li_84 <= 0) l_price_100 = 0; if (l_ticket_124 != OrderTicket()) l_price_108 = l_ord_takeprofit_60; else l_price_108 = OrderTakeProfit(); if (l_price_108 != OrderTakeProfit() || l_price_100 != OrderStopLoss()) OrderModify(OrderTicket(), OrderOpenPrice(), l_price_100, l_price_108, 0, CLR_NONE); } if (OrderSymbol() == Symbol() && OrderType() == OP_SELL && l_ticket_128 != 0 && OrderMagicNumber() == MagicNum) { if (li_0 == FALSE) l_price_100 = l_ord_open_price_44 + li_84 * g_point_136; else l_price_100 = ld_172; if (li_84 <= 0) l_price_100 = 0; if (l_ticket_128 != OrderTicket()) l_price_108 = l_ord_takeprofit_52; else l_price_108 = OrderTakeProfit(); if (l_price_108 != OrderTakeProfit() || l_price_100 != OrderStopLoss()) OrderModify(OrderTicket(), OrderOpenPrice(), l_price_100, l_price_108, 0, CLR_NONE); } } return (0); }