النتائج 1 إلى 1 من 1
الموضوع: أخي Cher09
- 29-03-2012, 01:49 PM #1
أخي Cher09
السلام عليكم
أخي الكريم
أرجو مراجعة الكود هذا وإخباري بما يعتمد على دخوله وهو لايعمل علما انه مكسور الحماية ولا يحتاج لأي ملف دي ال ال
كود:/* Generated by EX4-TO-MQ4 decompiler V4.0.225.1g [] Website: http://purebeam.biz E-mail : [email protected] Decompiled and educated 2011-07-23 by Capella */ #property copyright "Copyright © GENIALBIT" #property link "http://www.genialbit.com" /* NO NEED FOR ANY DLL #import "PIPSTIGER.dll" int OrderCode(); int LicenseKey(); string ActivationStatus(); int LicenseManager(); void SetVariable(int a0, int a1, int a2); #import */ extern string C1 = "--- GENERAL SETTINGS ---"; extern string ExpertName = "PipsTiger Fx 1.0"; extern int MagicNumber = 48569; extern int PurchaseCode = 0; extern string C2 = "--- MM SETTING ---"; extern double Lots = 0.1; extern bool UseMM = TRUE; extern int UseEquityPercentage = 1; extern int SpreadLimit = 3; extern int TakeProfit = 31; extern int StopLoss = 115; extern int Slippage = 2; extern bool UseStartSLTP = TRUE; extern int LimitLP = -58; extern int SafeTarget = 1; extern int SafeStartTarget = 8; extern int CloseBuyFilter = 15; extern int CloseSellFilter = 13; extern string C3 = "--- MA SETTINGS ---"; extern int MAPeriod = 74; extern int MAShift1 = 0; extern int MAMethod = 2; extern int MAAppliedPrice = 0; extern int MAShift2 = 1; extern int BuyFilterMA1 = 15; extern int BuyFilterMA2 = 38; extern int BuyFilterMA3 = 38; extern int SellFilterMA1 = 15; extern int SellFilterMA2 = 38; extern string C4 = "--- CCI SETTINGS ---"; extern int CCIPeriod = 18; extern int CCIAppliedPrice = 5; extern int CCIShift = 1; extern double TradeCCIFilter = 152.0; extern string C5 = "--- ATR SETTINGS ---"; extern int ATRPeriod = 14; extern int ATRShift = 1; extern int TradeATRFilter = 7; extern string C6 = "--- RSI SETTINGS ---"; extern bool UseRSI = FALSE; extern int RSIPeriod = 14; extern int RSIAppliedPrice = 0; extern int RSIShift = 0; extern int TradeRSIFilter = 60; extern string C13 = "--- BOLLINGER BANDS SETTINGS ---"; extern bool UseBB = FALSE; extern int BBPeriod = 20; extern int BBDeviation = 2; extern int BBBandsShift = 0; extern int BBAppliedPrice = 0; extern int BBModeBuy = 2; extern int BBModeSell = 1; extern int BBShift = 0; extern string C7 = "--- WPR SETTINGS ---"; extern int WPRPeriod = 11; extern int WPRShift = 1; extern double BuyLimitWPR1 = -98.0; extern double BuyLimitWPR2 = -94.0; extern double SellLimitWPR1 = -4.0; extern double BuyLimitWPR3 = -18.0; extern double SellLimitWPR2 = -81.0; extern string C8 = "--- PREFERENCES ---"; extern bool OpenBuy = TRUE; extern bool OpenSell = TRUE; extern bool TradeOnFriday = TRUE; extern bool UseNews = FALSE; extern bool NewsHighImpact = TRUE; extern bool NewsMediumImpact = TRUE; extern bool NewsSpeaks = TRUE; extern bool NewsIncludeEURUSD = TRUE; extern int MinUntilNextNews = 120; extern int MinSincePrevNews = 120; extern string C9 = "--- SESSION SETTING ---"; extern bool UseSession = FALSE; extern bool Asian = TRUE; extern bool Europe = TRUE; extern bool NewYork = TRUE; extern int GMTOffset = 1; extern bool DaylightSavings = FALSE; extern string C10 = "--- ASIAN SETTINGS ---"; extern bool AsianDaily = TRUE; extern int AsianOpenSunday = 0; extern int AsianCloseSunday = 8; extern int AsianOpenMonday = 0; extern int AsianCloseMonday = 8; extern int AsianOpenTuesday = 0; extern int AsianCloseTuesday = 8; extern int AsianOpenWednesday = 0; extern int AsianCloseWednesday = 8; extern int AsianOpenThursday = 0; extern int AsianCloseThursday = 8; extern int AsianOpenFriday = 0; extern int AsianCloseFriday = 8; extern string C11 = "--- EUROPE SETTINGS ---"; extern bool EuropeDaily = TRUE; extern int EuropeOpenSunday = 6; extern int EuropeCloseSunday = 16; extern int EuropeOpenMonday = 6; extern int EuropeCloseMonday = 16; extern int EuropeOpenTuesday = 6; extern int EuropeCloseTuesday = 16; extern int EuropeOpenWednesday = 6; extern int EuropeCloseWednesday = 16; extern int EuropeOpenThursday = 6; extern int EuropeCloseThursday = 16; extern int EuropeOpenFriday = 6; extern int EuropeCloseFriday = 16; extern string C12 = "--- NEW YORK SETTINGS ---"; extern bool NeyYorkDaily = TRUE; extern int NYOpenSunday = 12; extern int NYCloseSunday = 21; extern int NYOpenMonday = 12; extern int NYCloseMonday = 21; extern int NYOpenTuesday = 12; extern int NYCloseTuesday = 21; extern int NYOpenWednesday = 12; extern int NYCloseWednesday = 21; extern int NYOpenThursday = 12; extern int NYCloseThursday = 21; extern int NYOpenFriday = 12; extern int NYCloseFriday = 21; bool gba_644[5]; int g_datetime_648; double gd_652; int gi_660; string gs_664; int gi_672 = 3; int g_slippage_676; int g_slippage_680; int gi_684 = 1; double gd_688; int gi_unused_696; int gi_unused_700 = 0; int g_color_704 = Blue; int g_color_708 = Red; int g_color_712 = DodgerBlue; int g_color_716 = DeepPink; int gi_720 = 1; bool gi_724 = FALSE; /* init parameters string ts_unused_0, int ti_8, int ?i_unused_12, double td_16, double t_slippage_24, bool t_bool_0, int ?i_unused_36, bool t_bool_8, int ?i_unused_44, string ts_unused_48, bool t_bool_24, int ?i_unused_60, bool t_bool_0, int ?i_unused_68, int ?i_unused_72, int ?i_unused_76, bool t_bool_16, int ?i_unused_84, int a_cmd_0, int ?i_unused_92, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_116, double l_price_36, double l_price_44, double l_price_52, double ld_148, double ld_156, double l_lots_76, int li_172, bool t_bool_88, int ?i_unused_180, double td_184, bool t_bool_104, int ?i_unused_196, bool l_bool_0, int li_204, int l_error_8, int l_ticket_12, string ls_unused_216, int l_pos_24, int t_cmd_28, int ?i_unused_232, double t_bool_36, string ts_unused_244, double t_bool_52, double td_260, double td_268, int ?i_unused_276, int li_280, int l_count_8, int l_count_12, int li_292, int l_error_20, int l_ticket_24, string ls_unused_304, int l_pos_36, int li_316, double t_cmd_44, double t_bool_52, int ?i_unused_336, int ?i_unused_340, double t_bool_68, double td_352, bool li_ret_360, bool li_364, bool li_368, bool li_372, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_432, int li_436, double ld_440, double ld_448, double ld_456, double t_low_104, string ts_unused_472, double t_low_120, bool t_bool_128, int ?i_unused_492, bool li_ret_496, bool li_500, bool li_504, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_564, int li_568, double ld_572, double ld_580, double t_high_92, int ?i_unused_596, int ?i_unused_600, double t_high_108, bool t_bool_116, int / ?i_unused_616, double ad_620, int ai_628, bool li_ret_632, bool li_636, bool li_640, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_676, double ld_684, double ld_692, double ld_700, double t_bool_88, double t_bool_96, double t_bool_104, double ad_732, int ai_740, bool li_ret_744, bool li_748, bool li_752, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_788, double ld_796, double ld_804, double ld_812, double t_bool_88, double t_bool_96, double t_bool_104, double td_844, double td_852, int ?i_unused_860, int ?i_unused_864, int li_868, int l_pos_4, bool t_bool_8, int ?i_unused_880, int ?i_unused_884, int ?i_unused_888, string ts_unused_892, int l_count_0, int li_904, int l_pos_8, bool t_bool_12, int ?i_unused_916, bool t_bool_20, int ?i_unused_924, int ?i_unused_928, int ?i_unused_932, bool t_bool_36, int ?i_unused_940, string ls_944, string ts_952, string ts_960, string ts_968, int ti_976, int ?i_unused_980, double ld_ret_984, double ld_992, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int ?i_unused_1020, string ts_unused_1024, double td_1032, string asa_1040[2], int l_icustom_4, int l_icustom_8, bool li_ret_1052, int l_error_16, int li_1060, int l_index_24, double t_bool_28, string ts_1076, string ts_1084, bool t_bool_52, int ?i_unused_1096, bool li_ret_1100, int li_1104, int li_1108, int li_1112, int li_1116, int li_1120, int li_1124, int li_1128, bool li_1132, int t_bool_36, int ?i_unused_1140, int t_bool_44, int ?i_unused_1148, int ti_1152, int ?i_unused_1156, int ?i_unused_1160, int ?i_unused_1164, int ?i_unused_1168, int ?i_unused_1172, int ?i_unused_1176, int ?i_unused_1180, int /*<u ?i_unused_1184, int ?i_unused_1188, int ?i_unused_1192, int ?i_unused_1196, int ?i_unused_1200, int ?i_unused_1204, int ?i_unused_1208, int ?i_unused_1212, int ?i_unused_1216, int ?i_unused_1220, int ?i_unused_1224, int ?i_unused_1228, int ?i_unused_1232, int ?i_unused_1236, int ?i_unused_1240, int ?i_unused_1244, int ?i_unused_1248, int ?i_unused_1252, int ?i_unused_1256, int ?i_unused_1260, int ?i_unused_1264, int ?i_unused_1268, int ?i_unused_1272, int ?i_unused_1276, int ?i_unused_1280, int ?i_unused_1284, int ?i_unused_1288, int ?i_unused_1292, int ?i_unused_1296, int ?i_unused_1300, int ?i_unused_1304, int ?i_unused_1308, int ?i_unused_1312, int ?i_unused_1316, int ?i_unused_1320, int ?i_unused_1324, int ?i_unused_1328, int ?i_unused_1332, int ?i_unused_1336, int ?i_unused_1340, int ?i_unused_1344, int ?i_unused_1348, int ?i_unused_1352, int ?i_unused_1356, int ?i_unused_1360, int ?i_unused_1364, int ?i_unused_1368) */ void init() { gs_664 = Symbol(); if (Digits < 4) { gd_652 = 0.01; gi_660 = 2; } else { gd_652 = 0.0001; gi_660 = 4; } g_slippage_676 = Slippage * MathPow(10, Digits - gi_660); g_slippage_680 = gi_672 * MathPow(10, Digits - gi_660); gd_688 = NormalizeDouble(SpreadLimit * gd_652, gi_660 + 1); } /* deinit parameters bool t_bool_0, int ?i_unused_4, bool t_bool_8, int ?i_unused_12, string ts_unused_16, bool t_bool_24, int ?i_unused_28, bool t_bool_0, int ?i_unused_36, int ?i_unused_40, int ?i_unused_44, bool t_bool_16, int ?i_unused_52, int a_cmd_0, int ?i_unused_60, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_84, double l_price_36, double l_price_44, double l_price_52, double ld_116, double ld_124, double l_lots_76, int li_140, bool t_bool_88, int ?i_unused_148, double td_152, bool t_bool_104, int ?i_unused_164, bool l_bool_0, int li_172, int l_error_8, int l_ticket_12, string ls_unused_184, int l_pos_24, int t_cmd_28, int ?i_unused_200, double t_bool_36, string ts_unused_212, double t_bool_52, double td_228, double td_236, int ?i_unused_244, int li_248, int l_count_8, int l_count_12, int li_260, int l_error_20, int l_ticket_24, string ls_unused_272, int l_pos_36, int li_284, double t_cmd_44, double t_bool_52, int ?i_unused_304, int ?i_unused_308, double t_bool_68, double td_320, bool li_ret_328, bool li_332, bool li_336, bool li_340, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_400, int li_404, double ld_408, double ld_416, double ld_424, double t_low_104, string ts_unused_440, double t_low_120, bool t_bool_128, int ?i_unused_460, bool li_ret_464, bool li_468, bool li_472, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_532, int li_536, double ld_540, double ld_548, double t_high_92, int ?i_unused_564, int ?i_unused_568, double t_high_108, bool t_bool_116, int ?i_unused_584, double ad_588, int ai_596, bool li_ret_600, bool li_604, bool li_608, do uble l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_644, double ld_652, double ld_660, double ld_668, double t_bool_88, double t_bool_96, double t_bool_104, double ad_700, int ai_708, bool li_ret_712, bool li_716, bool li_720, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_756, double ld_764, double ld_772, double ld_780, double t_bool_88, double t_bool_96, double t_bool_104, double td_812, double td_820, int ?i_unused_828, int ?i_unused_832, int li_836, int l_pos_4, bool t_bool_8, int ?i_unused_848, int ?i_unused_852, int ?i_unused_856, string ts_unused_860, int l_count_0, int li_872, int l_pos_8, bool t_bool_12, int ?i_unused_884, bool t_bool_20, int ?i_unused_892, int ?i_unused_896, int ?i_unused_900, bool t_bool_36, int ?i_unused_908, string ls_912, string ts_920, string ts_928, string ts_936, int ti_944, int ?i_unused_948, double ld_ret_952, double ld_960, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int ?i_unused_988, string ts_unused_992, double td_1000, string asa_1008[2], int l_icustom_4, int l_icustom_8, bool li_ret_1020, int l_error_16, int li_1028, int l_index_24, double t_bool_28, string ts_1044, string ts_1052, bool t_bool_52, int ?i_unused_1064, bool li_ret_1068, int li_1072, int li_1076, int li_1080, int li_1084, int li_1088, int li_1092, int li_1096, bool li_1100, int t_bool_36, int ?i_unused_1108, int t_bool_44, int ?i_unused_1116, int ti_1120, int ?i_unused_1124, int ?i_unused_1128, int ?i_unused_1132, int ?i_unused_1136, int ?i_unused_1140, int ?i_unused_1144, int ?i_unused_1148, int ?i_unused_1152, int ?i_unused_1156, int ?i_unused_1160, int /*<u ?i_unused_1164, int ?i_unused_1168, int ?i_unused_1172, int ?i_unused_1176, int ?i_unused_1180, int ?i_unused_1184, int ?i_unused_1188, int ?i_unused_1192, int ?i_unused_1196, int ?i_unused_1200, int ?i_unused_1204, int ?i_unused_1208, int ?i_unused_1212, int ?i_unused_1216, int ?i_unused_1220, int ?i_unused_1224, int ?i_unused_1228, int ?i_unused_1232, int ?i_unused_1236, int ?i_unused_1240, int ?i_unused_1244, int ?i_unused_1248, int ?i_unused_1252, int ?i_unused_1256, int ?i_unused_1260, int ?i_unused_1264, int ?i_unused_1268, int ?i_unused_1272, int ?i_unused_1276, int ?i_unused_1280, int ?i_unused_1284, int ?i_unused_1288, int ?i_unused_1292, int ?i_unused_1296, int ?i_unused_1300, int ?i_unused_1304, int ?i_unused_1308, int ?i_unused_1312, int ?i_unused_1316, int ?i_unused_1320, int ?i_unused_1324, int ?i_unused_1328, int ?i_unused_1332, int ?i_unused_1336, int ?i_unused_1340, int ?i_unused_1344, int ?i_unused_1348, int ?i_unused_1352, int ?i_unused_1356) */ int deinit() { return (0); } /* start parameters bool t_bool_0, int ?i_unused_4, bool t_bool_8, int ?i_unused_12, string ts_unused_16, bool t_bool_24, int ?i_unused_28, bool t_bool_0, int ?i_unused_36, int ?i_unused_40, int ?i_unused_44, bool t_bool_16, int ?i_unused_52, int a_cmd_0, int ?i_unused_60, double l_price_8, color l_color_16, int l_ticket_20, int l_error_24, string ls_unused_84, double l_price_36, double l_price_44, double l_price_52, double ld_116, double ld_124, double l_lots_76, int li_140, bool t_bool_88, int ?i_unused_148, double td_152, bool t_bool_104, int ?i_unused_164, bool l_bool_0, int li_172, int l_error_8, int l_ticket_12, string ls_unused_184, int l_pos_24, int t_cmd_28, int ?i_unused_200, double t_bool_36, string ts_unused_212, double t_bool_52, double td_228, double td_236, int ?i_unused_244, int li_248, int l_count_8, int l_count_12, int li_260, int l_error_20, int l_ticket_24, string ls_unused_272, int l_pos_36, int li_284, double t_cmd_44, double t_bool_52, int ?i_unused_304, int ?i_unused_308, double t_bool_68, double td_320, bool li_ret_328, bool li_332, bool li_336, bool li_340, double l_iclose_16, double l_ima_24, double l_iwpr_32, double l_iatr_40, double l_icci_48, double l_irsi_56, double l_ibands_64, int li_400, int li_404, double ld_408, double ld_416, double ld_424, double t_low_104, string ts_unused_440, double t_low_120, bool t_bool_128, int ?i_unused_460, bool li_ret_464, bool li_468, bool li_472, double l_iclose_12, double l_ima_20, double l_iwpr_28, double l_iatr_36, double l_icci_44, double l_irsi_52, double l_ibands_60, int li_532, int li_536, double ld_540, double ld_548, double t_high_92, int ?i_unused_564, int ?i_unused_568, double t_high_108, bool t_bool_116, int ?i_unused_584, double ad_588, int ai_596, bool li_ret_600, bool li_604, bool li_608, do uble l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_644, double ld_652, double ld_660, double ld_668, double t_bool_88, double t_bool_96, double t_bool_104, double ad_700, int ai_708, bool li_ret_712, bool li_716, bool li_720, double l_iwpr_24, double l_iclose_32, double l_iopen_40, double l_iclose_48, double ld_756, double ld_764, double ld_772, double ld_780, double t_bool_88, double t_bool_96, double t_bool_104, double td_812, double td_820, int ?i_unused_828, int ?i_unused_832, int li_836, int l_pos_4, bool t_bool_8, int ?i_unused_848, int ?i_unused_852, int ?i_unused_856, string ts_unused_860, int l_count_0, int li_872, int l_pos_8, bool t_bool_12, int ?i_unused_884, bool t_bool_20, int ?i_unused_892, int ?i_unused_896, int ?i_unused_900, bool t_bool_36, int ?i_unused_908, string ls_912, string ts_920, string ts_928, string ts_936, int ti_944, int ?i_unused_948, double ld_ret_952, double ld_960, double t_marginrequired_16, double t_bool_24, bool t_bool_32, int ?i_unused_988, string ts_unused_992, double td_1000, string asa_1008[2], int l_icustom_4, int l_icustom_8, bool li_ret_1020, int l_error_16, int li_1028, int l_index_24, double t_bool_28, string ts_1044, string ts_1052, bool t_bool_52, int ?i_unused_1064, bool li_ret_1068, int li_1072, int li_1076, int li_1080, int li_1084, int li_1088, int li_1092, int li_1096, bool li_1100, int t_bool_36, int ?i_unused_1108, int t_bool_44, int ?i_unused_1116, int ti_1120, int ?i_unused_1124, int ?i_unused_1128, int ?i_unused_1132, int ?i_unused_1136, int ?i_unused_1140, int ?i_unused_1144, int ?i_unused_1148, int ?i_unused_1152, int ?i_unused_1156, int ?i_unused_1160, int /*<u ?i_unused_1164, int ?i_unused_1168, int ?i_unused_1172, int ?i_unused_1176, int ?i_unused_1180, int ?i_unused_1184, int ?i_unused_1188, int ?i_unused_1192, int ?i_unused_1196, int ?i_unused_1200, int ?i_unused_1204, int ?i_unused_1208, int ?i_unused_1212, int ?i_unused_1216, int ?i_unused_1220, int ?i_unused_1224, int ?i_unused_1228, int ?i_unused_1232, int ?i_unused_1236, int ?i_unused_1240, int ?i_unused_1244, int ?i_unused_1248, int ?i_unused_1252, int ?i_unused_1256, int ?i_unused_1260, int ?i_unused_1264, int ?i_unused_1268, int ?i_unused_1272, int ?i_unused_1276, int ?i_unused_1280, int ?i_unused_1284, int ?i_unused_1288, int ?i_unused_1292, int ?i_unused_1296, int ?i_unused_1300, int ?i_unused_1304, int ?i_unused_1308, int ?i_unused_1312, int ?i_unused_1316, int ?i_unused_1320, int ?i_unused_1324, int ?i_unused_1328, int ?i_unused_1332, int ?i_unused_1336, int ?i_unused_1340, int ?i_unused_1344, int ?i_unused_1348, int ?i_unused_1352, int ?i_unused_1356) */ int start() { // SetVariable(PurchaseCode, IsTesting(), IsDemo()); // if (LicenseManager() == 3) { if (UseNews == TRUE) if (NewsExist()) return (0); if (!CheckSession()) return (0); CloseOrders(); ModifyOrders(); if (iBars(Symbol(), PERIOD_M15) < MAPeriod || iBars(Symbol(), PERIOD_M15) < WPRPeriod || iBars(Symbol(), PERIOD_M15) < ATRPeriod || iBars(Symbol(), PERIOD_M15) < CCIPeriod) return; if (TradeOnFriday == FALSE && DayOfWeek() == 5) return (0); if (DayOfWeek() == 1 && iVolume(NULL, PERIOD_D1, 0) < 5.0) return (0); if (StringLen(gs_664) < 6) return (0); if ((!IsTesting()) && IsStopped()) return (0); if ((!IsTesting()) && !IsTradeAllowed()) return (0); if ((!IsTesting()) && IsTradeContextBusy()) return (0); HideTestIndicators(TRUE); Trader(); ShowComments(); } return (0); } void Trader() { if (MaxSpreadFilter()) { gi_unused_696 = 1; return; } gi_unused_696 = 0; if (OpenLongSignal() && OpenTradeCount() && OpenBuy) OpenPosition(OP_BUY); if (OpenShortSignal() && OpenTradeCount() && OpenSell) OpenPosition(OP_SELL); } int OpenPosition(int a_cmd_0) { double l_price_8; color l_color_16; int l_ticket_20; int l_error_24; string ls_unused_28; double l_price_36; double l_price_44; double l_price_52; double l_lots_76; double ld_60 = NormalizeDouble(TakeProfit * gd_652, gi_660); double ld_68 = NormalizeDouble(StopLoss * gd_652, gi_660); if (UseMM) l_lots_76 = MM(); else l_lots_76 = Lots; if (AccountFreeMarginCheck(gs_664, a_cmd_0, l_lots_76) <= 0.0 || GetLastError() == 134/* NOT_ENOUGH_MONEY */) return (-1); RefreshRates(); if (a_cmd_0 == OP_BUY) { l_price_36 = Ask; l_color_16 = g_color_704; if (UseStartSLTP) { l_price_44 = l_price_36 + ld_60; l_price_52 = l_price_36 - ld_68; } else { l_price_44 = 0; l_price_52 = 0; } } else { l_price_36 = Bid; l_color_16 = g_color_708; if (UseStartSLTP) { l_price_44 = l_price_36 - ld_60; l_price_52 = l_price_36 + ld_68; } else { l_price_44 = 0; l_price_52 = 0; } } int li_84 = gi_684; while (li_84 > 0 && OpenTradeCount()) { l_ticket_20 = OrderSend(gs_664, a_cmd_0, l_lots_76, l_price_36, g_slippage_676, l_price_52, l_price_44, ExpertName, MagicNumber, 0, l_color_16); if (l_ticket_20 < 0) { l_error_24 = GetLastError(); if (l_error_24 != 136/* OFF_QUOTES */) break; if (!(gi_724)) break; Sleep(6000); RefreshRates(); if (a_cmd_0 == OP_BUY) l_price_8 = Ask; else l_price_8 = Bid; if (NormalizeDouble(MathAbs((l_price_8 - l_price_36) / gd_652), 0) > gi_720) break; l_price_36 = l_price_8; li_84--; } else if (OrderSelect(l_ticket_20, SELECT_BY_TICKET)) l_price_36 = OrderOpenPrice(); } return (l_ticket_20); } void ModifyOrders() { bool l_bool_0; int li_4 = OrdersTotal() - 1; int l_error_8 = GetLastError(); int l_ticket_12 = OrderTicket(); string ls_unused_16 = OrderType(); for (int l_pos_24 = li_4; l_pos_24 >= 0; l_pos_24--) { if (OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES)) { if (OrderType() == OP_BUY) { if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) if (Bid - OrderOpenPrice() > SafeStartTarget * gd_652 && MathAbs(OrderOpenPrice() + SafeTarget * gd_652 - OrderStopLoss()) >= Point) l_bool_0 = OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(OrderOpenPrice() + SafeTarget * gd_652, Digits), OrderTakeProfit(), 0, Blue); } if (OrderType() == OP_SELL) { if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) if (OrderOpenPrice() - Ask > SafeStartTarget * gd_652 && MathAbs(OrderOpenPrice() - SafeTarget * gd_652 - OrderStopLoss()) >= Point) l_bool_0 = OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(OrderOpenPrice() - SafeTarget * gd_652, Digits), OrderTakeProfit(), 0, Red); } } } } void CloseOrders() { int li_4 = OrdersTotal() - 1; int l_count_8 = 0; int l_count_12 = 0; int li_16 = 3; int l_error_20 = GetLastError(); int l_ticket_24 = OrderTicket(); string ls_unused_28 = OrderType(); for (int l_pos_36 = li_4; l_pos_36 >= 0; l_pos_36--) { if (OrderSelect(l_pos_36, SELECT_BY_POS, MODE_TRADES)) { if (OrderType() == OP_BUY) { l_count_8++; if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) { if (Bid >= OrderOpenPrice() + TakeProfit * gd_652 || Bid <= OrderOpenPrice() - StopLoss * gd_652 || CloseLongSignal(OrderOpenPrice(), ExistPosition())) { for (int li_40 = 1; li_40 <= MathMax(1, li_16); li_40++) { RefreshRates(); if (OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid, Digits), g_slippage_680, g_color_712)) { l_count_8--; break; } } } } } if (OrderType() == OP_SELL) { l_count_12++; if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) { if (Ask <= OrderOpenPrice() - TakeProfit * gd_652 || Ask >= OrderOpenPrice() + StopLoss * gd_652 || CloseShortSignal(OrderOpenPrice(), ExistPosition())) { for (li_40 = 1; li_40 <= MathMax(1, li_16); li_40++) { RefreshRates(); if (OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask, Digits), g_slippage_680, g_color_716)) { l_count_12--; break; } } } } } } } } int OpenLongSignal() { bool li_ret_0 = FALSE; bool li_4 = FALSE; bool li_8 = FALSE; bool li_12 = FALSE; double l_iclose_16 = iClose(NULL, PERIOD_M15, 1); double l_ima_24 = iMA(NULL, PERIOD_M15, MAPeriod, MAShift1, MAMethod, MAAppliedPrice, MAShift2); double l_iwpr_32 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift); double l_iatr_40 = iATR(NULL, PERIOD_M15, ATRPeriod, ATRShift); double l_icci_48 = iCCI(NULL, PERIOD_M15, CCIPeriod, CCIAppliedPrice, CCIShift); double l_irsi_56 = iRSI(NULL, PERIOD_M15, RSIPeriod, RSIAppliedPrice, RSIShift); double l_ibands_64 = iBands(Symbol(), 0, BBPeriod, BBDeviation, BBBandsShift, BBAppliedPrice, BBModeBuy, BBShift); int li_72 = l_iclose_16 / gd_652; int li_76 = Bid / gd_652; double ld_80 = NormalizeDouble(BuyFilterMA1 * gd_652, gi_660); double ld_88 = NormalizeDouble(BuyFilterMA2 * gd_652, gi_660); double ld_96 = NormalizeDouble(BuyFilterMA3 * gd_652, gi_660); if (UseBB) if (Low[BBShift] >= l_ibands_64) return (0); if (UseRSI) if (l_irsi_56 <= TradeRSIFilter) return (0); if (l_iatr_40 <= TradeATRFilter * gd_652) return (0); if (l_iclose_16 >= l_ima_24 + ld_80 && li_72 >= li_76 && BuyLimitWPR1 > l_iwpr_32) li_4 = TRUE; else li_4 = FALSE; if (l_iclose_16 >= l_ima_24 + ld_88 && li_72 >= li_76 && (-TradeCCIFilter) > l_icci_48) li_8 = TRUE; else li_8 = FALSE; if (l_iclose_16 >= l_ima_24 + ld_96 && li_72 >= li_76 && BuyLimitWPR2 > l_iwpr_32) li_12 = TRUE; else li_12 = FALSE; if (li_4 == TRUE || li_8 == TRUE || li_12 == TRUE) li_ret_0 = TRUE; else li_ret_0 = FALSE; return (li_ret_0); } int OpenShortSignal() { bool li_ret_0 = FALSE; bool li_4 = FALSE; bool li_8 = FALSE; double l_iclose_12 = iClose(NULL, PERIOD_M15, 1); double l_ima_20 = iMA(NULL, PERIOD_M15, MAPeriod, MAShift1, MAMethod, MAAppliedPrice, MAShift2); double l_iwpr_28 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift); double l_iatr_36 = iATR(NULL, PERIOD_M15, ATRPeriod, ATRShift); double l_icci_44 = iCCI(NULL, PERIOD_M15, CCIPeriod, CCIAppliedPrice, CCIShift); double l_irsi_52 = iRSI(NULL, PERIOD_M15, RSIPeriod, RSIAppliedPrice, RSIShift); double l_ibands_60 = iBands(Symbol(), 0, BBPeriod, BBDeviation, BBBandsShift, BBAppliedPrice, BBModeSell, BBShift); int li_68 = l_iclose_12 / gd_652; int li_72 = Bid / gd_652; double ld_76 = NormalizeDouble(SellFilterMA1 * gd_652, gi_660); double ld_84 = NormalizeDouble(SellFilterMA2 * gd_652, gi_660); if (UseBB) if (High[BBShift] <= l_ibands_60) return (0); if (UseRSI) if (l_irsi_52 <= TradeRSIFilter) return (0); if (l_iatr_36 <= TradeATRFilter * gd_652) return (0); if (l_iclose_12 <= l_ima_20 - ld_76 && li_68 <= li_72 && l_iwpr_28 > SellLimitWPR1) li_4 = TRUE; else li_4 = FALSE; if (l_iclose_12 <= l_ima_20 - ld_84 && li_68 <= li_72 && l_icci_44 > TradeCCIFilter) li_8 = TRUE; else li_8 = FALSE; if (li_4 == TRUE || li_8 == TRUE) li_ret_0 = TRUE; else li_ret_0 = FALSE; return (li_ret_0); } int CloseLongSignal(double ad_0, int ai_8) { bool li_ret_12 = FALSE; bool li_16 = FALSE; bool li_20 = FALSE; double l_iwpr_24 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift); double l_iclose_32 = iClose(NULL, PERIOD_M15, 1); double l_iopen_40 = iOpen(NULL, PERIOD_M1, 1); double l_iclose_48 = iClose(NULL, PERIOD_M1, 1); double ld_56 = NormalizeDouble((-LimitLP) * gd_652, gi_660); double ld_64 = NormalizeDouble(l_iclose_32, gi_660); double ld_72 = NormalizeDouble(Bid, gi_660); double ld_80 = NormalizeDouble(CloseBuyFilter * gd_652, gi_660); if (ad_0 - Bid <= ld_56 && ld_64 <= ld_72 && l_iwpr_24 > BuyLimitWPR3 && ai_8 == 1) li_16 = TRUE; else li_16 = FALSE; if (l_iopen_40 > l_iclose_48 && Bid - ad_0 >= ld_80 && ai_8 == 1) li_20 = TRUE; else li_20 = FALSE; if (li_16 == TRUE || li_20 == TRUE) li_ret_12 = TRUE; else li_ret_12 = FALSE; return (li_ret_12); } int CloseShortSignal(double ad_0, int ai_8) { bool li_ret_12 = FALSE; bool li_16 = FALSE; bool li_20 = FALSE; double l_iwpr_24 = iWPR(NULL, PERIOD_M15, WPRPeriod, WPRShift); double l_iclose_32 = iClose(NULL, PERIOD_M15, 1); double l_iopen_40 = iOpen(NULL, PERIOD_M1, 1); double l_iclose_48 = iClose(NULL, PERIOD_M1, 1); double ld_56 = NormalizeDouble((-LimitLP) * gd_652, gi_660); double ld_64 = NormalizeDouble(l_iclose_32, gi_660); double ld_72 = NormalizeDouble(Bid, gi_660); double ld_80 = NormalizeDouble(CloseSellFilter * gd_652, gi_660); if (Ask - ad_0 <= ld_56 && ld_64 >= ld_72 && l_iwpr_24 < SellLimitWPR2 && ai_8 == 1) li_16 = TRUE; else li_16 = FALSE; if (l_iopen_40 < l_iclose_48 && ad_0 - Ask >= ld_80 && ai_8 == 1) li_20 = TRUE; else li_20 = FALSE; if (li_16 == TRUE || li_20 == TRUE) li_ret_12 = TRUE; else li_ret_12 = FALSE; return (li_ret_12); } bool MaxSpreadFilter() { RefreshRates(); if (10000.0 * (Ask - Bid) > SpreadLimit) return (TRUE); return (FALSE); } int ExistPosition() { int li_0 = OrdersTotal() - 1; for (int l_pos_4 = li_0; l_pos_4 >= 0; l_pos_4--) { if (OrderSelect(l_pos_4, SELECT_BY_POS, MODE_TRADES)) { if (OrderMagicNumber() == MagicNumber) { if (OrderSymbol() == gs_664) if (OrderType() <= OP_SELL) return (1); } } } return (0); } int OpenTradeCount() { int l_count_0 = 0; int li_4 = OrdersTotal() - 1; for (int l_pos_8 = li_4; l_pos_8 >= 0; l_pos_8--) { if (OrderSelect(l_pos_8, SELECT_BY_POS, MODE_TRADES)) if (OrderMagicNumber() == MagicNumber && OrderSymbol() == gs_664) l_count_0++; } if (l_count_0 >= gi_684) return (0); return (1); } void ShowComments() { string ls_0 = ""; ls_0 = ls_0 + "\n " + "\n Copyright © GENIALBIT.COM" + "\n " + ExpertName; // + "\n Purchase code: " + OrderCode() // + "\n Activation Key: " + LicenseKey() // + "\n Ativation Status: " + ActivationStatus(); Comment(ls_0); } double MM() { double ld_ret_0 = 0.0; double ld_8 = AccountEquity() * (UseEquityPercentage / 100.0) / (MarketInfo(Symbol(), MODE_MARGINREQUIRED) * MarketInfo(Symbol(), MODE_MINLOT)) * MarketInfo(Symbol(), MODE_MINLOT) / 2.0; if (ld_8 < MarketInfo(Symbol(), MODE_MINLOT)) ld_8 = MarketInfo(Symbol(), MODE_MINLOT); if (UseEquityPercentage != 0) { if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.01) ld_ret_0 = NormalizeDouble(ld_8, 2); else if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.05 || MarketInfo(Symbol(), MODE_LOTSTEP) == 0.1) ld_ret_0 = NormalizeDouble(ld_8, 1); } return (ld_ret_0); } bool NewsExist() { string lsa_0[2]; int l_icustom_4; int l_icustom_8; bool li_ret_12; if (!UseNews) return (FALSE); lsa_0[0] = Symbol(); lsa_0[1] = "EURUSD"; GetLastError(); int li_20 = 1; if (NewsIncludeEURUSD) li_20 = 2; for (int l_index_24 = 0; l_index_24 < li_20; l_index_24++) { l_icustom_4 = iCustom(NULL, 0, "NewsFilter", lsa_0[l_index_24], NewsHighImpact, NewsMediumImpact, 0, NewsSpeaks, 1, 1, 0); l_icustom_8 = iCustom(NULL, 0, "NewsFilter", lsa_0[l_index_24], NewsHighImpact, NewsMediumImpact, 0, NewsSpeaks, 1, 1, 1); if (l_icustom_8 <= MinUntilNextNews || l_icustom_4 <= MinSincePrevNews) li_ret_12 = TRUE; } int l_error_16 = GetLastError(); if (l_error_16 > 0/* NO_ERROR */) return (TRUE); return (li_ret_12); } bool CheckSession() { int li_4; int li_8; int li_12; int li_16; int li_20; int li_24; int li_28; bool li_32; bool li_ret_0 = TRUE; if (UseSession) { li_4 = GMTOffset; if (DaylightSavings) li_4 = GMTOffset + 1; li_8 = li_4 + 0; li_12 = li_4 + 8; li_16 = li_4 + 6; li_20 = li_4 + 16; li_24 = li_4 + 12; li_28 = li_4 + 21; if (DayOfWeek() == 0) { if (AsianDaily) { li_8 = AsianOpenSunday; li_12 = AsianCloseSunday; } if (EuropeDaily) { li_16 = EuropeOpenSunday; li_20 = EuropeCloseSunday; } if (NeyYorkDaily) { li_24 = NYOpenSunday; li_28 = NYCloseSunday; } if (!gba_644[0]) { gba_644[0] = 1; g_datetime_648 = TimeCurrent(); gba_644[5] = 0; } } if (DayOfWeek() == 1) { if (AsianDaily) { li_8 = AsianOpenMonday; li_12 = AsianCloseMonday; } if (EuropeDaily) { li_16 = EuropeOpenMonday; li_20 = EuropeCloseMonday; } if (NeyYorkDaily) { li_24 = NYOpenMonday; li_28 = NYCloseMonday; } if (!gba_644[1]) { gba_644[1] = 1; g_datetime_648 = TimeCurrent(); gba_644[0] = 0; } } if (DayOfWeek() == 2) { if (AsianDaily) { li_8 = AsianOpenTuesday; li_12 = AsianCloseTuesday; } if (EuropeDaily) { li_16 = EuropeOpenTuesday; li_20 = EuropeCloseTuesday; } if (NeyYorkDaily) { li_24 = NYOpenTuesday; li_28 = NYCloseTuesday; } if (!gba_644[2]) { gba_644[2] = 1; g_datetime_648 = TimeCurrent(); gba_644[1] = 0; } } if (DayOfWeek() == 3) { if (AsianDaily) { li_8 = AsianOpenWednesday; li_12 = AsianCloseWednesday; } if (EuropeDaily) { li_16 = EuropeOpenWednesday; li_20 = EuropeCloseWednesday; } if (NeyYorkDaily) { li_24 = NYOpenWednesday; li_28 = NYCloseWednesday; } if (!gba_644[3]) { gba_644[3] = 1; g_datetime_648 = TimeCurrent(); gba_644[2] = 0; } } if (DayOfWeek() == 4) { if (AsianDaily) { li_8 = AsianOpenThursday; li_12 = AsianCloseThursday; } if (EuropeDaily) { li_16 = EuropeOpenThursday; li_20 = EuropeCloseThursday; } if (NeyYorkDaily) { li_24 = NYOpenThursday; li_28 = NYCloseThursday; } if (!gba_644[4]) { gba_644[4] = 1; g_datetime_648 = TimeCurrent(); gba_644[3] = 0; } } if (DayOfWeek() == 5) { if (AsianDaily) { li_8 = AsianOpenFriday; li_12 = AsianCloseFriday; } if (EuropeDaily) { li_16 = EuropeOpenFriday; li_20 = EuropeCloseFriday; } if (NeyYorkDaily) { li_24 = NYOpenFriday; li_28 = NYCloseFriday; } if (!gba_644[5]) { gba_644[5] = 1; g_datetime_648 = TimeCurrent(); gba_644[4] = 0; } } li_32 = FALSE; if (Asian && Hour() >= li_8 && Hour() <= li_12) li_32 = TRUE; if (Europe && Hour() >= li_16 && Hour() <= li_20) li_32 = TRUE; if (NewYork && Hour() >= li_24 && Hour() <= li_28) li_32 = TRUE; li_ret_0 = li_32; } return (li_ret_0); }