#property copyright "FX- MACH 3 V1.0 25/04/217 - Rodolfo Leonardo"
#property link "rodolfo.leonardo@gmail.com"
#include <WinUser32.mqh>
/*#import "ws2_32.dll"
int WSAStartup(int a0, int& a1[]);
int WSACleanup();
int WSAGetLastError();
int socket(int a0, int a1, int a2);
int setsockopt(int a0, int a1, int a2, int& a3[], int a4);
int sendto(int a0, int& a1[], int a2, int a3, int& a4[], int a5);
int closesocket(int a0);
int inet_addr(string a0);*/
#import "IceFX.TraderAgent_edu.dll"
void IceLock_GetWindowSize(int a0, int& a1[]);
int IceLock_GetMouseState(int a0, int& a1[]);
void IceLock_StartTicker(int a0, int a1);
void IceLock_StopTicker(int a0);
// string IceLock_GetComputerID();
// string IceLock_CheckLicense(int a0, string a1, string a2, string a3, string a4, string a5, int a6);
// string IceLock_GetLastResponseText(int a0);
// string IceLock_GetVersion();
#import
/////////////////////////////////////////////////////
extern string FFCall = "Noticias FFCall";
extern int MinsBeforeNews = 60; // mins before an event to stay out of trading
extern int MinsAfterNews = 20; // mins after an event to stay out of trading
extern bool UseFFCall = true;
extern bool IncludeHigh = true;
bool NewsTime;
extern string Configuracoes = "Configurações Globais";
extern double EquityLossMoney = 0.0;
extern double Lots = 0.01;
extern double LotExponent = 2;
extern int lotdecimal = 2;
extern double PipStep = 35.0;
extern bool Turbo = FALSE;
extern bool NewCycle = FALSE;
extern int PeriodRSI = 1;
int XG_timeframe_124;
double XG_lots_128 = 20.0;
extern bool MM = FALSE;
extern double Risk = 1.0;
extern double TakeProfit = 40.0;
bool XGi_156 = FALSE;
double XGd_160 = 20.0;
bool XGi_168 = FALSE;
double XGd_172 = 13.0;
double XGd_180 = 3.0;
double XGd_188 = 5.0;
extern bool HabilitaRobot1 = false;
extern string t3 = "Robo 1 - Hilo Parametros";
int XGi_224;
extern int MaxTrades_Robot1 = 30;
bool XGi_252 = FALSE;
double XGd_256 = 48.0;
double XG_pips_268 = 500.0;
double XGd_292;
double XG_slippage_300;
extern int MagicNumber_Robot1 = 11111;
double XG_price_312;
double XGd_320;
double XGd_unused_328;
double XGd_unused_336;
double XGd_344;
double XGd_352;
double XG_price_360;
double XGd_368;
double XGd_376;
double XGd_384;
double XGd_392;
double XGd_400;
bool XGi_408;
string XGs_412 = "Robo 1 ";
int XGi_420 = 0;
int XGi_424;
int XGi_428 = 0;
double XGd_432;
int XG_pos_440 = 0;
int XGi_444;
double XGd_448 = 0.0;
bool XGi_456 = FALSE;
bool XGi_460 = FALSE;
bool XGi_464 = FALSE;
int XGi_468;
bool XGi_472 = FALSE;
double XGd_476;
double XGd_484;
double XGd_288 = 0.0;
extern bool HabilitaRobot2 = true;
extern string t4 = "Robo 2 - Parametros";
int XGi_520;
extern int MaxTrades_Robot2 = 10;
extern int TimeFrame_Robot2 = PERIOD_M15;
extern double PipsGrid_Robot2 = 500.0;
bool XGi_584 = FALSE;
double XGd_588 = 48.0;
double XGd_596;
double XG_slippage_604;
extern int MagicNumber_Robot2 = 12324;
double XG_price_616;
double XGd_624;
double XGd_unused_632;
double XGd_unused_640;
double XG_price_648;
double XGd_656;
double XGd_664;
double XGd_672;
double XGd_680;
double XGd_688;
bool XGi_696;
string XGs_700 = "Robo 2";
int XGi_708 = 0;
int XGi_712;
int XGi_716 = 0;
double XGd_720;
int XG_pos_728 = 0;
int XGi_732;
double XGd_736 = 0.0;
bool XGi_744 = FALSE;
bool XGi_748 = FALSE;
bool XGi_752 = FALSE;
int XGi_756;
bool XGi_760 = FALSE;
double XGd_764;
double XGd_772;
int XG_datetime_780 = 1;
extern bool HabilitaRobot3;
extern string t5 = "Robo 3 - Parametros";
int XGi_812;
extern int MaxTrades_Robot3 = 0;
int XG_timeframe_840 = PERIOD_M1;
double XG_pips_848 = 500.0;
bool XGi_872 = FALSE;
double XGd_876 = 48.0;
double XGd_884;
double XG_slippage_892;
extern int MagicNumber_Robot3 = 16794;
double XG_price_904;
double XGd_912;
double XGd_unused_920;
double XGd_unused_928;
double XG_price_936;
double XGd_944;
double XGd_952;
double XGd_960;
double XGd_968;
double XGd_976;
bool XGi_984;
string XGs_988 = "Robo 3";
int XGi_996 = 0;
int XGi_1000;
int XGi_1004 = 0;
double XGd_1008;
int XG_pos_1016 = 0;
int XGi_1020;
double XGd_1024 = 0.0;
bool XGi_1032 = FALSE;
bool XGi_1036 = FALSE;
bool XGi_1040 = FALSE;
int XGi_1044;
bool XGi_1048 = FALSE;
double XGd_1052;
double XGd_1060;
int XG_datetime_1068 = 1;
string XG_text_1072;
string XG_text_1080;
string XG_dbl2str_1088 = "";
string XG_dbl2str_1096 = "";
int XG_color_1104 = ForestGreen;
int PararDiaSTOP = 999;
/////////////////////////////////////////////////
int TamanhoTelaX = 245;
int TamanhoTelaY = 900;
string _____Product_name_______ = "FX- MACH 3 ";
string CC1______________________ = "========= License settings =========";
string PassKey = "";
string CC2______________________ = "========= Common settings =========";
int MagicNumber = MagicNumber_Robot2;
string CommentForOrder = "FX- MACH 3";
int OrderSlippage = 3;
string CC3______________________ = "========= Money management =========";
double RiskPercent = 1.0;
double LOT = Lots;
string CC4______________________ = "========= SL / TP settings =========";
double StopLoss = 0;
//extern double TakeProfit = 80.0;
double TrailingStop = 0;
string CC41 = " TrailingStopAt: 0 - after BreakEventAt; x - after x pips";
double TrailingStopAt = 0.0;
bool ForceSetSLTPIfMissing = FALSE;
string CC5______________________ = "========= Break Even settings =========";
double BreakEvenAt = 0.0;
double BreakEvenPips = 0.0;
string CC6______________________ = "========= Partial Close settings =========";
double QuickPartialClose = 50.0;
double PartialClosePos1 = 0.0;
double PartialClosePercent1 = 50.0;
double PartialClosePos2 = 0.0;
double PartialClosePercent2 = 50.0;
double PartialClosePos3 = 0.0;
double PartialClosePercent3 = 50.0;
string CC13_____________________ = "========= Trendline handling =========";
bool UseTrendLines = FALSE;
bool UseChannels = FALSE;
bool TrueTLSupport = FALSE;
bool OppositeTrendLineOrder = FALSE;
bool OpenAfterCandleClose = FALSE;
bool DeleteTrendLinesAfterOpen = TRUE;
bool TrendLinesOCOMode = FALSE;
string CC19_____________________ = "========= Pending line handling =========";
bool UsePendingLines = FALSE;
color PendingLineColor = LightSkyBlue;
bool PendingOCOMode = FALSE;
string CC20_____________________ = "========= Auto Close-All settings =======";
double AutoCloseAllProfitMoney = 0.0;
double AutoCloseAllProfitPercent = 0.0;
double AutoCloseAllLossMoney = 0.0;
double AutoCloseAllLossPercent = 0.0;
string CC15_____________________ = "========= Grid feature settings =========";
bool gi_392 = false;
double GridStep = 20.0;
int GridMaxOrderCount = 10;
double GridLotMultiplier = 1.6;
bool GridReCalculateSLTP = TRUE;
bool AutoGridMode = FALSE;
string gs_nsd_424 = "========= Hedge feature settings =========";
bool gi_432 = false;
extern string CC7______________________ = "========= Visual settings =========";
extern bool DrawPriceLabel = TRUE;
extern bool BackgroundOpacity = FALSE;
int gi_452 = 2958105;
extern string CC71____________________ = "========= Control line settings =========";
extern bool ShowControlLineLabels = TRUE;
extern int ControlLineOffset = 10;
color ControlLineLabelColor = Black;
color StopLossColor = Red;
color TakeProfitColor = LimeGreen;
color PartialCloseColor = Orange;
color BreakEvenColor = LightSkyBlue;
extern string CC8______________________ = "========= Account Panel settings =========";
extern bool ShowAccountPanel = TRUE;
extern int AccountPanelX = 25;
extern int AccountPanelY = 25;
extern color AveragePriceLineColor = SlateGray;
string CC9______________________ = "========= Control Panel settings =========";
bool ShowControlPanel = true;
int ControlPanelX = 420;
int ControlPanelY = 25;
string CC10_____________________ = "========= Order list settings =========";
bool ShowOrderListPanel = FALSE;
int OrderListPanelX = 25;
int OrderListPanelY = 220;
string CC81 = " 0 - Side by order list, 1 - Bottom of order list";
int PropertiesPanelPos = 1;
extern string CC11_____________________ = "========= Profit Panel settings =========";
extern bool ShowProfitPanel = TRUE;
extern int ProfitPanelX = 200;
extern int ProfitPanelY = 25;
extern string CC16_____________________ = "========= Dashboard Panel settings =========";
extern bool ShowDashboard = TRUE;
extern int DashboardX = -220;
extern int DashboardY = 200;
extern double DashboardSpreadRedValue = 3.0;
extern bool Dashboard_OnlyCurrentTF = FALSE;
extern int Dashboard_MAPeriod = 14;
extern int Dashboard_MAMode = 1;
extern int Dashboard_MAPrice = 0;
extern int Dashboard_CCIPeriod = 14;
extern int Dashboard_CCIPrice = 5;
extern int Dashboard_RSIPeriod = 14;
extern int Dashboard_RSIPrice = 5;
extern int Dashboard_StochKPeriod = 8;
extern int Dashboard_StockDPeriod = 3;
extern int Dashboard_StochSlowing = 3;
extern int Dashboard_StochMode = 1;
extern int Dashboard_StochPrice = 0;
extern int Dashboard_1VS_FractalMTF = 240;
extern string CC12_____________________ = "========= Notifications =========";
extern bool ShowNotifications = TRUE;
string CC14_____________________ = "========= Extra features =========";
bool StealthMode = FALSE;
double DontAllowOrderOpenMaxSpread = 0.0;
extern bool ShowPivotPoints = TRUE;
extern bool ShowNextCandleTime = TRUE;
extern color NextCandleTimeTextColor = White;
extern bool ShowSentinelAlerts = TRUE;
string CC17_____________________ = "======= Performance settings =========";
int TickTime = 200;
int BackTestTime = 50;
bool gi_732 = FALSE;
bool gi_736 = FALSE;
bool gi_nsd_740 = TRUE;
int gi_nsd_744 = 0;
double gd_748 = 0.0;
int gi_756;
int gi_760;
int gi_764 = 0;
int gi_768 = 0;
int g_dttm_772 = 0;
bool g_bool_776 = FALSE;
double g_bid_780;
double g_ask_788 = 0.0;
bool gi_796 = FALSE;
int g_dttm_800 = 0;
int gi_804 = 0;
bool gi_808 = FALSE;
bool g_bool_812 = FALSE;
int gi_816 = 1000;
int g_ticket_820 = -1;
string gs_824 = "127.0.0.1";
int gi_832 = 42780;
int gi_836 = 0;
int gi_840 = 16;
bool g_bool_844 = TRUE;
bool gi_848 = FALSE;
bool g_bool_852 = TRUE;
bool g_bool_856 = FALSE;
string g_name_860 = "";
string g_str_concat_868 = "";
double gd_876 = 1.0;
string gs_884;
string gs_892;
string gsa_900[] = {"M1", "M5", "M15", "M30", "H1", "H4", "D1", "W1", "MN"};
int gia_904[] = {1, 5, 15, 30, 60, 240, 1440, 10080, 43200};
int gi_nsd_908 = 1;
int gi_nsd_912 = 10;
int gi_nsd_916 = 10;
int gi_nsd_920 = 6;
string gs_nsd_924 = "Verdana";
int gi_932 = -1;
int gi_936 = 3145645;
int gi_940 = 255;
int g_fontsize_944 = 8;
bool gi_948 = FALSE;
int gi_952 = 3;
string g_comment_956 = "";
bool g_bool_964 = FALSE;
int g_ticket_968 = -1;
int gi_972;
int gi_nsd_976;
int gi_nsd_980;
string gs_984 = "";
int gi_992 = 0;
string gs_996 = "DrW.";
string gs_1004 = "TA";
string gs_1012 = "SL";
string gs_1020 = "TP";
string gs_nsd_1028 = "TSL";
string gs_1036 = "BE";
string gs_1044 = "PC";
string gs_pc1_1052 = "PC1";
string gs_pc2_1060 = "PC2";
string gs_pc3_1068 = "PC3";
string gs_grid_1076 = "GRID";
string gs_1084 = "GRIDPARENT";
string gs_1092 = "GRIDLEVEL";
string gs_1100 = "GRIDPRICE";
string gs_avgprice_1108 = "AVGPRICE";
string gs_pending_1116 = "PENDING";
string gs_1124 = "LASTTRENDOPEN";
string gs_udplog_1132 = "UDPLog";
double gd_nsd_1140 = 0.0;
double gd_nsd_1148 = 0.0;
double gd_nsd_1156 = 0.0;
double gd_nsd_1172 = 0.0;
int g_corner_1180 = 0;
int gia_1184[4];
int gia_1188[4];
int gi_1192;
int gi_1196;
int gia_1200[3];
int gi_1204 = 1;
string gs_1208 = "ZNTF_";
int gi_1216 = 0;
int gi_1220 = 2000;
int gi_1224 = 20;
int gi_1228 = 400;
int gi_nsd_1232 = 50;
bool gi_1236 = FALSE;
int g_fontsize_1240 = 10;
int g_clr_1244 = C'0xE6,0xE6,0xE6';
int gi_1248 = 15;
int gia_1252[6][8];
string gsa_1256[6];
string gs_1260 = "XCP_";
int gi_1268;
int gi_1272;
int gi_1276 = 170;
int gi_1280 = 170;
string gs_1284 = "OL_";
int gia_1292[11];
int gi_1296 = 0;
int gi_1300 = 24;
int gi_1304 = 12;
int gi_1308;
int gi_1312;
int gi_1316 = 170;
int gi_1320 = 170;
bool gi_1324 = FALSE;
int g_dttm_1328 = 0;
string gs_1332 = "PP_";
bool gi_1340 = FALSE;
int gi_1344;
int gi_1348;
int gi_1352 = 320;
int gi_1356 = 160;
int gi_1360 = 220;
int gi_1364 = 30;
int gi_1368 = 86;
int gi_1372 = 20;
int gi_1376 = 25;
string gs_1380 = "AP_";
int gi_1388 = 28;
int gi_1392 = 14;
int gi_1396;
int gi_1400;
int gi_nsd_1404 = 170;
int gi_1408 = 170;
bool gi_nsd_1412 = FALSE;
string gs_1416 = "ProfitP_";
int gi_1424 = 28;
int gi_1428 = 14;
int gi_1432;
int gi_1436;
int gi_nsd_1440 = 170;
int gi_1444 = 170;
bool gi_nsd_1448 = FALSE;
bool gi_1452 = TRUE;
int gi_1456 = 86400;
string gs_1460 = "Dashboard_";
int gi_1468;
int gi_1472;
int gi_nsd_1476 = 170;
int gi_1480 = 170;
bool gi_1484 = FALSE;
string gs_1488 = ".Pivot_";
double gd_1496;
double gd_1504;
double gd_1512;
double gd_1520;
double gd_1528;
double gd_1536;
double gd_1544;
int gi_1552 = 14822282;
int gi_1556 = 3329434;
int gi_1560 = 16776960;
int gi_nsd_1564 = 8421504;
int gi_nsd_1568 = 6908265;
int gi_1572 = 7;
string gs_1576 = "BNextBar_";
int g_count_1584 = 0;
string gsa_1588[50];
int g_count_1592 = 0;
bool gi_1596 = FALSE;
bool gi_1600 = FALSE;
///////////////////////////////////////
// Function to check if it is news time
void NewsHandling()
{
static int PrevMinute = -1;
if (Minute() != PrevMinute)
{
PrevMinute = Minute();
// Use this call to get ONLY impact of previous event
int impactOfPrevEvent =
iCustom(NULL, 0, "FFCal", true, true, false, true, true, 2, 0);
// Use this call to get ONLY impact of nexy event
int impactOfNextEvent =
iCustom(NULL, 0, "FFCal", true, true, false, true, true, 2, 1);
int minutesSincePrevEvent =
iCustom(NULL, 0, "FFCal", true, true, false, true, false, 1, 0);
int minutesUntilNextEvent =
iCustom(NULL, 0, "FFCal", true, true, false, true, false, 1, 1);
NewsTime = false;
if ((minutesUntilNextEvent <= MinsBeforeNews) ||
(minutesSincePrevEvent <= MinsAfterNews))
{
NewsTime = true;
}
}
}//newshandling
// E37F0136AA3FFAF149B351F6A4C948E9
int init() {
init2();
XGi_744 = TRUE;
XGd_400 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
XGd_688 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
XGd_976 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
ObjectCreate("Lable1", OBJ_LABEL, 0, 0, 1.0);
ObjectSet("Lable1", OBJPROP_CORNER, 2);
ObjectSet("Lable1", OBJPROP_XDISTANCE, 23);
ObjectSet("Lable1", OBJPROP_YDISTANCE, 21);
XG_text_1080 = " EA MACH 3";
ObjectSetText("Lable1", XG_text_1080, 16, "Times New Roman", Aqua);
ObjectCreate("Lable", OBJ_LABEL, 0, 0, 1.0);
ObjectSet("Lable", OBJPROP_CORNER, 2);
ObjectSet("Lable", OBJPROP_XDISTANCE, 3);
ObjectSet("Lable", OBJPROP_YDISTANCE, 1);
XG_text_1072 = " ";
ObjectSetText("Lable", XG_text_1072, 16, "Times New Roman", DeepSkyBlue);
return (0);
}
// 52D46093050F38C27267BCE42543EF60
int deinit() {
deinit2();
ObjectDelete("Lable");
ObjectDelete("Lable1");
ObjectDelete("Lable2");
ObjectDelete("Lable3");
return (0);
}
// BC923F6CA29E7C93CDFEA0D2DFB5608A
void CloseAll() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol()) {
if (OrderSymbol() == Symbol() ) {
if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, 10, Blue);
if (OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, 10, Red);
}
Sleep(1000);
}
}
}
// BC923F6CA29E7C93CDFEA0D2DFB5608A
void HedgeAll() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol()) {
if (OrderSymbol() == Symbol() ) {
if (OrderType() == OP_BUY) { OrderSend(Symbol(), OP_SELL, OrderLots(), NormalizeDouble(Bid, Digits), 10, 0, 0, "HedgeAll", OrderMagicNumber(), 0, Red);
//error_64 = GetLastError();
}
if (OrderType() == OP_SELL) { OrderSend(Symbol(), OP_BUY, OrderLots(), NormalizeDouble(Ask, Digits), 10, 0,0, "HedgeAll", OrderMagicNumber(), 0, Blue);
// error_64 = GetLastError();
}
}
Sleep(1000);
}
}
}
// EA2B2676C28C0DB26D39331A336C6B92
int start() {
start2();
NewsHandling();
if(NewsTime && UseFFCall) return(0);
double XGd_288 = AccountBalance() - AccountEquity() ;
if (EquityLossMoney > 0.0) {
if (XGd_288 > 0.0 && XGd_288 >= EquityLossMoney ) {
Print("Close all EquityLossMoney");
CloseAll();
// HedgeAll();
// Print("Account #", AccountNumber(), " Patrimônio líquido atingiu o nível de ", XGd_288, " " + AccountCurrency() + ". Todos os comércios " + Ls_4 + "Será fechado. EquityLossMoney=",
// EquityLossMoney, " " + AccountCurrency());
PararDiaSTOP = 1;
}else{
}
}
if(XGd_288== 0 )PararDiaSTOP = 9999;
if(PararDiaSTOP != 1){
// //PararDiaSTOP = 9999;
}else{
return (0);
}
double ihigh_4;
double ilow_12;
double iclose_20;
double iclose_28;
double XLd_96;
double XLd_180;
double XLd_188;
int XLi_196;
int Xcount_200;
double XLd_276;
double XLd_284;
int XLi_292;
int Xcount_296;
int ind_counted_0 = IndicatorCounted();
/*if (AccountNumber() == 79323) Comment("REGISTERED FOR ", AccountName());
else {
Comment("contact jovetic2010@yahoo.com for register");
return (0);
}*/
if (Lots > XG_lots_128) Lots = XG_lots_128;
//Comment(""
// + "\n"
// + "FX FX- MACH 3"
// + "\n"
// + "________________________________"
// + "\n"
// + "Broker : " + AccountCompany()
// + "\n"
// + "Date and Time : " + TimeToStr(TimeCurrent(), TIME_DATE|TIME_SECONDS)
// + "\n"
// + "________________________________"
// + "\n"
// + "Name : " + AccountName()
// + "\n"
// + "Account Number : " + AccountNumber()
// + "\n"
// + "Currency : " + AccountCurrency()
// + "\n"
// + "_______________________________"
// + "\n"
// + "Amount of Robo 1 OP : " + Xf0_4()
// + "\n"
// + "Amount of Robo 2 OP : " + Xf0_5()
// + "\n"
// + "Amount of Robo 3 OP : " + Xf0_12()
// + "\n"
// + "Total Open Positions : " + OrdersTotal()
// + "\n"
// + "_______________________________"
// + "\n"
// + "Balance : " + DoubleToStr(AccountBalance(), 2)
// + "\n"
// + "Current Equity : " + DoubleToStr(AccountEquity(), 2)
// + "\n"
//+ "_______________________________");
if (PeriodRSI == 1) XG_timeframe_124 = 1;
if (PeriodRSI == 2) XG_timeframe_124 = 5;
if (PeriodRSI == 3) XG_timeframe_124 = 15;
if (PeriodRSI == 4) XG_timeframe_124 = 30;
if (PeriodRSI == 5) XG_timeframe_124 = 60;
if (PeriodRSI == 6) XG_timeframe_124 = 240;
if (PeriodRSI == 7) XG_timeframe_124 = 1440;
if (PeriodRSI == 8) XG_timeframe_124 = 10080;
if (PeriodRSI == 9) XG_timeframe_124 = 43200;
if (PeriodRSI == 0) XG_timeframe_124 = Period();
XGd_344 = NormalizeDouble(AccountBalance(), 2);
XGd_352 = NormalizeDouble(AccountEquity(), 2);
if (XGd_352 >= 5.0 * (XGd_344 / 6.0)) XG_color_1104 = DodgerBlue;
if (XGd_352 >= 4.0 * (XGd_344 / 6.0) && XGd_352 < 5.0 * (XGd_344 / 6.0)) XG_color_1104 = DeepSkyBlue;
if (XGd_352 >= 3.0 * (XGd_344 / 6.0) && XGd_352 < 4.0 * (XGd_344 / 6.0)) XG_color_1104 = Gold;
if (XGd_352 >= 2.0 * (XGd_344 / 6.0) && XGd_352 < 3.0 * (XGd_344 / 6.0)) XG_color_1104 = OrangeRed;
if (XGd_352 >= XGd_344 / 6.0 && XGd_352 < 2.0 * (XGd_344 / 6.0)) XG_color_1104 = Crimson;
if (XGd_352 < XGd_344 / 5.0) XG_color_1104 = Red;
// ObjectDelete("Lable2");
// ObjectCreate("Lable2", OBJ_LABEL, 0, 0, 1.0);
// ObjectSet("Lable2", OBJPROP_CORNER, 3);
// ObjectSet("Lable2", OBJPROP_XDISTANCE, 153);
// ObjectSet("Lable2", OBJPROP_YDISTANCE, 31);
XG_dbl2str_1088 = DoubleToStr(AccountBalance(), 2);
// ObjectSetText("Lable2", "BALANCE " + XG_dbl2str_1088 + "", 16, "Times New Roman", DodgerBlue);
// ObjectDelete("Lable3");
// ObjectCreate("Lable3", OBJ_LABEL, 0, 0, 1.0);
// ObjectSet("Lable3", OBJPROP_CORNER, 3);
// ObjectSet("Lable3", OBJPROP_XDISTANCE, 153);
// ObjectSet("Lable3", OBJPROP_YDISTANCE, 11);
XG_dbl2str_1096 = DoubleToStr(AccountEquity(), 2);
// ObjectSetText("Lable3", "EQUITY " + XG_dbl2str_1096 + "", 16, "Times New Roman", XG_color_1104);
double XLd_36 = LotExponent;
int XLi_44 = lotdecimal;
double XLd_48 = TakeProfit;
bool XLi_56 = XGi_156;
double XLd_60 = XGd_160;
bool XLi_68 = XGi_168;
double XLd_72 = XGd_172;
double XLd_80 = XGd_180;
double XLd_88 = XGd_188;
XGi_224 = Xf0_4();
if (Turbo) {
if (XGi_224 == 1) XGd_292 = PipStep / 3.0;
if (XGi_224 == 2) XGd_292 = 2.0 * (PipStep / 3.0);
if (XGi_224 >= 3) XGd_292 = PipStep;
} else XGd_292 = PipStep;
if (MM == TRUE) {
if (MathCeil(AccountBalance()) < 300.0) XLd_96 = Lots;
else XLd_96 = 0.00001 * Risk * MathCeil(AccountBalance());
} else XLd_96 = Lots;
if (XLi_68) Xf0_34(XLd_72, XLd_80, XG_price_360);
if (XGi_252) {
if (TimeCurrent() >= XGi_424) {
Xf0_23();
Print("Closed All due_Hilo to TimeOut");
}
}
if (XGi_420 == Time[0]) return (0);
XGi_420 = Time[0];
double XLd_104 = Xf0_30();
if (XLi_56) {
if (XLd_104 < 0.0 && MathAbs(XLd_104) > XLd_60 / 100.0 * Xf0_7()) {
Xf0_23();
Print("Closed All due_Hilo to Stop Out");
XGi_472 = FALSE;
}
}
////////////////////ROBOT 1 /////////////////////////////
XGi_444 = Xf0_4();
if (XGi_444 == 0) XGi_408 = FALSE;
for (XG_pos_440 = OrdersTotal() - 1; XG_pos_440 >= 0; XG_pos_440--) {
OrderSelect(XG_pos_440, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_BUY) {
XGi_460 = TRUE;
XGi_464 = FALSE;
break;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_SELL) {
XGi_460 = FALSE;
XGi_464 = TRUE;
break;
}
}
}
if (XGi_444 > 0 && XGi_444 <= MaxTrades_Robot1) {
RefreshRates();
XGd_384 = Xf0_31();
XGd_392 = Xf0_19();
if (XGi_460 && XGd_384 - Ask >= XGd_292 * Point) XGi_456 = TRUE;
if (XGi_464 && Bid - XGd_392 >= XGd_292 * Point) XGi_456 = TRUE;
}
if (XGi_444 < 1) {
XGi_464 = FALSE;
XGi_460 = FALSE;
XGi_456 = TRUE;
XGd_320 = AccountEquity();
}
if (XGi_456 && HabilitaRobot1) {
XGd_384 = Xf0_31();
XGd_392 = Xf0_19();
if (XGi_464) {
XGi_428 = XGi_444;
XGd_432 = NormalizeDouble(XLd_96 * MathPow(XLd_36, XGi_428), XLi_44);
RefreshRates();
XGi_468 = Xf0_3(1, XGd_432, NormalizeDouble(Bid, Digits), XLd_88, NormalizeDouble(Ask, Digits), 0, 0, XGs_412 + "-" + XGi_428, MagicNumber_Robot1, 0, HotPink);
if (XGi_468 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_392 = Xf0_19();
XGi_456 = FALSE;
XGi_472 = TRUE;
} else {
if (XGi_460) {
XGi_428 = XGi_444;
XGd_432 = NormalizeDouble(XLd_96 * MathPow(XLd_36, XGi_428), XLi_44);
XGi_468 = Xf0_3(0, XGd_432, NormalizeDouble(Ask, Digits), XLd_88, NormalizeDouble(Bid, Digits), 0, 0, XGs_412 + "-" + XGi_428, MagicNumber_Robot1, 0, Lime);
if (XGi_468 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_384 = Xf0_31();
XGi_456 = FALSE;
XGi_472 = TRUE;
}
}
}
if (XGi_456 && XGi_444 < 1 && HabilitaRobot1) {
ihigh_4 = iHigh(Symbol(), 0, 1);
ilow_12 = iLow(Symbol(), 0, 2);
XGd_368 = NormalizeDouble(Bid, Digits);
XGd_376 = NormalizeDouble(Ask, Digits);
if ((!XGi_464) && !XGi_460) {
XGi_428 = XGi_444;
XGd_432 = NormalizeDouble(XLd_96 * MathPow(XLd_36, XGi_428), XLi_44);
if (NewCycle) {
if (ihigh_4 > ilow_12) {
if (iRSI(NULL, XG_timeframe_124, 14, PRICE_CLOSE, 1) > 30.0) {
XGi_468 = Xf0_3(1, XGd_432, XGd_368, XLd_88, XGd_368, 0, 0, XGs_412 + "-" + XGi_428, MagicNumber_Robot1, 0, HotPink);
if (XGi_468 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_384 = Xf0_31();
XGi_472 = TRUE;
}
} else {
if (iRSI(NULL, XG_timeframe_124, 14, PRICE_CLOSE, 1) < 70.0) {
XGi_468 = Xf0_3(0, XGd_432, XGd_376, XLd_88, XGd_376, 0, 0, XGs_412 + "-" + XGi_428, MagicNumber_Robot1, 0, Lime);
if (XGi_468 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_392 = Xf0_19();
XGi_472 = TRUE;
}
}
}
if (XGi_468 > 0) XGi_424 = TimeCurrent() + 60.0 * (60.0 * XGd_256);
XGi_456 = FALSE;
}
}
XGi_444 = Xf0_4();
XG_price_360 = 0;
double XLd_112 = 0;
for (XG_pos_440 = OrdersTotal() - 1; XG_pos_440 >= 0; XG_pos_440--) {
OrderSelect(XG_pos_440, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
XG_price_360 += OrderOpenPrice() * OrderLots();
XLd_112 += OrderLots();
}
}
}
if (XGi_444 > 0) XG_price_360 = NormalizeDouble(XG_price_360 / XLd_112, Digits);
if (XGi_472) {
for (XG_pos_440 = OrdersTotal() - 1; XG_pos_440 >= 0; XG_pos_440--) {
OrderSelect(XG_pos_440, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_BUY) {
XG_price_312 = XG_price_360 + XLd_48 * Point;
XGd_unused_328 = XG_price_312;
XGd_448 = XG_price_360 - XG_pips_268 * Point;
XGi_408 = TRUE;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_SELL) {
XG_price_312 = XG_price_360 - XLd_48 * Point;
XGd_unused_336 = XG_price_312;
XGd_448 = XG_price_360 + XG_pips_268 * Point;
XGi_408 = TRUE;
}
}
}
}
if (XGi_472) {
if (XGi_408 == TRUE) {
for (XG_pos_440 = OrdersTotal() - 1; XG_pos_440 >= 0; XG_pos_440--) {
OrderSelect(XG_pos_440, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
while (!OrderModify(OrderTicket(), XG_price_360, OrderStopLoss(), XG_price_312, 0, Yellow)) {
Sleep(1000);
RefreshRates();
}
}
XGi_472 = FALSE;
}
}
}
////////////////////FIM ROBOT 1 /////////////////////////////
////////////////////ROBOT 2 /////////////////////////////
double XLd_120 = LotExponent;
int XLi_128 = lotdecimal;
double XLd_132 = TakeProfit;
bool XLi_140 = XGi_156;
double XLd_144 = XGd_160;
bool XLi_152 = XGi_168;
double XLd_156 = XGd_172;
double XLd_164 = XGd_180;
double XLd_172 = XGd_188;
XGi_520 = Xf0_5();
if (Turbo) {
if (XGi_520 == 1) XGd_596 = PipStep / 3.0;
if (XGi_520 == 2) XGd_596 = 2.0 * (PipStep / 3.0);
if (XGi_520 >= 3) XGd_596 = PipStep;
} else XGd_596 = PipStep;
if (MM == TRUE) {
if (MathCeil(AccountBalance()) < 300.0) XLd_180 = Lots;
else XLd_180 = 0.00001 * Risk * MathCeil(AccountBalance());
} else XLd_180 = Lots;
if (XLi_152) Xf0_20(XLd_156, XLd_164, XG_price_648);
if (XGi_584) {
if (TimeCurrent() >= XGi_712) {
Xf0_17();
Print("Closed All due to TimeOut");
}
}
if (XGi_708 != Time[0]) {
XGi_708 = Time[0];
XLd_188 = Xf0_28();
if (XLi_140) {
if (XLd_188 < 0.0 && MathAbs(XLd_188) > XLd_144 / 100.0 * Xf0_15()) {
Xf0_17();
Print("Closed All due to Stop Out");
XGi_760 = FALSE;
}
}
XGi_732 = Xf0_5();
if (XGi_732 == 0) XGi_696 = FALSE;
for (XG_pos_728 = OrdersTotal() - 1; XG_pos_728 >= 0; XG_pos_728--) {
OrderSelect(XG_pos_728, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_BUY) {
XGi_748 = TRUE;
XGi_752 = FALSE;
break;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_SELL) {
XGi_748 = FALSE;
XGi_752 = TRUE;
break;
}
}
}
if (XGi_732 > 0 && XGi_732 <= MaxTrades_Robot2) {
RefreshRates();
XGd_672 = Xf0_35();
XGd_680 = Xf0_27();
if (XGi_748 && XGd_672 - Ask >= XGd_596 * XGi_732 * Point) XGi_744 = TRUE;
if (XGi_752 && Bid - XGd_680 >= XGd_596 * XGi_732 * Point) XGi_744 = TRUE;
}
if (XGi_732 < 1) {
XGi_752 = FALSE;
XGi_748 = FALSE;
XGi_744 = TRUE;
XGd_624 = AccountEquity();
}
if (XGi_744 && HabilitaRobot2) {
XGd_672 = Xf0_35();
XGd_680 = Xf0_27();
if (XGi_752) {
XGi_716 = XGi_732;
XGd_720 = NormalizeDouble(XLd_180 * MathPow(XLd_120, XGi_716), XLi_128);
RefreshRates();
XGi_756 = Xf0_2(1, XGd_720, NormalizeDouble(Bid, Digits), XLd_172, NormalizeDouble(Ask, Digits), 0, 0, XGs_700 + "-" + XGi_716, MagicNumber_Robot2, 0, HotPink);
if (XGi_756 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_680 = Xf0_27();
XGi_744 = FALSE;
XGi_760 = TRUE;
} else {
if (XGi_748) {
XGi_716 = XGi_732;
XGd_720 = NormalizeDouble(XLd_180 * MathPow(XLd_120, XGi_716), XLi_128);
XGi_756 = Xf0_2(0, XGd_720, NormalizeDouble(Ask, Digits), XLd_172, NormalizeDouble(Bid, Digits), 0, 0, XGs_700 + "-" + XGi_716, MagicNumber_Robot2, 0, Lime);
if (XGi_756 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_672 = Xf0_35();
XGi_744 = FALSE;
XGi_760 = TRUE;
}
}
}
}
if (XG_datetime_780 != iTime(NULL, TimeFrame_Robot2, 0) && HabilitaRobot2) {
XLi_196 = OrdersTotal();
Xcount_200 = 0;
double ValorUltimo = 0;
for (int XLi_204 = XLi_196; XLi_204 >= 1; XLi_204--) {
OrderSelect(XLi_204 - 1, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
Xcount_200++;
}
}
Comment(Xcount_200 +" - "+ XGd_656);
if (XLi_196 == 0 || Xcount_200 < 1) {
iclose_20 = iClose(Symbol(), 0, 2);
iclose_28 = iClose(Symbol(), 0, 1);
double ihigh_1128 = iHigh(Symbol(), 0, 1);
double ilow_1136 = iLow(Symbol(), 0, 2);
XGd_656 = NormalizeDouble(Bid, Digits);
XGd_664 = NormalizeDouble(Ask, Digits);
double Xihigh_124 = iHigh(Symbol(), PERIOD_D1, 0);
double Xilow_132 = iLow(Symbol(), PERIOD_D1, 0);
double Xiopen_140 = iOpen(Symbol(), PERIOD_D1, 1);
double Xiclose_148 = iClose(Symbol(), PERIOD_D1, 1);
double XlongEma = iMA(Symbol(), PERIOD_CURRENT, 9, 0, MODE_LWMA, PRICE_CLOSE, 0);
// if ((!XGi_752) && !XGi_748) {
// if (Xiclose_148 > Xiopen_140) {
if (iclose_28 < XlongEma) {
XGi_716 = XGi_732;
XGd_720 = NormalizeDouble(XLd_180 * MathPow(LotExponent, XGi_716), XLi_128);
// if (iclose_20 < iclose_28 || iclose_20 > iclose_28) {
if (true) {
if (NewCycle) {
XGi_756 = Xf0_2(1, XGd_720, XGd_656, XLd_172, XGd_656, 0, 0, XGs_700 + "-" + XGi_716, MagicNumber_Robot2, 0, HotPink);
if (XGi_756 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_672 = Xf0_35();
XGi_760 = TRUE;
}
}
} else {
XGi_716 = XGi_732;
XGd_720 = NormalizeDouble(XLd_180 * MathPow(LotExponent, XGi_716), XLi_128);
if (NewCycle) {
XGi_756 = Xf0_2(0, XGd_720, XGd_664, XLd_172, XGd_664, 0, 0, XGs_700 + "-" + XGi_716, MagicNumber_Robot2, 0, Lime);
if (XGi_756 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_680 = Xf0_27();
XGi_760 = TRUE;
}
}
if (XGi_756 > 0) XGi_712 = TimeCurrent() + 60.0 * (60.0 * XGd_588);
XGi_744 = FALSE;
}
XG_datetime_780 = iTime(NULL, TimeFrame_Robot2, 0);
}
XGi_732 = Xf0_5();
XG_price_648 = 0;
double XLd_208 = 0;
for (XG_pos_728 = OrdersTotal() - 1; XG_pos_728 >= 0; XG_pos_728--) {
OrderSelect(XG_pos_728, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
XG_price_648 += OrderOpenPrice() * OrderLots();
XLd_208 += OrderLots();
}
}
}
if (XGi_732 > 0) XG_price_648 = NormalizeDouble(XG_price_648 / XLd_208, Digits);
if (XGi_760) {
for (XG_pos_728 = OrdersTotal() - 1; XG_pos_728 >= 0; XG_pos_728--) {
OrderSelect(XG_pos_728, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_BUY) {
XG_price_616 = XG_price_648 + XLd_132 * Point;
XGd_unused_632 = XG_price_616;
XGd_736 = XG_price_648 - PipsGrid_Robot2 * Point;
XGi_696 = TRUE;
}
}
///////////////////// MEDIA DE TAKE /////////////////////////
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_SELL) {
XG_price_616 = XG_price_648 - XLd_132 * Point;
XGd_unused_640 = XG_price_616;
XGd_736 = XG_price_648 + PipsGrid_Robot2 * Point;
XGi_696 = TRUE;
}
}
}
}
if (XGi_760) {
if (XGi_696 == TRUE) {
for (XG_pos_728 = OrdersTotal() - 1; XG_pos_728 >= 0; XG_pos_728--) {
OrderSelect(XG_pos_728, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
while (!OrderModify(OrderTicket(), XG_price_648, OrderStopLoss(), XG_price_616, 0, Yellow)) {
Sleep(1000);
RefreshRates();
}
}
XGi_760 = FALSE;
}
}
}
////////////////////FIM ROBOT 2 /////////////////////////////
////////////////////ROBOT 3 /////////////////////////////
double XLd_216 = LotExponent;
int XLi_224 = lotdecimal;
double XLd_228 = TakeProfit;
bool XLi_236 = XGi_156;
double XLd_240 = XGd_160;
bool XLi_248 = XGi_168;
double XLd_252 = XGd_172;
double XLd_260 = XGd_180;
double XLd_268 = XGd_188;
XGi_812 = Xf0_12();
if (Turbo) {
if (XGi_812 == 1) XGd_884 = PipStep / 3.0;
if (XGi_812 == 2) XGd_884 = 2.0 * (PipStep / 3.0);
if (XGi_812 >= 3) XGd_884 = PipStep;
} else XGd_884 = PipStep;
if (MM == TRUE) {
if (MathCeil(AccountBalance()) < 300.0) XLd_276 = Lots;
else XLd_276 = 0.00001 * Risk * MathCeil(AccountBalance());
} else XLd_276 = Lots;
if (XLi_248) Xf0_33(XLd_252, XLd_260, XG_price_936);
if (XGi_872) {
if (TimeCurrent() >= XGi_1000) {
Xf0_0();
Print("Closed All due to TimeOut");
}
}
if (XGi_996 != Time[0]) {
XGi_996 = Time[0];
XLd_284 = Xf0_8();
if (XLi_236) {
if (XLd_284 < 0.0 && MathAbs(XLd_284) > XLd_240 / 100.0 * Xf0_29()) {
Xf0_0();
Print("Closed All due to Stop Out");
XGi_1048 = FALSE;
}
}
XGi_1020 = Xf0_12();
if (XGi_1020 == 0) XGi_984 = FALSE;
for (XG_pos_1016 = OrdersTotal() - 1; XG_pos_1016 >= 0; XG_pos_1016--) {
OrderSelect(XG_pos_1016, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_BUY) {
XGi_1036 = TRUE;
XGi_1040 = FALSE;
break;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_SELL) {
XGi_1036 = FALSE;
XGi_1040 = TRUE;
break;
}
}
}
if (XGi_1020 > 0 && XGi_1020 <= MaxTrades_Robot3) {
RefreshRates();
XGd_960 = Xf0_16();
XGd_968 = Xf0_26();
if (XGi_1036 && XGd_960 - Ask >= XGd_884 * Point) XGi_1032 = TRUE;
if (XGi_1040 && Bid - XGd_968 >= XGd_884 * Point) XGi_1032 = TRUE;
}
if (XGi_1020 < 1) {
XGi_1040 = FALSE;
XGi_1036 = FALSE;
XGi_1032 = TRUE;
XGd_912 = AccountEquity();
}
if (XGi_1032 && HabilitaRobot3) {
XGd_960 = Xf0_16();
XGd_968 = Xf0_26();
if (XGi_1040) {
XGi_1004 = XGi_1020;
XGd_1008 = NormalizeDouble(XLd_276 * MathPow(XLd_216, XGi_1004), XLi_224);
RefreshRates();
XGi_1044 = Xf0_6(1, XGd_1008, NormalizeDouble(Bid, Digits), XLd_268, NormalizeDouble(Ask, Digits), 0, 0, XGs_988 + "-" + XGi_1004, MagicNumber_Robot3, 0, HotPink);
if (XGi_1044 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_968 = Xf0_26();
XGi_1032 = FALSE;
XGi_1048 = TRUE;
} else {
if (XGi_1036) {
XGi_1004 = XGi_1020;
XGd_1008 = NormalizeDouble(XLd_276 * MathPow(XLd_216, XGi_1004), XLi_224);
XGi_1044 = Xf0_6(0, XGd_1008, NormalizeDouble(Ask, Digits), XLd_268, NormalizeDouble(Bid, Digits), 0, 0, XGs_988 + "-" + XGi_1004, MagicNumber_Robot3, 0, Lime);
if (XGi_1044 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_960 = Xf0_16();
XGi_1032 = FALSE;
XGi_1048 = TRUE;
}
}
}
}
if (XG_datetime_1068 != iTime(NULL, XG_timeframe_840, 0) && HabilitaRobot3) {
XLi_292 = OrdersTotal();
Xcount_296 = 0;
for (int XLi_300 = XLi_292; XLi_300 >= 1; XLi_300--) {
OrderSelect(XLi_300 - 1, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) Xcount_296++;
}
if (XLi_292 == 0 || Xcount_296 < 1) {
iclose_20 = iClose(Symbol(), 0, 2);
iclose_28 = iClose(Symbol(), 0, 1);
XGd_944 = NormalizeDouble(Bid, Digits);
XGd_952 = NormalizeDouble(Ask, Digits);
if ((!XGi_1040) && !XGi_1036) {
XGi_1004 = XGi_1020;
XGd_1008 = NormalizeDouble(XLd_276 * MathPow(XLd_216, XGi_1004), XLi_224);
if (NewCycle) {
if (iclose_20 > iclose_28) {
if (iRSI(NULL, XG_timeframe_124, 14, PRICE_CLOSE, 1) > 30.0) {
XGi_1044 = Xf0_6(1, XGd_1008, XGd_944, XLd_268, XGd_944, 0, 0, XGs_988 + "-" + XGi_1004, MagicNumber_Robot3, 0, HotPink);
if (XGi_1044 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_960 = Xf0_16();
XGi_1048 = TRUE;
}
} else {
if (iRSI(NULL, XG_timeframe_124, 14, PRICE_CLOSE, 1) < 70.0) {
XGi_1044 = Xf0_6(0, XGd_1008, XGd_952, XLd_268, XGd_952, 0, 0, XGs_988 + "-" + XGi_1004, MagicNumber_Robot3, 0, Lime);
if (XGi_1044 < 0) {
Print("Error: ", GetLastError());
return (0);
}
XGd_968 = Xf0_26();
XGi_1048 = TRUE;
}
}
}
if (XGi_1044 > 0) XGi_1000 = TimeCurrent() + 60.0 * (60.0 * XGd_876);
XGi_1032 = FALSE;
}
}
XG_datetime_1068 = iTime(NULL, XG_timeframe_840, 0);
}
XGi_1020 = Xf0_12();
XG_price_936 = 0;
double XLd_304 = 0;
for (XG_pos_1016 = OrdersTotal() - 1; XG_pos_1016 >= 0; XG_pos_1016--) {
OrderSelect(XG_pos_1016, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
XG_price_936 += OrderOpenPrice() * OrderLots();
XLd_304 += OrderLots();
}
}
}
if (XGi_1020 > 0) XG_price_936 = NormalizeDouble(XG_price_936 / XLd_304, Digits);
if (XGi_1048) {
for (XG_pos_1016 = OrdersTotal() - 1; XG_pos_1016 >= 0; XG_pos_1016--) {
OrderSelect(XG_pos_1016, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_BUY) {
XG_price_904 = XG_price_936 + XLd_228 * Point;
XGd_unused_920 = XG_price_904;
XGd_1024 = XG_price_936 - XG_pips_848 * Point;
XGi_984 = TRUE;
}
}
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_SELL) {
XG_price_904 = XG_price_936 - XLd_228 * Point;
XGd_unused_928 = XG_price_904;
XGd_1024 = XG_price_936 + XG_pips_848 * Point;
XGi_984 = TRUE;
}
}
}
}
if (XGi_1048) {
if (XGi_984 == TRUE) {
for (XG_pos_1016 = OrdersTotal() - 1; XG_pos_1016 >= 0; XG_pos_1016--) {
OrderSelect(XG_pos_1016, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
while (!OrderModify(OrderTicket(), XG_price_936, OrderStopLoss(), XG_price_904, 0, Yellow)) {
Sleep(1000);
RefreshRates();
}
}
XGi_1048 = FALSE;
}
}
}
////////////////////FIM ROBOT 3 /////////////////////////////
return (0);
}
// 1DCB176FA67889B5B0CADBD0A6FE56CB
int Xf0_4() {
int Xcount_0 = 0;
for (int pos_4 = OrdersTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1)
if (OrderType() == OP_SELL || OrderType() == OP_BUY) Xcount_0++;
}
return (Xcount_0);
}
// BC923F6CA29E7C93CDFEA0D2DFB5608A
void Xf0_23() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol()) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, XG_slippage_300, Blue);
if (OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, XG_slippage_300, Red);
}
Sleep(1000);
}
}
}
// 18EBBC4DF42B2A4E20BA8E3AA1C6A3DF
int Xf0_3(int Ai_0, double A_lots_4, double Ad_unused_12, int A_slippage_20, double Ad_unused_24, int Ai_32, int Ai_36, string A_comment_40, int A_magic_48, int A_datetime_52, color A_color_56) {
int ticket_60 = 0;
int error_64 = 0;
int Xcount_68 = 0;
int XLi_72 = 100;
switch (Ai_0) {
case 0:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
RefreshRates();
ticket_60 = OrderSend(Symbol(), OP_BUY, A_lots_4, NormalizeDouble(Ask, Digits), A_slippage_20, NormalizeDouble(Xf0_21(Bid, Ai_32), Digits), NormalizeDouble(Xf0_18(Ask,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
break;
case 1:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
ticket_60 = OrderSend(Symbol(), OP_SELL, A_lots_4, NormalizeDouble(Bid, Digits), A_slippage_20, NormalizeDouble(Xf0_11(Ask, Ai_32), Digits), NormalizeDouble(Xf0_1(Bid,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
}
return (ticket_60);
}
// ABBF0924C7D109476997F144FF69BA18
double Xf0_21(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// 65324E009A83B2CB88BFB3D4529CFA3F
double Xf0_11(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// A4B319A5A3851A7BB5CE0B195DF27F55
double Xf0_18(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// 0CCFFE5E259E6D9684C883601327DD0E
double Xf0_1(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// DEE6BAA1FB47E044DB484D868C724C77
double Xf0_30() {
double XLd_ret_0 = 0;
for (XG_pos_440 = OrdersTotal() - 1; XG_pos_440 >= 0; XG_pos_440--) {
OrderSelect(XG_pos_440, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1)
if (OrderType() == OP_BUY || OrderType() == OP_SELL) XLd_ret_0 += OrderProfit();
}
return (XLd_ret_0);
}
// F65FADF1B81B5341149ECACF620D59C5
void Xf0_34(int Ai_0, int Ai_4, double A_price_8) {
int XLi_16;
double order_stoploss_20;
double price_28;
if (Ai_4 != 0) {
for (int pos_36 = OrdersTotal() - 1; pos_36 >= 0; pos_36--) {
if (OrderSelect(pos_36, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() || OrderMagicNumber() == MagicNumber_Robot1) {
if (OrderType() == OP_BUY) {
XLi_16 = NormalizeDouble((Bid - A_price_8) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Bid - Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 > order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Aqua);
}
if (OrderType() == OP_SELL) {
XLi_16 = NormalizeDouble((A_price_8 - Ask) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Ask + Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 < order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Red);
}
}
Sleep(1000);
}
}
}
}
// 30DCB0D08244C03D0790FB15BE95C82F
double Xf0_7() {
if (Xf0_4() == 0) XGd_476 = AccountEquity();
if (XGd_476 < XGd_484) XGd_476 = XGd_484;
else XGd_476 = AccountEquity();
XGd_484 = AccountEquity();
return (XGd_476);
}
// E22889128875A189AD17995E32998332
double Xf0_31() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1 && OrderType() == OP_BUY) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
// A5F3F48E555BFC9A5526CC1B30FF0AB2
double Xf0_19() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot1) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot1 && OrderType() == OP_SELL) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
// 22F0FA52408CE450B63ADF3F087F21DE
int Xf0_5() {
int Xcount_0 = 0;
for (int pos_4 = OrdersTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2)
if (OrderType() == OP_SELL || OrderType() == OP_BUY) Xcount_0++;
}
return (Xcount_0);
}
// A180C6ED0DC34AACA6CCA8CB05FECC10
void Xf0_17() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol()) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, XG_slippage_604, Blue);
if (OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, XG_slippage_604, Red);
}
Sleep(1000);
}
}
}
// 114DC2E883BB39B95234C711A240BE3E
int Xf0_2(int Ai_0, double A_lots_4, double Ad_unused_12, int A_slippage_20, double Ad_unused_24, int Ai_32, int Ai_36, string A_comment_40, int A_magic_48, int A_datetime_52, color A_color_56) {
int ticket_60 = 0;
int error_64 = 0;
int Xcount_68 = 0;
int XLi_72 = 100;
switch (Ai_0) {
case 0:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
RefreshRates();
ticket_60 = OrderSend(Symbol(), OP_BUY, A_lots_4, NormalizeDouble(Ask, Digits), A_slippage_20, NormalizeDouble(Xf0_13(Bid, Ai_32), Digits), NormalizeDouble(Xf0_24(Ask,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
break;
case 1:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
ticket_60 = OrderSend(Symbol(), OP_SELL, A_lots_4, NormalizeDouble(Bid, Digits), A_slippage_20, NormalizeDouble(Xf0_32(Ask, Ai_32), Digits), NormalizeDouble(Xf0_25(Bid,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
}
return (ticket_60);
}
// 7AE15E889172CCCB33ECFB32124CDF19
double Xf0_13(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// E29638E1934BE380D2D902E838F29BF7
double Xf0_32(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// BCF3A4C4831B7913DD5F18AF706ADC75
double Xf0_24(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// C4C44C724F3DAE9C33262735893D433A
double Xf0_25(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// D3C476201B00C1A782FB71A65C106452
double Xf0_28() {
double XLd_ret_0 = 0;
for (XG_pos_728 = OrdersTotal() - 1; XG_pos_728 >= 0; XG_pos_728--) {
OrderSelect(XG_pos_728, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2)
if (OrderType() == OP_BUY || OrderType() == OP_SELL) XLd_ret_0 += OrderProfit();
}
return (XLd_ret_0);
}
// A84D2ACC80FE890D5547A65D5C3D18EE
void Xf0_20(int Ai_0, int Ai_4, double A_price_8) {
int XLi_16;
double order_stoploss_20;
double price_28;
if (Ai_4 != 0) {
for (int pos_36 = OrdersTotal() - 1; pos_36 >= 0; pos_36--) {
if (OrderSelect(pos_36, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() || OrderMagicNumber() == MagicNumber_Robot2) {
if (OrderType() == OP_BUY) {
XLi_16 = NormalizeDouble((Bid - A_price_8) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Bid - Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 > order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Aqua);
}
if (OrderType() == OP_SELL) {
XLi_16 = NormalizeDouble((A_price_8 - Ask) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Ask + Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 < order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Red);
}
}
Sleep(1000);
}
}
}
}
// 9EB62284E5C15187BCA5B502C66B6C59
double Xf0_15() {
if (Xf0_5() == 0) XGd_764 = AccountEquity();
if (XGd_764 < XGd_772) XGd_764 = XGd_772;
else XGd_764 = AccountEquity();
XGd_772 = AccountEquity();
return (XGd_764);
}
// F66F194C04A03CB5E74EC2A8C1DD0537
double Xf0_35() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2 && OrderType() == OP_BUY) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
// C8E1186288BBCE29FD09990000128B35
double Xf0_27() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot2) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot2 && OrderType() == OP_SELL) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
// 6EF0698100DD80AB6B7953B95E5FAD5C
int Xf0_12() {
int Xcount_0 = 0;
for (int pos_4 = OrdersTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3)
if (OrderType() == OP_SELL || OrderType() == OP_BUY) Xcount_0++;
}
return (Xcount_0);
}
// 065CE9405D7D7C2EAE70F2FF0F5A8147
void Xf0_0() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol()) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, XG_slippage_892, Blue);
if (OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), Ask, XG_slippage_892, Red);
}
Sleep(1000);
}
}
}
// 25977731C5753DECF295DA11C4378DE5
int Xf0_6(int Ai_0, double A_lots_4, double Ad_unused_12, int A_slippage_20, double Ad_unused_24, int Ai_32, int Ai_36, string A_comment_40, int A_magic_48, int A_datetime_52, color A_color_56) {
int ticket_60 = 0;
int error_64 = 0;
int Xcount_68 = 0;
int XLi_72 = 100;
switch (Ai_0) {
case 0:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
RefreshRates();
ticket_60 = OrderSend(Symbol(), OP_BUY, A_lots_4, NormalizeDouble(Ask, Digits), A_slippage_20, NormalizeDouble(Xf0_14(Bid, Ai_32), Digits), NormalizeDouble(Xf0_9(Ask,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
break;
case 1:
for (Xcount_68 = 0; Xcount_68 < XLi_72; Xcount_68++) {
ticket_60 = OrderSend(Symbol(), OP_SELL, A_lots_4, NormalizeDouble(Bid, Digits), A_slippage_20, NormalizeDouble(Xf0_22(Ask, Ai_32), Digits), NormalizeDouble(Xf0_10(Bid,
Ai_36), Digits), A_comment_40, A_magic_48, A_datetime_52, A_color_56);
error_64 = GetLastError();
if (error_64 == 0/* NO_ERROR */) break;
if (!((error_64 == 4/* SERVER_BUSY */ || error_64 == 137/* BROKER_BUSY */ || error_64 == 146/* TRADE_CONTEXT_BUSY */ || error_64 == 136/* OFF_QUOTES */))) break;
Sleep(5000);
}
}
return (ticket_60);
}
// 87D810BEA6B0AD2FCF70C69C17E19362
double Xf0_14(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// B3477275C69E607F97F2840B12AE4A9F
double Xf0_22(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// 37FA8C95BB37E55BB52283CC69099A5F
double Xf0_9(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 + Ai_8 * Point);
}
// 5EF05A0BDFEED3445F4FE51BA1977B3C
double Xf0_10(double Ad_0, int Ai_8) {
if (Ai_8 == 0) return (0);
return (Ad_0 - Ai_8 * Point);
}
// 31C5A9E59B9C6E81AE342B735890CD44
double Xf0_8() {
double XLd_ret_0 = 0;
for (XG_pos_1016 = OrdersTotal() - 1; XG_pos_1016 >= 0; XG_pos_1016--) {
OrderSelect(XG_pos_1016, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3)
if (OrderType() == OP_BUY || OrderType() == OP_SELL) XLd_ret_0 += OrderProfit();
}
return (XLd_ret_0);
}
// ED2502136334FB187FF67433121886AF
void Xf0_33(int Ai_0, int Ai_4, double A_price_8) {
int XLi_16;
double order_stoploss_20;
double price_28;
if (Ai_4 != 0) {
for (int pos_36 = OrdersTotal() - 1; pos_36 >= 0; pos_36--) {
if (OrderSelect(pos_36, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() || OrderMagicNumber() == MagicNumber_Robot3) {
if (OrderType() == OP_BUY) {
XLi_16 = NormalizeDouble((Bid - A_price_8) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Bid - Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 > order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Aqua);
}
if (OrderType() == OP_SELL) {
XLi_16 = NormalizeDouble((A_price_8 - Ask) / Point, 0);
if (XLi_16 < Ai_0) continue;
order_stoploss_20 = OrderStopLoss();
price_28 = Ask + Ai_4 * Point;
if (order_stoploss_20 == 0.0 || (order_stoploss_20 != 0.0 && price_28 < order_stoploss_20)) OrderModify(OrderTicket(), A_price_8, price_28, OrderTakeProfit(), 0, Red);
}
}
Sleep(1000);
}
}
}
}
// DED4C3E9893A50A6B8A9A57E1BCD0548
double Xf0_29() {
if (Xf0_12() == 0) XGd_1052 = AccountEquity();
if (XGd_1052 < XGd_1060) XGd_1052 = XGd_1060;
else XGd_1052 = AccountEquity();
XGd_1060 = AccountEquity();
return (XGd_1052);
}
// 9FC0A73FE3F286FD086830C3094E8AB3
double Xf0_16() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3 && OrderType() == OP_BUY) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
// C55A286500E20535F02887DCF6EFC3C6
double Xf0_26() {
double order_open_price_0;
int ticket_8;
double XLd_unused_12 = 0;
int ticket_20 = 0;
for (int pos_24 = OrdersTotal() - 1; pos_24 >= 0; pos_24--) {
OrderSelect(pos_24, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber_Robot3) continue;
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber_Robot3 && OrderType() == OP_SELL) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_20) {
order_open_price_0 = OrderOpenPrice();
XLd_unused_12 = order_open_price_0;
ticket_20 = ticket_8;
}
}
}
return (order_open_price_0);
}
//////////////////////// OUTRO EA //////////////////////////
// C7B7E78A33FDB681AE876AC23EA003AB
int f0_133(string as_0) {
int lia_8[];
int lia_12[5];
int li_16;
if (gi_836 == FALSE) f0_146();
if (gi_836 != FALSE) {
ArrayResize(lia_8, StringLen(as_0));
f0_141(lia_8, ArraySize(lia_8) << 18, as_0);
f0_105(lia_12, 131072, 2);
f0_105(lia_12, 131074, f0_51(gi_832));
f0_105(lia_12, 262148, /*inet_addr(gs_824)*/gs_824);
li_16 = 1;//sendto(gi_836, lia_8, ArraySize(lia_8), 0, lia_12, ArraySize(lia_12) * 4);
if (li_16 == -1) {
Print("Server: UDP send() failed: error "/* + WSAGetLastError()*/);
f0_135();
gi_836 = FALSE;
}
}
return (gi_836);
}
// CAD04C1774C33CA92080EAEBADE2109E
void f0_135() {
// closesocket(gi_836);
// WSACleanup();
gi_836 = FALSE;
}
// DF0D5A17B34CAF650F5CADD3F2327AD8
int f0_146() {
int lia_4[100];
int lia_12[1];
int li_nsd_8 = 1;
if (gi_832 == 0) return (0);
int li_0 = 0;//WSAStartup(514, lia_4);
if (li_0 != 0) {
Print("Server: WSAStartup() failed with error " + li_0);
return (0);
}
gi_836 = TRUE;//socket(2, 2, 17);
if (gi_836 == FALSE) {
Print("Server: socket() failed with error "/* + WSAGetLastError()*/);
// WSACleanup();
return (0);
}
lia_12[0] = f0_51(1);
li_0 = 1;//setsockopt(gi_836, 65535, 4, lia_12, ArraySize(lia_12) * 4);
if (li_0 == -1) Print("Server: setsockopt() failed with error "/* + WSAGetLastError()*/);
return (gi_836);
}
// D47AFFB6503B6D108F7DC3C7539BC8BB
void f0_141(int &aia_0[], int ai_4, string as_8) {
int li_20;
int count_24;
int li_16 = ai_4 >> 16;
if (li_16 >= 2) {
ai_4 &= 65535;
li_20 = ai_4 >> 2;
count_24 = ai_4 % 4;
for (int li_28 = 0; li_28 < StringLen(as_8); li_28++) {
aia_0[li_20] = aia_0[li_20] & (~(255 << (count_24 * 8)));
aia_0[li_20] = aia_0[li_20] | StringGetChar(as_8, li_28) << (count_24 * 8);
if (count_24 == 3) {
li_20++;
count_24 = 0;
} else count_24++;
if (li_16 == 2) break;
li_16--;
}
aia_0[li_20] = aia_0[li_20] & (~(255 << (count_24 * 8)));
}
}
// 9E32925D7C93C8DA847A44286E60E4E5
void f0_105(int &aia_0[5], int ai_4, int ai_8) {
int li_16;
int li_20;
if (ai_4 < 0) ai_4 = -ai_4;
int li_12 = ai_4 >> 16;
if (li_12 != 0) {
if (li_12 > 4) li_12 = 4;
ai_4 &= 65535;
li_16 = ai_4 >> 2;
li_20 = ai_4 % 4;
ai_8 &= (-1) >> ((4 - li_12) * 8);
aia_0[li_16] = aia_0[li_16] & (-1) >> ((4 - li_20) * 8);
aia_0[li_16] = aia_0[li_16] | ai_8 << (li_20 * 8);
if (li_20 + li_12 > 4) {
li_16++;
aia_0[li_16] = aia_0[li_16] & (-1) << ((li_20 + li_12 - 4) * 8);
aia_0[li_16] = aia_0[li_16] | ai_8 >> ((8 - li_20 - li_12) * 8);
}
}
}
// 4748625205F23D72AC04097BF0528233
int f0_51(int ai_0) {
return ((ai_0 & 255 * 256) | ai_0 & 65280 >> 8);
}
// DA69CBAFF4D38B87377667EEC549DE5A
string f0_143(int ai_0) {
string ls_ret_4;
switch (ai_0) {
case 0:
case 1:
ls_ret_4 = "no error";
break;
case 2:
ls_ret_4 = "common error";
break;
case 3:
ls_ret_4 = "invalid trade parameters";
break;
case 4:
ls_ret_4 = "trade server is busy";
break;
case 5:
ls_ret_4 = "old version of the client terminal";
break;
case 6:
ls_ret_4 = "no connection with trade server";
break;
case 7:
ls_ret_4 = "not enough rights";
break;
case 8:
ls_ret_4 = "too frequent requests";
break;
case 9:
ls_ret_4 = "malfunctional trade operation (never returned error)";
break;
case 64:
ls_ret_4 = "account disabled";
break;
case 65:
ls_ret_4 = "invalid account";
break;
case 128:
ls_ret_4 = "trade timeout";
break;
case 129:
ls_ret_4 = "invalid price";
break;
case 130:
ls_ret_4 = "invalid stops";
break;
case 131:
ls_ret_4 = "invalid trade volume";
break;
case 132:
ls_ret_4 = "market is closed";
break;
case 133:
ls_ret_4 = "trade is disabled";
break;
case 134:
ls_ret_4 = "not enough money";
break;
case 135:
ls_ret_4 = "price changed";
break;
case 136:
ls_ret_4 = "off quotes";
break;
case 137:
ls_ret_4 = "broker is busy (never returned error)";
break;
case 138:
ls_ret_4 = "requote";
break;
case 139:
ls_ret_4 = "order is locked";
break;
case 140:
ls_ret_4 = "long positions only allowed";
break;
case 141:
ls_ret_4 = "too many requests";
break;
case 145:
ls_ret_4 = "modification denied because order too close to market";
break;
case 146:
ls_ret_4 = "trade context is busy";
break;
case 147:
ls_ret_4 = "expirations are denied by broker";
break;
case 148:
ls_ret_4 = "amount of open and pending orders has reached the limit";
break;
case 149:
ls_ret_4 = "hedging is prohibited";
break;
case 150:
ls_ret_4 = "prohibited by FIFO rules";
break;
case 4000:
ls_ret_4 = "no error (never generated code)";
break;
case 4001:
ls_ret_4 = "wrong function pointer";
break;
case 4002:
ls_ret_4 = "array index is out of range";
break;
case 4003:
ls_ret_4 = "no memory for function call stack";
break;
case 4004:
ls_ret_4 = "recursive stack overflow";
break;
case 4005:
ls_ret_4 = "not enough stack for parameter";
break;
case 4006:
ls_ret_4 = "no memory for parameter string";
break;
case 4007:
ls_ret_4 = "no memory for temp string";
break;
case 4008:
ls_ret_4 = "not initialized string";
break;
case 4009:
ls_ret_4 = "not initialized string in array";
break;
case 4010:
ls_ret_4 = "no memory for array\' string";
break;
case 4011:
ls_ret_4 = "too long string";
break;
case 4012:
ls_ret_4 = "remainder from zero divide";
break;
case 4013:
ls_ret_4 = "zero divide";
break;
case 4014:
ls_ret_4 = "unknown command";
break;
case 4015:
ls_ret_4 = "wrong jump (never generated error)";
break;
case 4016:
ls_ret_4 = "not initialized array";
break;
case 4017:
ls_ret_4 = "dll calls are not allowed";
break;
case 4018:
ls_ret_4 = "cannot load library";
break;
case 4019:
ls_ret_4 = "cannot call function";
break;
case 4020:
ls_ret_4 = "expert function calls are not allowed";
break;
case 4021:
ls_ret_4 = "not enough memory for temp string returned from function";
break;
case 4022:
ls_ret_4 = "system is busy (never generated error)";
break;
case 4050:
ls_ret_4 = "invalid function parameters count";
break;
case 4051:
ls_ret_4 = "invalid function parameter value";
break;
case 4052:
ls_ret_4 = "string function internal error";
break;
case 4053:
ls_ret_4 = "some array error";
break;
case 4054:
ls_ret_4 = "incorrect series array using";
break;
case 4055:
ls_ret_4 = "custom indicator error";
break;
case 4056:
ls_ret_4 = "arrays are incompatible";
break;
case 4057:
ls_ret_4 = "global variables processing error";
break;
case 4058:
ls_ret_4 = "global variable not found";
break;
case 4059:
ls_ret_4 = "function is not allowed in testing mode";
break;
case 4060:
ls_ret_4 = "function is not confirmed";
break;
case 4061:
ls_ret_4 = "send mail error";
break;
case 4062:
ls_ret_4 = "string parameter expected";
break;
case 4063:
ls_ret_4 = "integer parameter expected";
break;
case 4064:
ls_ret_4 = "double parameter expected";
break;
case 4065:
ls_ret_4 = "array as parameter expected";
break;
case 4066:
ls_ret_4 = "requested history data in update state";
break;
case 4099:
ls_ret_4 = "end of file";
break;
case 4100:
ls_ret_4 = "some file error";
break;
case 4101:
ls_ret_4 = "wrong file name";
break;
case 4102:
ls_ret_4 = "too many opened files";
break;
case 4103:
ls_ret_4 = "cannot open file";
break;
case 4104:
ls_ret_4 = "incompatible access to a file";
break;
case 4105:
ls_ret_4 = "no order selected";
break;
case 4106:
ls_ret_4 = "unknown symbol";
break;
case 4107:
ls_ret_4 = "invalid price parameter for trade function";
break;
case 4108:
ls_ret_4 = "invalid ticket";
break;
case 4109:
ls_ret_4 = "trade is not allowed in the expert properties";
break;
case 4110:
ls_ret_4 = "longs are not allowed in the expert properties";
break;
case 4111:
ls_ret_4 = "shorts are not allowed in the expert properties";
break;
case 4200:
ls_ret_4 = "object is already exist";
break;
case 4201:
ls_ret_4 = "unknown object property";
break;
case 4202:
ls_ret_4 = "object is not exist";
break;
case 4203:
ls_ret_4 = "unknown object type";
break;
case 4204:
ls_ret_4 = "no object name";
break;
case 4205:
ls_ret_4 = "object coordinates error";
break;
case 4206:
ls_ret_4 = "no specified subwindow";
break;
default:
ls_ret_4 = "unknown error";
}
return (ls_ret_4);
}
// F3F4879EA2CD57F6262AF6EBF1AA6BED
string f0_166() {
if (g_bool_852) return (StringConcatenate("logs\\", TimeToStr(TimeLocal(), TIME_DATE), " - ", WindowExpertName(), " [", Symbol(), "].log"));
return (StringConcatenate("logs\\", WindowExpertName(), " [", Symbol(), "].log"));
}
// DF360FB723F3206D897C43B4EE63EC9B
void f0_147() {
int li_0 = gi_848;
gi_848 = FALSE;
f0_138("###########################################################################", "SET ", 8);
f0_138("Expert: " + g_str_concat_868, "SET ", 8);
f0_138("Symbol: " + Symbol(), "SET ", 8);
f0_138("Period: " + f0_128(), "SET ", 8);
f0_138("Account Company: " + AccountCompany(), "SET ", 8);
f0_138("Account Currency: " + AccountCurrency(), "SET ", 8);
f0_138("Account Leverage: " + AccountLeverage(), "SET ", 8);
f0_138("Account Server: " + AccountServer(), "SET ", 8);
f0_138("Expert Enabled: " + f0_155(IsExpertEnabled()), "SET ", 8);
f0_138("Trade Allowed " + f0_155(IsTradeAllowed()), "SET ", 8);
f0_138("Dll Allowed " + f0_155(IsDllsAllowed()), "SET ", 8);
f0_138("Demo: " + f0_155(IsDemo()), "SET ", 8);
f0_138("Testing: " + f0_155(IsTesting()), "SET ", 8);
f0_138(" ", "SET ", 8);
f0_138("Digits: " + Digits, "SET ", 8);
f0_138("Spread: " + DoubleToStr(MarketInfo(Symbol(), MODE_SPREAD), 1), "SET ", 8);
f0_138("Point: " + MarketInfo(Symbol(), MODE_POINT), "SET ", 8);
f0_138("Stop level: " + DoubleToStr(MarketInfo(Symbol(), MODE_STOPLEVEL), 1), "SET ", 8);
f0_138("Lot size: " + DoubleToStr(MarketInfo(Symbol(), MODE_LOTSIZE), 0), "SET ", 8);
f0_138("Minimum LOT: " + DoubleToStr(MarketInfo(Symbol(), MODE_MINLOT), 5), "SET ", 8);
f0_138("Maximum LOT: " + DoubleToStr(MarketInfo(Symbol(), MODE_MAXLOT), 0), "SET ", 8);
f0_138("Lot step: " + MarketInfo(Symbol(), MODE_LOTSTEP), "SET ", 8);
f0_138("Lot cost (init): " + DoubleToStr(MarketInfo(Symbol(), MODE_MARGININIT), 2), "SET ", 8);
f0_138("Lot cost (req): " + DoubleToStr(MarketInfo(Symbol(), MODE_MARGINREQUIRED), 2), "SET ", 8);
f0_138("Lot cost (maintenance): " + DoubleToStr(MarketInfo(Symbol(), MODE_MARGINMAINTENANCE), 2), "SET ", 8);
f0_138("Lot cost (hedged): " + DoubleToStr(MarketInfo(Symbol(), MODE_MARGINHEDGED), 2), "SET ", 8);
f0_138("Tick value: " + MarketInfo(Symbol(), MODE_TICKVALUE), "SET ", 8);
f0_138("Tick size: " + MarketInfo(Symbol(), MODE_TICKSIZE), "SET ", 8);
f0_138("###########################################################################", "SET ", 8);
f0_138("Log level: " + f0_99(gi_840), "SET ", 8);
gi_848 = li_0;
}
// EB053A21ADF8A5FF57B4BBC45DE07971
string f0_155(bool ai_0) {
if (ai_0) return ("True");
return ("False");
}
// 9A6BBDE4218D042CE08249A57FE5AAAF
string f0_101(int ai_0) {
switch (ai_0) {
case 0:
return ("BUY");
case 1:
return ("SELL");
case 2:
return ("BUYLIMIT");
case 3:
return ("SELLLIMIT");
case 4:
return ("BUYSTOP");
case 5:
return ("SELLSTOP");
}
return ("Unknow");
}
// C32C9AC1883956DF9E4F05F9C561E3D8
string f0_128() {
switch (Period()) {
case PERIOD_M1:
return ("M1");
case PERIOD_M5:
return ("M5");
case PERIOD_M15:
return ("M15");
case PERIOD_M30:
return ("M30");
case PERIOD_H1:
return ("H1");
case PERIOD_H4:
return ("H4");
case PERIOD_D1:
return ("D1");
case PERIOD_W1:
return ("W1");
case PERIOD_MN1:
return ("MN1");
}
return ("Invalid");
}
// 98E15D86F9578A03D816241A92703D41
string f0_99(int ai_0) {
switch (ai_0) {
case 1:
return ("ERROR ");
case 2:
return ("WARNING");
case 4:
return ("SUCCESS");
case 8:
return ("INFO ");
case 16:
return ("TRACE ");
}
return ("DEBUG ");
}
// CE0BE71E33226E4C1DB2BCEA5959F16B
void f0_138(string as_0, string as_8 = "NORMAL", int ai_16 = 8) {
string name_20;
string ls_28;
int file_36;
if (ai_16 <= gi_840 && g_bool_844) {
name_20 = f0_166();
if (name_20 != g_name_860 && IsTesting()) {
FileDelete(name_20);
g_name_860 = name_20;
}
ls_28 = "; ";
file_36 = FileOpen(name_20, FILE_CSV|FILE_WRITE|FILE_READ, ';');
FileSeek(file_36, 0, SEEK_END);
FileWrite(file_36, TimeToStr(TimeLocal(), TIME_DATE), " " + TimeToStr(TimeLocal(), TIME_SECONDS), " " + as_8, " " + f0_99(ai_16), " " + as_0);
FileClose(file_36);
if (gi_848) Print(as_0);
if (g_bool_856) {
f0_133(StringConcatenate("L", ls_28, g_str_concat_868, ls_28, TimeToStr(TimeLocal(), TIME_DATE), ls_28, TimeToStr(TimeLocal(), TIME_SECONDS), ls_28, as_8, ls_28,
f0_99(ai_16), ls_28, as_0));
}
}
}
// 1E2D3E4519DB325889FC8F38EF6C766B
void f0_20(string as_0, string as_8 = "NORMAL") {
f0_138(as_0, as_8, 1);
}
// E23D486C78092A2B54111904104FC071
void f0_150(string as_0, string as_8 = "NORMAL") {
f0_138(as_0, as_8, 1);
Alert(as_0);
}
// A8AF7782502AD176154B856C82283D97
void f0_112(string as_0, string as_8 = "NORMAL") {
f0_138(as_0, as_8, 2);
}
// 84688D9507D6EDD699E41363EC5F400C
void f0_86(string as_0, string as_8 = "NORMAL") {
f0_138(as_0, as_8, 16);
}
// 78E76497B869281F4747A3FC3558A71B
void f0_78(string as_0, string as_8 = "NORMAL") {
f0_138(as_0, as_8, 4);
}
// 059080B1E7C854F6FFA0BD5AF5E562B5
void f0_2(string a_str_concat_0 = "") {
if (a_str_concat_0 != "") g_str_concat_868 = a_str_concat_0;
else g_str_concat_868 = StringConcatenate(WindowExpertName(), " [", Symbol(), "] - ", AccountNumber());
string ls_8 = "; ";
string ls_16 = "REAL";
if (IsDemo()) ls_16 = "DEMO";
if (IsTesting()) ls_16 = "TEST";
if (g_bool_844 && g_bool_856) f0_133(StringConcatenate("I", ls_8, g_str_concat_868, ls_8, TimeToStr(TimeLocal(), TIME_DATE), ls_8, TimeToStr(TimeLocal(), TIME_SECONDS), ls_8, ls_16));
}
// 57F68BD7CB298DFCF8C1D55FF163E283
void f0_60(int a_ticket_0, string as_4 = "", int ai_12 = 8) {
double ld_16;
double ld_24;
string ls_32;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET)) {
ld_16 = 0;
ld_24 = 0;
if (OrderStopLoss() > 0.0) ld_16 = MathAbs((OrderOpenPrice() - OrderStopLoss()) / Point);
if (OrderTakeProfit() > 0.0) ld_24 = MathAbs((OrderTakeProfit() - OrderOpenPrice()) / Point);
ls_32 = "";
if (OrderCloseTime() > 0) ls_32 = ", Close Price: " + DoubleToStr(OrderClosePrice(), Digits);
f0_138(as_4 + " Ticket #" + a_ticket_0 + ": " + " Type: " + f0_101(OrderType()) + ", LOT: " + DoubleToStr(OrderLots(), 2) + ", Open Price: " + DoubleToStr(OrderOpenPrice(),
Digits) + ", SL: " + DoubleToStr(OrderStopLoss(), Digits) + " (" + DoubleToStr(ld_16, 0) + ")" + ", TP: " + DoubleToStr(OrderTakeProfit(), Digits) + " (" + DoubleToStr(ld_24,
0) + ")" + ls_32 + ", Magic: " + OrderMagicNumber() + ", Comment: " + OrderComment(), "ORDER ", ai_12);
return;
}
f0_112("Invalid ticket: " + a_ticket_0);
}
// F095AEEEF8A18556B81B2C841501C9C8
double f0_161(bool ai_0 = FALSE) {
gd_876 = 1;
if (ai_0) {
if (Digits % 4 != FALSE) gd_876 = 10;
} else {
if (Digits == 5 || (Digits == 3 && StringFind(Symbol(), "JPY") > -1) || (Digits == 2 && StringFind(Symbol(), "XAU") > -1) || (Digits == 2 && StringFind(Symbol(),
"GOLD") > -1) || (Digits == 3 && StringFind(Symbol(), "XAG") > -1) || (Digits == 3 && StringFind(Symbol(), "SILVER") > -1) || Digits == 1) gd_876 = 10;
if (Digits == 6 || (Digits == 4 && StringFind(Symbol(), "JPY") > -1) || (Digits == 3 && StringFind(Symbol(), "XAU") > -1) || (Digits == 3 && StringFind(Symbol(),
"GOLD") > -1) || (Digits == 4 && StringFind(Symbol(), "XAG") > -1) || (Digits == 4 && StringFind(Symbol(), "SILVER") > -1)) gd_876 = 100;
}
return (gd_876);
}
// 0D51E5907CFDB5931B9358945E89438B
double f0_7(double a_pips_0) {
return (a_pips_0 * Point * gd_876);
}
// D315BD4B967F698F17705C9D8F74028C
double f0_139(double ad_0) {
return (ad_0 / Point / gd_876);
}
// E5B9BDBE11C5EB46DAE10F059B104BF7
double f0_153(double ad_0, double ad_8) {
double ld_24;
double ticksize_16 = MarketInfo(Symbol(), MODE_TICKSIZE);
if (ticksize_16 != 0.0) {
ld_24 = MarketInfo(Symbol(), MODE_TICKVALUE) * (Point / ticksize_16);
return (ad_0 * gd_876 * ld_24 * ad_8);
}
return (0);
}
// 9A116C50D133C8648404081885194300
double f0_100(double ad_0, int a_digits_8 = -1) {
if (a_digits_8 == -1) a_digits_8 = Digits;
return (NormalizeDouble(ad_0, a_digits_8));
}
// CCA857FBDD027B602626930098BCCF85
string f0_136(double ad_0, int ai_8 = 2) {
if (ad_0 < 0.0) return (StringConcatenate("-", gs_884, f0_108(MathAbs(ad_0), ai_8), gs_892));
return (StringConcatenate(gs_884, f0_108(ad_0, ai_8), gs_892));
}
// A2089E7697BB46B042BA7BD3E2EB50F1
string f0_108(double ad_0, int ai_8 = 0) {
return (DoubleToStr(ad_0, ai_8));
}
// 44A6E0D66A0838FD2F5DD7630F7C1327
void f0_48() {
string ls_0 = AccountCurrency();
if (ls_0 == "USD") {
gs_884 = "$";
return;
}
if (ls_0 == "EUR") {
gs_884 = "€";
return;
}
if (ls_0 == "GBP") {
gs_884 = "£";
return;
}
if (ls_0 == "JPY") {
gs_884 = "¥";
return;
}
gs_884 = "";
}
// 8B2937C36CA255BF2098D743850095A6
double f0_95(double ad_0, string a_symbol_8 = "") {
string ls_48;
if (a_symbol_8 == "") a_symbol_8 = Symbol();
double marginrequired_16 = MarketInfo(a_symbol_8, MODE_MARGINREQUIRED);
double lotstep_24 = MarketInfo(a_symbol_8, MODE_LOTSTEP);
double minlot_32 = MarketInfo(a_symbol_8, MODE_MINLOT);
if (lotstep_24 != 0.0) ad_0 = MathFloor(ad_0 / lotstep_24) * lotstep_24;
ad_0 = MathMax(ad_0, minlot_32);
double ld_40 = ad_0 * marginrequired_16;
if (ld_40 > AccountFreeMargin()) {
ls_48 = "You have not enough money! Free margin: " + DoubleToStr(AccountFreeMargin(), 2) + ", Require: " + DoubleToStr(ld_40, 2);
Print(ls_48);
return (0);
}
return (ad_0);
}
// 620ECEBAA3D316E5E5B8B3F19CFCE19B
double f0_67(double ad_nsd_0, bool ai_8 = FALSE) {
double ld_ret_20;
double ld_ret_28;
double ld_12 = AccountBalance();
if (ld_12 != 0.0) {
ld_ret_20 = AccountMargin() + (AccountBalance() - AccountEquity());
ld_ret_28 = 100.0 * (ld_ret_20 / ld_12);
if (!(ai_8)) return (ld_ret_20);
return (ld_ret_28);
}
return (0);
}
// 88B988D72577FB329BF0848DE410CA17
string f0_89(string &as_0, string as_8) {
string ls_ret_16 = "";
int li_24 = StringFind(as_0, as_8, 0);
if (li_24 != -1) {
if (li_24 > 0) ls_ret_16 = StringSubstr(as_0, 0, li_24);
as_0 = StringSubstr(as_0, li_24 + StringLen(as_8));
} else {
ls_ret_16 = as_0;
as_0 = "";
}
return (ls_ret_16);
}
// 06CCE67E6D164C6A1BBC38BAD20E8EDF
int f0_4(bool ai_0, int ai_4, int ai_8) {
if (ai_0) return (ai_4);
return (ai_8);
}
// 3BE4B59601B7B2E82D21E1C5C718B88F
double f0_39(bool ai_0, double ad_4, double ad_12) {
if (ai_0) return (ad_4);
return (ad_12);
}
// 1368D28A27D3419A04740CF6C5C45FD7
string f0_12(int ai_0) {
for (int li_4 = ArraySize(gia_904) - 1; li_4 >= 0; li_4--)
if (ai_0 == gia_904[li_4]) return (gsa_900[li_4]);
return ("");
}
// 14C18FA4BA9031D803BCA7111529C553
string f0_13(string as_0) {
int li_36;
string ls_ret_8 = "";
string ls_16 = "abcdefghijklmnopqrstuvwxyz";
string ls_24 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (int li_32 = 0; li_32 < StringLen(as_0); li_32++) {
li_36 = StringFind(ls_24, StringSubstr(as_0, li_32, 1), 0);
if (li_36 >= 0) ls_ret_8 = ls_ret_8 + StringSubstr(ls_16, li_36, 1);
else ls_ret_8 = ls_ret_8 + StringSubstr(as_0, li_32, 1);
}
return (ls_ret_8);
}
// 3B196A05381EC289525B2E53A98926D7
void f0_38(string as_0 = "") {
for (int li_8 = ObjectsTotal() - 1; li_8 >= 0; li_8--)
if (as_0 == "" || StringFind(ObjectName(li_8), as_0, 0) >= 0) ObjectDelete(ObjectName(li_8));
}
// 7126649E3622237FA222CDC6BBA2273F
void f0_75(int a_dttm_0, double ad_4, string a_text_12, color a_clr_20 = 16777215, bool ai_24 = TRUE, bool ai_28 = FALSE) {
int count_32 = 0;
string ls_36 = "U";
if (!ai_24) ls_36 = "D";
string str_concat_44 = StringConcatenate("___PRICELBL_", ls_36, f0_108(a_dttm_0, 0), "_", f0_108(ad_4, 5));
if (ai_28 && ObjectFind(str_concat_44) != -1) {
while (ObjectFind(str_concat_44) != -1) {
count_32++;
str_concat_44 = StringConcatenate("PRICELBL_", ls_36, f0_108(a_dttm_0, 0), "_", f0_108(ad_4, 5), "_", count_32);
}
}
if (ObjectFind(str_concat_44) == -1 || ObjectCreate(str_concat_44, OBJ_TEXT, 0, 0, 0)) ObjectSet(str_concat_44, OBJPROP_TIME1, a_dttm_0);
double ld_52 = ad_4 + 5.0 * Point;
if (!ai_24) ld_52 = ad_4;
ObjectSet(str_concat_44, OBJPROP_PRICE1, ld_52);
ObjectSetText(str_concat_44, a_text_12, g_fontsize_944, "Arial", a_clr_20);
}
// F5CF62E4BA63BB2971FB9EED7A4B943F
void f0_168(int ai_0, int ai_4, double ad_8, double ad_16) {
int li_24 = gi_936;
if (ad_16 < 0.0) li_24 = gi_940;
f0_75(ai_4, ad_8, StringConcatenate(f0_136(ad_16, 2), " "), li_24, (ai_0 == 0 && ad_16 > 0.0) || (ai_0 == 1 && ad_16 < 0.0), 1);
}
// E1C2C4B95F3F081D753ECB174966268B
void f0_148(int a_magic_0, int a_cmd_4 = -1) {
int li_8 = gi_932;
int hist_total_12 = OrdersHistoryTotal();
for (int pos_16 = hist_total_12 - 1; pos_16 >= 0; pos_16--) {
if (OrderSelect(pos_16, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderType() == a_cmd_4 || a_cmd_4 == -1 && OrderSymbol() == Symbol() && OrderMagicNumber() == a_magic_0) {
if (!(OrderTicket() > gi_932 || gi_932 == -1 && OrderType() == OP_BUY || OrderType() == OP_SELL)) break;
f0_168(OrderType(), OrderCloseTime(), OrderClosePrice(), OrderProfit() + OrderSwap() + OrderCommission());
li_8 = MathMax(li_8, OrderTicket());
if (gi_932 == -1) gi_932 = OrderTicket();
}
}
}
gi_932 = li_8;
}
// 498CFE7F1A6FB1C64C3B3ACF54438508
double f0_53(string a_symbol_0, double ad_8, double ad_16 = 0.0, double ad_24 = 0.0) {
double ld_72;
double ld_80;
double ld_88;
string ls_96;
double ld_ret_32 = 0;
if (a_symbol_0 == "") a_symbol_0 = Symbol();
double marginrequired_40 = MarketInfo(a_symbol_0, MODE_MARGINREQUIRED);
double ld_48 = MarketInfo(a_symbol_0, MODE_MINLOT);
double lotstep_56 = MarketInfo(a_symbol_0, MODE_LOTSTEP);
double free_magrin_64 = AccountFreeMargin();
if (ad_16 > 0.0) {
ld_72 = ad_16 * marginrequired_40;
if (ld_72 <= AccountFreeMargin()) ld_ret_32 = ad_16;
else ld_ret_32 = MathFloor(free_magrin_64 / marginrequired_40 / lotstep_56) * lotstep_56;
} else {
if (ad_24 > 0.0) {
ld_80 = AccountEquity() * (ad_8 / 100.0);
ld_88 = MarketInfo(a_symbol_0, MODE_TICKVALUE) * gd_876;
ld_ret_32 = ld_80 / (ld_88 * ad_24);
ld_ret_32 = MathFloor(ld_ret_32 / lotstep_56) * lotstep_56;
} else {
if (ad_8 > 100.0) ad_8 = 100;
if (ad_8 == 0.0) ld_ret_32 = ld_48;
else ld_ret_32 = MathFloor(free_magrin_64 * ad_8 / 100.0 / marginrequired_40 / lotstep_56) * lotstep_56;
}
}
if (ld_ret_32 < ld_48) ld_ret_32 = ld_48;
ld_72 = ld_ret_32 * marginrequired_40;
if (ld_72 > AccountFreeMargin()) {
ls_96 = "You have not enough money! Free margin: " + f0_108(AccountFreeMargin(), 2) + ", Require: " + f0_108(ld_72, 2);
Print(ls_96);
return (0);
}
return (ld_ret_32);
}
// 401811F13CF39DF9D4C78BFA5C77530C
int f0_44(int ai_0 = 20) {
int li_4 = 500;
for (int count_8 = 0; IsTradeContextBusy() && count_8 < ai_0; count_8++) Sleep(li_4);
if (count_8 >= ai_0) f0_112(StringConcatenate("Trade context is busy more than ", f0_108(li_4 * count_8 / 1000, 2), " seconds"));
else
if (count_8 > 0) f0_20(StringConcatenate("Trade context was busy ", f0_108(li_4 * count_8 / 1000, 2), " seconds"));
RefreshRates();
return (count_8 < ai_0);
}
// 3ED4137FCCCAF209812ED7B28A787689
int f0_42(int a_cmd_0, double a_lots_4, double ad_12, double ad_20, int a_magic_28, double ad_32 = 0.0, double ad_40 = 0.0) {
color color_48;
double ld_52;
double ld_60;
double ld_68;
double ld_76;
int li_84;
int ticket_88;
double ld_92;
string str_concat_100;
if (a_lots_4 != 0.0) {
color_48 = f0_21(a_cmd_0);
ld_60 = 0.0;
ld_68 = 0.0;
RefreshRates();
if (a_cmd_0 == OP_BUYLIMIT || a_cmd_0 == OP_BUYSTOP || a_cmd_0 == OP_BUY) {
if (ad_32 != 0.0) ld_52 = Ask + f0_7(ad_32);
else {
if (ad_40 != 0.0) ld_52 = ad_40;
else ld_52 = Ask;
}
if (ad_12 > 0.0) ld_60 = f0_100(ld_52 - f0_7(ad_12));
if (ad_20 > 0.0) ld_68 = f0_100(ld_52 + f0_7(ad_20));
} else {
if (a_cmd_0 == OP_SELLLIMIT || a_cmd_0 == OP_SELLSTOP || a_cmd_0 == OP_SELL) {
if (ad_32 != 0.0) ld_52 = Bid - f0_7(ad_32);
else {
if (ad_40 != 0.0) ld_52 = ad_40;
else ld_52 = Bid;
}
if (ad_12 > 0.0) ld_60 = f0_100(ld_52 + f0_7(ad_12));
if (ad_20 > 0.0) ld_68 = f0_100(ld_52 - f0_7(ad_20));
}
}
if (!f0_44()) {
gs_984 = "Sorry, but the trade context is busy!";
f0_112("Order open error! OrderSend(" + Symbol() + ", " + f0_101(a_cmd_0) + ", " + DoubleToStr(a_lots_4, 2) + ", " + DoubleToStr(ld_52, Digits) + ", " + DoubleToStr(gi_952 * gd_876,
1) + ", " + DoubleToStr(ld_60, Digits) + ", " + DoubleToStr(ld_68, Digits) + ", \'" + g_comment_956 + "\', " + DoubleToStr(a_magic_28, 0) + ") error - " + gs_984);
return (0);
}
ld_76 = MarketInfo(OrderSymbol(), MODE_SPREAD) / gd_876;
f0_86("Open order OrderSend(" + Symbol() + ", " + f0_101(a_cmd_0) + ", " + DoubleToStr(a_lots_4, 2) + ", " + DoubleToStr(ld_52, Digits) + ", " + DoubleToStr(gi_952 * gd_876,
1) + ", " + DoubleToStr(ld_60, Digits) + ", " + DoubleToStr(ld_68, Digits) + ", \'" + g_comment_956 + "\', " + DoubleToStr(a_magic_28, 0) + ") ... Current spread: " + f0_108(ld_76, 2));
li_84 = GetTickCount();
ticket_88 = -1;
if (gi_948) ticket_88 = OrderSend(Symbol(), a_cmd_0, a_lots_4, f0_100(ld_52), gi_952 * gd_876, 0, 0, g_comment_956, a_magic_28, 0, color_48);
else ticket_88 = OrderSend(Symbol(), a_cmd_0, a_lots_4, f0_100(ld_52), gi_952 * gd_876, f0_100(ld_60), f0_100(ld_68), g_comment_956, a_magic_28, 0, color_48);
if (ticket_88 < 0) {
gs_984 = f0_143(GetLastError());
f0_112("Order open error! OrderSend(" + Symbol() + ", " + f0_101(a_cmd_0) + ", " + DoubleToStr(a_lots_4, 2) + ", " + DoubleToStr(ld_52, Digits) + ", " + DoubleToStr(gi_952 * gd_876,
1) + ", " + DoubleToStr(ld_60, Digits) + ", " + DoubleToStr(ld_68, Digits) + ", \'" + g_comment_956 + "\', " + DoubleToStr(a_magic_28, 0) + ") error - " + gs_984);
return (0);
}
gi_992 = GetTickCount() - li_84;
f0_60(ticket_88, StringConcatenate("New order (", gi_992, " ms)!"));
g_ticket_968 = ticket_88;
if (gi_948) {
Sleep(1000);
f0_44();
if (!OrderModify(ticket_88, f0_100(OrderOpenPrice()), f0_100(ld_60), f0_100(ld_68), 0, Black)) {
gs_984 = f0_143(GetLastError());
f0_20(StringConcatenate("OrderModify(", ticket_88, ", ", OrderOpenPrice(), ", ", ld_60, ", ", ld_68, ", 0) error (method: OpenOrder) - " + gs_984));
}
}
if (g_bool_964 && f0_100(OrderOpenPrice()) != f0_100(ld_52)) {
ld_92 = f0_139(OrderOpenPrice() - ld_52);
str_concat_100 = StringConcatenate("[", Symbol(), " ", f0_12(Period()), "] Order (", ticket_88, ") open price changed (", ld_92, " pips)! Original: ", f0_100(ld_52),
", Opened price: ", f0_100(OrderOpenPrice()), ", Before spread: ", ld_76);
if (ld_92 >= 1.0 || ld_92 <= -1.0) f0_150(str_concat_100);
else f0_20(str_concat_100);
}
gi_972 = Time[0];
if (a_cmd_0 == OP_BUY) gi_nsd_976 = gi_972;
else
if (a_cmd_0 == OP_SELL) gi_nsd_980 = gi_972;
}
return (1);
}
// F235F73FF9E6C9B0402F9856A41D6B1B
int f0_165(int a_ticket_0, double ad_4, double ad_12, double a_order_stoploss_20 = 0.0, double a_order_takeprofit_28 = 0.0) {
double price_40;
double order_stoploss_48;
double order_takeprofit_56;
bool li_ret_36 = FALSE;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
order_stoploss_48 = OrderStopLoss();
order_takeprofit_56 = OrderTakeProfit();
if (OrderType() == OP_BUY) {
price_40 = MarketInfo(OrderSymbol(), MODE_ASK);
if (ad_4 > 0.0) order_stoploss_48 = f0_100(price_40 - f0_7(ad_4));
if (ad_12 > 0.0) order_takeprofit_56 = f0_100(price_40 + f0_7(ad_12));
} else {
if (OrderType() == OP_SELL) {
price_40 = MarketInfo(OrderSymbol(), MODE_BID);
if (ad_4 > 0.0) order_stoploss_48 = f0_100(price_40 + f0_7(ad_4));
if (ad_12 > 0.0) order_takeprofit_56 = f0_100(price_40 - f0_7(ad_12));
}
}
if (a_order_stoploss_20 > 0.0) order_stoploss_48 = a_order_stoploss_20;
if (a_order_takeprofit_28 > 0.0) order_takeprofit_56 = a_order_takeprofit_28;
if ((order_stoploss_48 > 0.0 && f0_100(order_stoploss_48) != f0_100(OrderStopLoss())) || (order_takeprofit_56 > 0.0 && f0_100(order_takeprofit_56) != f0_100(OrderTakeProfit()))) {
f0_44();
if (!OrderModify(OrderTicket(), f0_100(OrderOpenPrice()), f0_100(order_stoploss_48), f0_100(order_takeprofit_56), 0)) {
gs_984 = f0_143(GetLastError());
f0_20(StringConcatenate("OrderModify(", OrderTicket(), ", ", OrderOpenPrice(), ", ", order_stoploss_48, ", ", order_takeprofit_56, ", 0) error (method: ModifyTicketOrder) - " +
gs_984));
li_ret_36 = FALSE;
} else {
li_ret_36 = TRUE;
f0_60(a_ticket_0, "Modify order!");
}
}
} else f0_20("OrderSelect() error (method: ModifyTicketOrder) - " + f0_143(GetLastError()));
return (li_ret_36);
}
// B48C18DF8AF1F72C0BA3C0FF3FEED7C1
int f0_118(int a_ticket_0, double ad_4, double ad_12, double ad_20) {
bool li_ret_28 = FALSE;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
if (f0_100(OrderOpenPrice()) != f0_100(ad_4)) {
f0_44();
if (!OrderModify(OrderTicket(), f0_100(ad_4), f0_100(ad_12), f0_100(ad_20), OrderExpiration(), f0_21(OrderType()))) {
gs_984 = f0_143(GetLastError());
f0_20(StringConcatenate("OrderModify(", OrderTicket(), ", ", ad_4, ", ", ad_12, ", ", ad_20, ", ", OrderExpiration(), ") error (method: ModifyPendingOrderPrice) - " +
gs_984));
li_ret_28 = FALSE;
} else {
li_ret_28 = TRUE;
f0_60(a_ticket_0, "Modify pending order!");
}
}
} else f0_20("OrderSelect() error (method: ModifyPendingOrderPrice) - " + f0_143(GetLastError()));
return (li_ret_28);
}
// 1F083AF200C3B46024FBE1FC4E9CC80E
int f0_21(int ai_0) {
if (ai_0 == 0 || ai_0 == 2 || ai_0 == 4) return (16711680);
if (ai_0 == 1 || ai_0 == 3 || ai_0 == 5) return (255);
return (0);
}
// D43CF0F27808F53715C65F405A5023D1
int f0_140(int a_ticket_0) {
color color_4;
int li_8;
double ld_12;
double ld_20;
int is_closed_28;
double ld_32;
string str_concat_40;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET)) {
color_4 = f0_21(OrderType());
li_8 = GetTickCount();
f0_44();
ld_12 = f0_39(OrderType() == OP_BUY, Bid, Ask);
ld_20 = MarketInfo(OrderSymbol(), MODE_SPREAD) / gd_876;
is_closed_28 = OrderClose(OrderTicket(), OrderLots(), f0_100(OrderClosePrice()), gi_952 * gd_876, color_4);
if (is_closed_28 < 0) {
f0_150("OrderClose(" + OrderTicket() + ") error (method: CloseOrder) - " + f0_143(GetLastError()));
return (0);
}
gi_992 = GetTickCount() - li_8;
f0_60(OrderTicket(), StringConcatenate("Order closed (", gi_992, " ms)! Profit: $", DoubleToStr(OrderProfit() + OrderSwap() + OrderCommission(), 2)));
if (!(g_bool_964)) return (1);
if (f0_100(OrderClosePrice()) == f0_100(ld_12)) return (1);
ld_32 = f0_139(OrderClosePrice() - ld_12);
str_concat_40 = StringConcatenate("[", Symbol(), " ", f0_12(Period()), "] Order (", a_ticket_0, ") close price changed (", ld_32, " pips)! Original: ", f0_100(ld_12),
", Closed price: ", f0_100(OrderClosePrice()), ", Before spread: ", ld_20);
if (ld_32 >= 1.0 || ld_32 <= -1.0) f0_150(str_concat_40);
else f0_20(str_concat_40);
return (1);
}
return (0);
}
// 29C540D42AE92A3223D6E1A9AB741030
int f0_24(int a_ticket_0, int ai_4) {
double order_lots_12;
double lots_20;
bool is_closed_8 = FALSE;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
order_lots_12 = OrderLots();
lots_20 = f0_95(order_lots_12 * ai_4 / 100.0);
if (lots_20 > 0.0 && lots_20 != order_lots_12) {
f0_44();
f0_60(OrderTicket(), "Close partial order. Partial LOT: " + DoubleToStr(lots_20, 2));
is_closed_8 = OrderClose(OrderTicket(), lots_20, f0_100(OrderClosePrice()), gi_952 * gd_876, Yellow);
if (!is_closed_8) f0_150("OrderClose(" + OrderTicket() + ", " + lots_20 + ") error (method: CloseOrderPartial) - " + f0_143(GetLastError()));
}
}
return (is_closed_8);
}
// B428A88CD9DF965BCCC23643E79706F2
int f0_117(int a_cmd_0, int a_magic_4) {
int count_8 = 0;
for (int pos_12 = OrdersTotal() - 1; pos_12 >= 0; pos_12--) {
if (OrderSelect(pos_12, SELECT_BY_POS, MODE_TRADES)) {
if (OrderType() == a_cmd_0 || a_cmd_0 == -1 && OrderSymbol() == Symbol() && OrderMagicNumber() == a_magic_4) count_8++;
} else Print("OrderSelect() error (method: getOrderCount) - ", f0_143(GetLastError()));
}
return (count_8);
}
// 3562582EF5099112B14C7258B3FECDA0
double f0_32(int a_cmd_0, int a_magic_4) {
double ld_ret_8 = 0.0;
for (int pos_16 = OrdersTotal() - 1; pos_16 >= 0; pos_16--) {
if (OrderSelect(pos_16, SELECT_BY_POS, MODE_TRADES)) {
if (OrderType() == a_cmd_0 || a_cmd_0 == -1 && OrderSymbol() == Symbol() && OrderMagicNumber() == a_magic_4) ld_ret_8 += OrderProfit() + OrderSwap() + OrderCommission();
} else Print("OrderSelect() error (method: getOrderProfit) - ", f0_143(GetLastError()));
}
return (ld_ret_8);
}
// 528624FDFA8F71F723DDC864B8B7773C
int f0_57(int a_cmd_0, int a_magic_4) {
int ticket_8;
int ticket_12 = 0;
for (int pos_16 = OrdersTotal() - 1; pos_16 >= 0; pos_16--) {
OrderSelect(pos_16, SELECT_BY_POS, MODE_TRADES);
if (OrderType() == a_cmd_0 || a_cmd_0 == -1 && OrderSymbol() == Symbol() && OrderMagicNumber() == a_magic_4) {
ticket_8 = OrderTicket();
if (ticket_8 > ticket_12) ticket_12 = ticket_8;
}
}
return (ticket_12);
}
// E39EB44E9236337DBF2220C9902FAD68
string f0_151(string as_0, int ai_8 = -1) {
if (ai_8 == -1) return (StringConcatenate(gs_996, "G_", as_0));
return (StringConcatenate(gs_996, ai_8, "_", as_0));
}
// 5D5B78699E57104F2FA03BBDF7B9197B
string f0_62(string as_0, string a_text_8, int ai_16 = -1) {
string name_20 = f0_151(as_0, ai_16);
if (ObjectFind(name_20) == -1) {
ObjectCreate(name_20, OBJ_HLINE, 0, 0, 0);
ObjectSet(name_20, OBJPROP_COLOR, CLR_NONE);
}
ObjectSetText(name_20, a_text_8, 0);
return (name_20);
}
// FBDC0FE21760429A9A6F11B2349D9766
void f0_172(string as_0, int ai_8, int ai_12 = -1) {
f0_62(as_0, f0_108(ai_8, 0), ai_12);
}
// F21D692D6A0306D3155FDAA501D856C4
void f0_164(string as_0, int ai_8, int ai_12 = -1) {
f0_172(as_0, f0_4(ai_8, 1, 0), ai_12);
}
// 02349AD6FAB026BA3C46B06ECCBC51A6
string f0_0(string as_0, double ad_8, int ai_16 = -1, color a_clr_20 = -1, int a_style_24 = 0) {
string name_28 = f0_62(as_0, ad_8, ai_16);
ObjectSet(name_28, OBJPROP_PRICE1, ad_8);
ObjectSet(name_28, OBJPROP_STYLE, a_style_24);
if (a_clr_20 != CLR_NONE) ObjectSet(name_28, OBJPROP_COLOR, a_clr_20);
return (name_28);
}
// C55582518CBA2C464F29F5BAE1C68DEF
string f0_129(string as_0, int ai_8 = -1) {
string ls_nsd_20;
string name_12 = f0_151(as_0, ai_8);
return (ObjectDescription(name_12));
}
// 356039C5D703DCB56F4879935BA31135
double f0_31(string as_0, int ai_8 = -1) {
string name_12 = f0_151(as_0, ai_8);
if (ObjectFind(name_12) == -1) return (EMPTY_VALUE);
return (f0_100(ObjectGet(name_12, OBJPROP_PRICE1)));
}
// 5173A4BF4B690EEB6E19049C96B168CE
int f0_56(string as_0, int ai_8 = -1) {
string ls_12 = f0_129(as_0, ai_8);
if (ls_12 == "") return (EMPTY_VALUE);
return (MathRound(StrToDouble(ls_12)));
}
// DCDE74C7DAC0D8DB7A9D163D8715FA29
double f0_145(string as_0, int ai_8 = -1) {
string ls_12 = f0_129(as_0, ai_8);
if (ls_12 == "") return (EMPTY_VALUE);
return (StrToDouble(ls_12));
}
// 4226BC9394DA5D70553D304AE75F7AFB
int f0_45(string as_0, int ai_8 = -1) {
string ls_12 = f0_129(as_0, ai_8);
if (ls_12 == "") return (0);
return (ls_12 == "1");
}
// 0F4BEB3FF65A97C25BFCE93C0F43B321
string f0_9(string as_0, int ai_8 = -1) {
string ls_12 = ".";
if (IsTesting()) ls_12 = "t.";
if (ai_8 == -1) return (StringConcatenate(gs_1004, ls_12, "G_", Symbol(), "_", MagicNumber, "_", as_0));
return (StringConcatenate(gs_1004, ls_12, ai_8, "_", as_0));
}
// 22DDEC2378F13A723E0661C5486289FB
double f0_22(string as_0, int ai_8 = -1, double ad_12 = EMPTY_VALUE, bool ai_20 = FALSE) {
string var_name_24 = f0_9(as_0, ai_8);
if (GlobalVariableCheck(var_name_24)) return (GlobalVariableGet(var_name_24));
if (ai_20 && ad_12 != EMPTY_VALUE) GlobalVariableSet(var_name_24, ad_12);
return (ad_12);
}
// 76D720982E767099D1C64D3CFDDE7E8D
void f0_77() {
bool li_4;
double ld_8;
double ld_16;
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
if (OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES)) {
if (gi_736 || OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber && OrderCloseTime() == 0) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
if (!(f0_127(OrderTicket()))) break;
continue;
}
if (OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES)) f0_167(OrderTicket());
}
}
}
if (AutoCloseAllProfitMoney > 0.0 || AutoCloseAllProfitPercent > 0.0 || AutoCloseAllLossMoney > 0.0 || AutoCloseAllLossPercent > 0.0) {
li_4 = FALSE;
ld_8 = f0_32(-1, MagicNumber);
if (AutoCloseAllProfitMoney > 0.0) {
if (ld_8 >= AutoCloseAllProfitMoney) {
f0_112(StringConcatenate("Profit reach the \'AutoCloseAllProfitMoney\' value (", ld_8, " >= ", AutoCloseAllProfitMoney, "). Close all orders..."));
li_4 = TRUE;
}
}
if (!li_4 && AutoCloseAllLossMoney > 0.0) {
ld_8 = f0_32(-1, MagicNumber);
if (ld_8 <= 0.0 - AutoCloseAllLossMoney) {
f0_112(StringConcatenate("Loss reach the \'AutoCloseAllLossMoney\' value (", ld_8, " <= -", AutoCloseAllLossMoney, "). Close all orders..."));
li_4 = TRUE;
}
}
if (!li_4 && AutoCloseAllProfitPercent > 0.0 && AccountBalance() > 0.0) {
ld_16 = AccountBalance() * (AutoCloseAllProfitPercent / 100.0);
if (ld_8 >= ld_16) {
f0_112(StringConcatenate("Profit reach the \'AutoCloseAllProfitPercent\' value (", AutoCloseAllProfitPercent, "%). Profit: ", ld_8, ", EQLimit: ", ld_16, ". Close all orders..."));
li_4 = TRUE;
}
}
if (!li_4 && AutoCloseAllLossPercent > 0.0 && AccountBalance() > 0.0) {
ld_16 = -1.0 * (AccountBalance() * AutoCloseAllLossPercent / 100.0);
if (ld_16 < 0.0 && ld_8 <= ld_16) {
f0_112(StringConcatenate("Profit reach the \'AutoCloseAllLossPercent\' value (", AutoCloseAllLossPercent, "%). Profit: ", ld_8, ", EQLimit: ", ld_16, ". Close all orders..."));
li_4 = TRUE;
}
}
if (li_4) {
f0_41("Please wait!", "Closing all orders...", 3);
f0_87();
}
}
f0_73();
if (DrawPriceLabel) f0_148(MagicNumber);
}
// C2E84E4BE8F91EAB42131A8D7A20024E
bool f0_127(int a_ticket_0) {
bool li_4;
int li_8;
int li_12;
if (OrderTicket() == a_ticket_0 || OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
f0_167(a_ticket_0);
if (OrderTicket() == a_ticket_0 || OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) && OrderCloseTime() == 0) {
li_4 = f0_45(gs_grid_1076, a_ticket_0);
li_8 = f0_56(gs_1084, a_ticket_0);
if (li_8 != EMPTY_VALUE) {
if (f0_56(gs_1092, li_8) == EMPTY_VALUE && g_bool_776) {
f0_138(StringConcatenate("Parent order (", li_8, ") not found. Closing..."));
f0_17(a_ticket_0);
return (TRUE);
}
}
if (li_4) f0_92(a_ticket_0);
else {
if (AutoGridMode) {
li_12 = f0_56(gs_grid_1076, a_ticket_0);
if (li_12 == EMPTY_VALUE && li_8 == EMPTY_VALUE) f0_134(a_ticket_0);
}
}
}
}
return (TRUE);
}
// AAEEC1DA66744E56049D8EB29EBD4B9E
int f0_114(int ai_0, double ad_4) {
double ld_12;
if (DontAllowOrderOpenMaxSpread > 0.0) {
ld_12 = MarketInfo(Symbol(), MODE_SPREAD) / gd_876;
if (ld_12 >= DontAllowOrderOpenMaxSpread) {
f0_112(StringConcatenate("Order open don\'t allowed! Spread is too high: ", ld_12, " (Max: ", DontAllowOrderOpenMaxSpread, ")"));
f0_41("Order open error!", "Spread is too high! Current: " + f0_108(ld_12, 1) + " (Max: " + f0_108(DontAllowOrderOpenMaxSpread, 1) + ")", 2, 2000);
return (-1);
}
}
f0_5();
int ticket_20 = -1;
if (f0_42(ai_0, ad_4, 0, 0, MagicNumber)) {
ticket_20 = g_ticket_968;
f0_160(ticket_20);
WindowRedraw();
f0_125(ticket_20);
} else f0_1();
return (ticket_20);
}
// 86EFCD35CE6F1F09B11E9598963798FE
int f0_87() {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
if (OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol())
if (OrderMagicNumber() == MagicNumber) f0_17(OrderTicket());
}
}
return (0);
}
// 19DAC327423444E9E3A386AD9DFED170
int f0_17(int ai_0) {
f0_54(ai_0);
int li_4 = f0_56(gs_grid_1076, ai_0);
int li_ret_8 = f0_140(ai_0);
if (li_ret_8 && li_4 != EMPTY_VALUE) {
for (int pos_12 = OrdersTotal() - 1; pos_12 >= 0; pos_12--) {
if (OrderSelect(pos_12, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber)
if (f0_56(gs_1084, OrderTicket()) == ai_0) f0_140(OrderTicket());
}
}
}
}
f0_131(ai_0);
return (li_ret_8);
}
// 712C4A32F28797E584F3D1327EA2AE16
int f0_76(int a_ticket_0 = -1, double ad_4 = 0.0) {
double datetime_12;
double ld_20;
double ld_28;
double ld_36;
double ld_44;
double ld_52;
int li_ret_60;
int ticket_68;
if (a_ticket_0 == -1) a_ticket_0 = f0_57(-1, MagicNumber);
if (a_ticket_0 != -1) {
if (ad_4 == 0.0) ad_4 = QuickPartialClose;
if (ad_4 > 0.0 && ad_4 <= 100.0) {
f0_138("Partial close for " + a_ticket_0);
OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
datetime_12 = OrderOpenTime();
ld_20 = f0_31(gs_1012, a_ticket_0);
ld_28 = f0_31(gs_1020, a_ticket_0);
ld_36 = f0_31(gs_pc1_1052, a_ticket_0);
ld_44 = f0_31(gs_pc2_1060, a_ticket_0);
ld_52 = f0_31(gs_pc3_1068, a_ticket_0);
f0_54(a_ticket_0);
li_ret_60 = f0_24(a_ticket_0, ad_4);
f0_131(a_ticket_0);
for (int pos_64 = 0; pos_64 < OrdersTotal(); pos_64++) {
if (OrderSelect(pos_64, SELECT_BY_POS, MODE_TRADES)) {
if (OrderOpenTime() == datetime_12) {
ticket_68 = OrderTicket();
if (ld_20 != EMPTY_VALUE) f0_0(gs_1012, ld_20, ticket_68, StopLossColor);
if (ld_28 != EMPTY_VALUE) f0_0(gs_1020, ld_28, ticket_68, TakeProfitColor);
if (ld_36 != EMPTY_VALUE) f0_43(ticket_68, 1, PartialClosePos1, ld_36);
if (ld_44 != EMPTY_VALUE) f0_43(ticket_68, 2, PartialClosePos2, ld_44);
if (ld_52 != EMPTY_VALUE) f0_43(ticket_68, 3, PartialClosePos3, ld_52);
if (g_ticket_820 != a_ticket_0) break;
g_ticket_820 = ticket_68;
break;
}
}
}
return (li_ret_60);
}
}
return (0);
}
// C628A3FD73C8D961CDB3A222D4565D74
void f0_132(int a_ticket_0 = -1) {
double ld_4;
if (a_ticket_0 == -1) a_ticket_0 = f0_57(-1, MagicNumber);
f0_138("Order break-even for " + a_ticket_0);
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
ld_4 = OrderOpenPrice() + f0_7(f0_39(OrderType() == OP_BUY, BreakEvenPips, -BreakEvenPips));
if ((OrderType() == OP_BUY && Bid > OrderOpenPrice()) || (OrderType() == OP_SELL && Ask < OrderOpenPrice())) f0_0(gs_1012, ld_4, a_ticket_0);
}
}
// 60D14E47B2DF497D9D8BFC9A6DF1C130
void f0_65(int a_ticket_0 = -1) {
double order_lots_4;
double cmd_12;
int ticket_20;
if (a_ticket_0 == -1) a_ticket_0 = f0_57(-1, MagicNumber);
f0_138("Order reverse for " + a_ticket_0);
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
order_lots_4 = OrderLots();
cmd_12 = OrderType();
if (f0_17(a_ticket_0)) {
ticket_20 = f0_114(1 - cmd_12, order_lots_4);
if (g_ticket_820 == a_ticket_0) g_ticket_820 = ticket_20;
}
}
}
// 5F3B02AD6210F6A480324B754A657904
int f0_64(int a_ticket_0, int ai_4, bool ai_8) {
double ld_12;
double ld_20;
double bid_28;
double ask_36;
double ld_44;
double ld_52;
int li_ret_60;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
ld_12 = f0_100(f0_145(gs_1012, a_ticket_0));
ld_20 = 0;
bid_28 = MarketInfo(OrderSymbol(), MODE_BID);
ask_36 = MarketInfo(OrderSymbol(), MODE_ASK);
ld_44 = f0_71(a_ticket_0);
ld_52 = TrailingStopAt;
if (ld_52 == 0.0) ld_52 = MathMax(BreakEvenAt + BreakEvenPips, ai_4);
if (OrderType() == OP_BUY && ai_4 > 0 && ld_44 < bid_28 - f0_7(ld_52)) {
ld_20 = f0_100(bid_28 - f0_7(ai_4));
if (ld_12 >= ld_20) return (0);
f0_86(StringConcatenate("Trailing stop active! Ticket: ", a_ticket_0, ", Bid: ", f0_100(bid_28), ", Trigger: ", ld_52, ", New SL: ", ld_20));
if (ai_8) li_ret_60 = f0_165(a_ticket_0, 0, 0, ld_20);
else {
f0_0(gs_1012, ld_20, a_ticket_0);
return (li_ret_60);
}
return (li_ret_60);
}
if (OrderType() == OP_SELL && ai_4 > 0 && ld_44 > ask_36 + f0_7(ld_52)) {
ld_20 = f0_100(ask_36 + f0_7(ai_4));
if (ld_12 > ld_20) {
f0_86(StringConcatenate("Trailing stop active! Ticket: ", a_ticket_0, ", Ask: ", f0_100(ask_36), ", Trigger: ", ld_52, ", New SL: ", ld_20));
if (ai_8) li_ret_60 = f0_165(a_ticket_0, 0, 0, ld_20);
else {
f0_0(gs_1012, ld_20, a_ticket_0);
return (li_ret_60);
}
return (li_ret_60);
}
}
}
return (0);
}
// CA01614000B01CD69F6C857A26D84621
void f0_134(int ai_0) {
bool bool_4 = f0_45(gs_grid_1076, ai_0);
bool_4 = !bool_4;
f0_164(gs_grid_1076, bool_4, ai_0);
f0_172(gs_1092, 0, ai_0);
f0_78(StringConcatenate("Grid mode: ", bool_4, " for ticket: ", ai_0));
}
// 2AC226274B5A56BE10DD89C0E4F6F6B6
int f0_25(int a_ticket_0) {
int li_12;
int li_ret_4 = 1;
for (int pos_8 = OrdersTotal() - 1; pos_8 >= 0; pos_8--) {
if (OrderSelect(pos_8, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber && OrderCloseTime() == 0) {
li_12 = f0_56(gs_1084, OrderTicket());
if (li_12 == a_ticket_0) li_ret_4++;
}
}
}
}
OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
return (li_ret_4);
}
// CCA9F5804B320357938880F3BA496D3D
int f0_137(int a_ticket_0) {
int li_16;
int li_20;
int li_4 = 0;
int ticket_8 = a_ticket_0;
for (int pos_12 = OrdersTotal() - 1; pos_12 >= 0; pos_12--) {
if (OrderSelect(pos_12, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber && OrderCloseTime() == 0) {
li_16 = f0_56(gs_1084, OrderTicket());
li_20 = f0_56(gs_1092, OrderTicket());
if (li_16 == a_ticket_0 && li_20 != EMPTY_VALUE && li_20 > li_4) {
ticket_8 = OrderTicket();
li_4 = li_20;
}
}
}
}
}
OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
return (ticket_8);
}
// E1D3C83CF0954E411ECB4A5C870BE017
double f0_149(double ad_0 = 0.0, int ai_8 = 0) {
double ld_12 = 0.0;
double ld_nsd_20 = 0.0;
ld_12 = ad_0 * MathPow(GridLotMultiplier, ai_8);
ld_12 = f0_95(ld_12);
return (ld_12);
}
// 930D3DF8ACDBA14442C51753EE796F0C
double f0_98(int a_ticket_0) {
double ld_ret_8;
int li_20;
int li_4 = f0_56(gs_grid_1076, a_ticket_0);
if (li_4 == EMPTY_VALUE) {
if (a_ticket_0 == OrderTicket() || OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) return (OrderProfit() + OrderSwap() + OrderCommission());
} else {
ld_ret_8 = 0;
for (int pos_16 = OrdersTotal() - 1; pos_16 >= 0; pos_16--) {
if (OrderSelect(pos_16, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber) {
li_20 = f0_56(gs_1084, OrderTicket());
if (li_20 == a_ticket_0 || OrderTicket() == a_ticket_0) ld_ret_8 += OrderProfit() + OrderSwap() + OrderCommission();
}
}
}
}
OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
return (ld_ret_8);
}
return (0.0);
}
// 6931510EEC1D544CDBB7B21C811B1A6A
double f0_71(int a_ticket_0) {
double order_open_price_4;
int li_12;
double order_open_price_16;
if (a_ticket_0 == OrderTicket() || OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
order_open_price_4 = OrderOpenPrice();
li_12 = f0_56(gs_grid_1076, a_ticket_0);
if (li_12 == EMPTY_VALUE) return (order_open_price_4);
order_open_price_16 = f0_31(gs_1100, a_ticket_0);
if (order_open_price_16 == EMPTY_VALUE) return (order_open_price_4);
order_open_price_4 = order_open_price_16;
return (order_open_price_4);
}
return (0.0);
}
// 54013F4126E159CFBF9EDBF5C54CB30B
double f0_58(int a_ticket_0) {
double ld_ret_8;
int li_20;
int li_4 = f0_56(gs_grid_1076, a_ticket_0);
if (li_4 == EMPTY_VALUE) {
if (a_ticket_0 == OrderTicket() || OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) return (OrderLots());
} else {
ld_ret_8 = 0;
for (int pos_16 = OrdersTotal() - 1; pos_16 >= 0; pos_16--) {
if (OrderSelect(pos_16, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber) {
li_20 = f0_56(gs_1084, OrderTicket());
if (li_20 == a_ticket_0 || OrderTicket() == a_ticket_0) ld_ret_8 += OrderLots();
}
}
}
}
OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
return (ld_ret_8);
}
return (0.0);
}
// A7A7BD63893A41868B6FD78A8AF34542
void f0_110() {
if (gi_1220 != 0 && gi_1216 != 0 && GetTickCount() - gi_1216 > gi_1220) f0_33();
}
// 3CFCFEF22F80E2BA0879716EC20B2242
void f0_41(string as_0, string as_8, int ai_16, int ai_20 = 0) {
string name_24;
string ls_32;
int li_40;
int li_44;
string str_concat_48;
if (ShowNotifications) {
li_40 = MathRound((gi_1192 - gi_1228) / 2);
li_44 = gi_1224;
str_concat_48 = StringConcatenate("DrW_", gs_1208);
name_24 = str_concat_48 + "0";
f0_81(name_24, li_40, li_44, "gggggggggg", 28, "Webdings", C'0x28,0x32,0x3C');
ObjectSet(name_24, OBJPROP_BACK, BackgroundOpacity);
ls_32 = str_concat_48 + "1";
name_24 = str_concat_48 + "2";
if (ai_16 == 1) {
f0_81(ls_32, li_40 + 5, li_44 - 5, CharToStr(252), 40, "Wingdings", Black);
f0_81(name_24, li_40 + 4, li_44 - 6, CharToStr(252), 40, "Wingdings", LimeGreen);
} else {
if (ai_16 == 2) {
f0_81(ls_32, li_40 + 5, li_44 - 5, CharToStr(251), 40, "Wingdings", Black);
f0_81(name_24, li_40 + 4, li_44 - 6, CharToStr(251), 40, "Wingdings", Red);
} else {
if (ai_16 == 3) {
f0_81(ls_32, li_40 + 16, li_44 - 2, CharToStr(54), 28, "Wingdings", Black);
f0_81(name_24, li_40 + 15, li_44 - 1, CharToStr(54), 28, "Wingdings", White);
}
}
}
name_24 = str_concat_48 + "3";
f0_81(name_24, li_40 + 51, li_44 + 4, as_0, 10, "Verdana", Black);
name_24 = str_concat_48 + "4";
f0_81(name_24, li_40 + 50, li_44 + 3, as_0, 10, "Verdana", Gold);
name_24 = str_concat_48 + "5";
f0_81(name_24, li_40 + 50, li_44 + 21, as_8, 8, "Verdana", Lavender);
gi_1220 = ai_20;
if (ai_20 != 0) gi_1216 = GetTickCount();
gi_1236 = TRUE;
WindowRedraw();
}
}
// EF55EB61069A84B053F95051A3724466
void f0_160(int a_ticket_0) {
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) f0_41("Order opened successfully!", StringConcatenate("Ticket: ", a_ticket_0, " Price: ", f0_108(OrderOpenPrice(), Digits), " Time: ", gi_992 + "ms"), 1, 2000);
}
// C60DA1C2D19499586BB98E9E78000D23
void f0_131(int a_ticket_0) {
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_HISTORY)) {
f0_41("Order closed successfully!", "", 1, 1000);
return;
}
f0_41("Order closed successfully!", StringConcatenate("Ticket: ", a_ticket_0, " Profit: ", f0_136(OrderProfit() + OrderSwap() + OrderCommission(), 2), " Time: ",
gi_992 + "ms"), 1, 2000);
}
// 02FEDB4208B169F2AEFE06EC40955FA4
void f0_1() {
f0_41("Order open error!", gs_984, 2, 2000);
}
// 09F811BB4E16AC1455F42F8FCE933EB7
void f0_5() {
f0_41("Please wait!", "Opening order...", 3);
}
// 5004AD33EC6D9A3D31C23DBBA6B929AC
void f0_54(int ai_0) {
f0_41("Please wait!", "Closing order " + f0_108(ai_0) + "...", 3);
}
// 356C0B5B48197BDAC60AC2CA3FDFD40D
void f0_33() {
string str_concat_0 = StringConcatenate("DrW_", gs_1208);
f0_38(str_concat_0);
gi_1216 = 0;
gi_1236 = FALSE;
WindowRedraw();
}
// 123E9B4FB777D3655C8723715E95FCBB
void f0_11() {
int li_0;
int li_4;
string str_concat_8;
string name_16;
string str_concat_24;
string ls_32;
if (ShowControlPanel) {
li_0 = gi_1268;
li_4 = gi_1272;
str_concat_8 = StringConcatenate("DrW_", gs_1260, "Bg_");
name_16 = str_concat_8 + "0";
ObjectDelete(name_16);
f0_81(name_16, li_0, li_4, "g", 120, "Webdings", gi_452);
ObjectSet(name_16, OBJPROP_BACK, BackgroundOpacity);
name_16 = str_concat_8 + "1";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 5, li_4 + 2, "gggggggg", 14, "Webdings", C'0x8B,0x66,0x10');
str_concat_24 = StringConcatenate("IceFX ", "TraderAgent", " ", f0_123());
name_16 = str_concat_8 + "2";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 17, li_4 + 7, str_concat_24, 10, "Tahoma", Black);
name_16 = str_concat_8 + "3";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 18, li_4 + 6, str_concat_24, 10, "Tahoma", Gold);
ls_32 = CharToStr(145);
name_16 = str_concat_8 + "5";
ObjectDelete(name_16);
f0_81(name_16, li_0 - 10, li_4 - 9, ls_32, 26, "Webdings", C'0x32,0x32,0x32');
name_16 = str_concat_8 + "6";
ObjectDelete(name_16);
f0_81(name_16, li_0 - 11, li_4 - 10, ls_32, 26, "Webdings", Gold);
f0_36();
f0_18(0, StringConcatenate("Buy ", f0_108(gd_748, 2)));
f0_18(1, StringConcatenate("Sell ", f0_108(gd_748, 2)));
}
}
// 625A81B248C77C68CA67798166642489
void f0_68(int ai_0) {
int li_4 = gi_1268;
int li_8 = gi_1272;
string str_concat_12 = StringConcatenate("DrW_", gs_1260, "Btn", ai_0, "_");
string name_20 = str_concat_12 + "BG";
ObjectDelete(name_20);
f0_81(name_20, li_4 + gia_1252[ai_0][1], li_8 + gia_1252[ai_0][2], "gg", 24, "Webdings", gia_1252[ai_0][5]);
name_20 = str_concat_12 + "Text1";
ObjectDelete(name_20);
f0_81(name_20, li_4 + gia_1252[ai_0][1] + gia_1252[ai_0][7], li_8 + gia_1252[ai_0][2] + gi_1248 + 1, gsa_1256[ai_0], g_fontsize_1240, "Tahoma", Black);
name_20 = str_concat_12 + "Text2";
f0_81(name_20, li_4 + gia_1252[ai_0][1] + gia_1252[ai_0][7] + 1, li_8 + gia_1252[ai_0][2] + gi_1248, gsa_1256[ai_0], g_fontsize_1240, "Tahoma", g_clr_1244);
name_20 = str_concat_12 + "Icon";
ObjectDelete(name_20);
f0_81(name_20, li_4 + gia_1252[ai_0][1] + 26, li_8 + gia_1252[ai_0][2], CharToStr(gia_1252[ai_0][6]), g_fontsize_1240, "Webdings", g_clr_1244);
}
// 3AA2F22582134EAB3445680B1089F691
void f0_36() {
int li_0 = 10;
int li_4 = 85;
int li_8 = 35;
int li_12 = 40;
gia_1252[0][0] = 0;
gia_1252[0][1] = li_0;
gia_1252[0][2] = li_8;
gia_1252[0][3] = 66;
gia_1252[0][4] = 34;
gia_1252[0][5] = 6240281;
gia_1252[0][6] = 53;
gsa_1256[0] = "Buy 0.00";
gia_1252[0][7] = 6;
gia_1252[1][0] = 1;
gia_1252[1][1] = li_4;
gia_1252[1][2] = li_8;
gia_1252[1][3] = 66;
gia_1252[1][4] = 34;
gia_1252[1][5] = 1644894;
gia_1252[1][6] = 54;
gsa_1256[1] = "Sell 0.00";
gia_1252[1][7] = 7;
li_8 += li_12;
gia_1252[2][0] = 2;
gia_1252[2][1] = li_0;
gia_1252[2][2] = li_8;
gia_1252[2][3] = 66;
gia_1252[2][4] = 34;
gia_1252[2][5] = 5922330;
gia_1252[2][6] = 114;
gsa_1256[2] = "Partial";
gia_1252[2][7] = 14;
gia_1252[3][0] = 3;
gia_1252[3][1] = li_4;
gia_1252[3][2] = li_8;
gia_1252[3][3] = 66;
gia_1252[3][4] = 34;
gia_1252[3][5] = 1662515;
gia_1252[3][6] = 114;
gsa_1256[3] = "Close all";
gia_1252[3][7] = 7;
li_8 += li_12;
gia_1252[5][0] = 5;
gia_1252[5][1] = li_0;
gia_1252[5][2] = li_8;
gia_1252[5][3] = 66;
gia_1252[5][4] = 34;
gia_1252[5][5] = 1662302;
gia_1252[5][6] = 97;
gsa_1256[5] = "Breakeven";
gia_1252[5][7] = 1;
gia_1252[4][0] = 4;
gia_1252[4][1] = li_4;
gia_1252[4][2] = li_8;
gia_1252[4][3] = 66;
gia_1252[4][4] = 34;
gia_1252[4][5] = 5970526;
gia_1252[4][6] = 113;
gsa_1256[4] = "Reverse";
gia_1252[4][7] = 8;
li_8 += li_12;
for (int count_16 = 0; count_16 < ArrayRange(gia_1252, 0); count_16++) f0_68(count_16);
}
// 1BEDD10B036445FC9065C868400C94C8
void f0_18(int ai_0, string a_text_4) {
gsa_1256[ai_0] = a_text_4;
string str_concat_12 = StringConcatenate("DrW_", gs_1260, "Btn", ai_0, "_", "Text1");
if (ObjectFind(str_concat_12) >= 0 && ObjectDescription(str_concat_12) != a_text_4) ObjectSetText(str_concat_12, a_text_4, g_fontsize_1240, "Tahoma", Black);
str_concat_12 = StringConcatenate("DrW_", gs_1260, "Btn", ai_0, "_", "Text2");
if (ObjectFind(str_concat_12) >= 0 && ObjectDescription(str_concat_12) != a_text_4) ObjectSetText(str_concat_12, a_text_4, g_fontsize_1240, "Tahoma", g_clr_1244);
}
// DC063D5188C6387A77D4A4B8AF2DF3B1
int f0_144() {
string str_concat_0 = StringConcatenate("DrW_", gs_1260, "Bg_0");
if (ShowControlPanel && ObjectFind(str_concat_0) == -1) f0_11();
return (0);
}
// F85E6B1BCD21006936A5FC7650501B5A
int f0_170(int ai_0, int ai_4) {
if (!ShowControlPanel) return (0);
for (int count_8 = 0; count_8 < ArrayRange(gia_1252, 0); count_8++) {
if (f0_85(ai_0, ai_4, count_8)) {
f0_86("Pressed button: " + count_8);
if (count_8 == 0) {
if (gd_748 > 0.0) f0_114(0, gd_748);
else f0_112("Invalid LOT size: " + f0_108(gd_748, 2));
} else {
if (count_8 == 1) {
if (gd_748 > 0.0) f0_114(1, gd_748);
else f0_112("Invalid LOT size: " + f0_108(gd_748, 2));
} else {
if (count_8 == 2) f0_76();
else {
if (count_8 == 3) f0_87();
else {
if (count_8 == 5) f0_132();
else
if (count_8 == 4) f0_65();
}
}
}
}
return (1);
}
}
return (0);
}
// 83C11C0D6BB6C72129E782F6802E19EF
int f0_85(int ai_0, int ai_4, int ai_8) {
return (gi_1268 + gia_1252[ai_8][1] < ai_0 && gi_1268 + gia_1252[ai_8][1] + gia_1252[ai_8][3] > ai_0 && gi_1272 + gia_1252[ai_8][2] < ai_4 && gi_1272 + gia_1252[ai_8][2] +
gia_1252[ai_8][4] > ai_4);
}
// B846A4EF99F35CE236E2A91B4E8E97B2
void f0_121() {
int li_0;
int li_4;
string str_concat_8;
string name_16;
string ls_24;
string ls_32;
if (ShowOrderListPanel) {
li_0 = gi_1308;
li_4 = gi_1312;
str_concat_8 = StringConcatenate("DrW_", gs_1284);
name_16 = str_concat_8 + "0";
ObjectDelete(name_16);
f0_81(name_16, li_0, li_4, "g", 120, "Webdings", gi_452);
ObjectSet(name_16, OBJPROP_BACK, BackgroundOpacity);
name_16 = str_concat_8 + "1";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 5, li_4 + 2, "gggggggg", 14, "Webdings", C'0x14,0x14,0x14');
ls_24 = "Order list";
name_16 = str_concat_8 + "2";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 55, li_4 + 7, ls_24, 10, "Tahoma", Black);
name_16 = str_concat_8 + "3";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 54, li_4 + 6, ls_24, 10, "Tahoma", Gold);
ls_32 = CharToStr(157);
name_16 = str_concat_8 + "5";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 9, li_4 + 6, ls_32, 12, "Webdings", C'0x32,0x32,0x32');
name_16 = str_concat_8 + "6";
ObjectDelete(name_16);
f0_81(name_16, li_0 + 8, li_4 + 5, ls_32, 12, "Webdings", Gold);
gi_1324 = TRUE;
}
}
// 19BC271349716E65C7043520C1B84644
void f0_16(int ai_0) {
int color_24;
string ls_28;
string ls_36;
int li_44;
int li_48;
double ld_52;
int li_4 = gi_1308;
int li_8 = gi_1312 + gi_1300;
string str_concat_12 = StringConcatenate("DrW_", gs_1284, "Row", ai_0);
int ticket_20 = gia_1292[ai_0];
if (OrderSelect(ticket_20, SELECT_BY_TICKET, MODE_TRADES)) {
color_24 = PaleTurquoise;
if (OrderType() == OP_SELL) color_24 = LightPink;
ls_36 = str_concat_12 + "0_CloseIcon";
f0_81(ls_36, li_4 + 3, li_8 + ai_0 * gi_1304 - 2, CharToStr(114), 10, "Webdings", OrangeRed);
ls_28 = f0_97(ticket_20, 4);
li_44 = f0_56(gs_grid_1076, ticket_20);
if (li_44 != EMPTY_VALUE) {
li_48 = f0_25(ticket_20);
if (li_48 > 1) {
ls_28 = f0_97(ticket_20, 3) + " *" + f0_108(li_48);
color_24 = Orange;
}
}
ls_36 = str_concat_12 + "2_Ticket";
f0_81(ls_36, li_4 + 20, li_8 + ai_0 * gi_1304, ls_28, 8, "Tahoma", color_24);
ls_28 = f0_108(f0_58(ticket_20), 2);
ls_36 = str_concat_12 + "3_LOT";
f0_81(ls_36, li_4 + 68, li_8 + ai_0 * gi_1304, ls_28, 8, "Tahoma", color_24);
ld_52 = f0_98(ticket_20);
if (ld_52 > 0.0) color_24 = TakeProfitColor;
else
if (ld_52 < 0.0) color_24 = StopLossColor;
ls_28 = f0_136(ld_52, 2);
ls_36 = str_concat_12 + "4_Profit";
f0_81(ls_36, li_4 + 108, li_8 + ai_0 * gi_1304, ls_28, 8, "Tahoma", color_24);
}
}
// 7E36B3A88BDDE30BC968B675946154B7
void f0_83() {
int li_4;
int ticket_8;
if (f0_117(OP_BUY, MagicNumber) + f0_117(OP_SELL, MagicNumber) > 0 && (!gi_1324) && ShowOrderListPanel) f0_121();
else
if (f0_117(OP_BUY, MagicNumber) + f0_117(OP_SELL, MagicNumber) == 0 && gi_1324) f0_37();
if (ShowOrderListPanel && gi_1324) {
for (int pos_0 = OrdersTotal() - 1; pos_0 >= 0; pos_0--) {
if (OrderSelect(pos_0, SELECT_BY_POS, MODE_TRADES)) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL && OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
li_4 = f0_15(OrderTicket());
if (li_4 != -1) {
f0_16(li_4);
continue;
}
if (gi_1296 < ArraySize(gia_1292) && f0_56(gs_1084, OrderTicket()) == EMPTY_VALUE) {
li_4 = gi_1296;
gia_1292[li_4] = OrderTicket();
f0_16(li_4);
gi_1296++;
}
}
}
}
for (li_4 = MathMin(gi_1296, ArraySize(gia_1292)) - 1.0; li_4 >= 0; li_4--) {
ticket_8 = gia_1292[li_4];
if (ticket_8 != -1) {
if (!OrderSelect(ticket_8, SELECT_BY_TICKET, MODE_TRADES) || OrderCloseTime() > 0) {
for (pos_0 = li_4; pos_0 < ArraySize(gia_1292) - 1; pos_0++) gia_1292[pos_0] = gia_1292[pos_0 + 1];
gi_1296--;
f0_106(gi_1296);
}
}
}
}
g_dttm_1328 = TimeCurrent();
}
// 18D5EFD0244A5B8BFDFCEDC688973A80
int f0_15(int ai_0) {
for (int index_4 = 0; index_4 < ArraySize(gia_1292); index_4++)
if (gia_1292[index_4] == ai_0) return (index_4);
return (-1);
}
// A04052CEA835C4DFD52423BA21668A86
void f0_106(int ai_0) {
string ls_nsd_4;
string str_concat_12 = StringConcatenate("DrW_", gs_1284, "Row", ai_0);
f0_38(str_concat_12);
gia_1292[ai_0] = -1;
WindowRedraw();
}
// 3AF94171AFD935A46421C3FDEBEF5D6E
void f0_37(int ai_0 = FALSE) {
if (!ai_0 && !gi_1324) return;
string str_concat_4 = StringConcatenate("DrW_", gs_1284);
f0_38(str_concat_4);
WindowRedraw();
gi_1324 = FALSE;
}
// BFB9BD0BE88013789FD0C14B17156E63
int f0_124(int ai_0, int ai_4) {
int li_12;
if (!gi_1324) return (0);
for (int index_8 = 0; index_8 < ArraySize(gia_1292); index_8++) {
if (f0_107(ai_0, ai_4, index_8)) {
li_12 = gia_1292[index_8];
if (f0_162(ai_0, ai_4, gi_1308 + 8, ai_4, gi_1308 + 16, ai_4)) f0_17(li_12);
else {
if (f0_162(ai_0, ai_4, gi_1308 + 23, ai_4, gi_1308 + 29, ai_4)) f0_132(li_12);
else f0_126(li_12);
}
return (1);
}
}
return (0);
}
// A192C86D2A9C7F68649E4E842C86CBE0
int f0_107(int ai_0, int ai_4, int ai_8) {
int li_12 = gi_1312 + gi_1300 + 3;
return (gi_1308 <= ai_0 && gi_1308 + gi_1316 >= ai_0 && li_12 + ai_8 * gi_1304 <= ai_4 && li_12 + (ai_8 + 1) * gi_1304 > ai_4);
}
// 92A4B9699CF9C843B9D8F9832BB02B79
string f0_97(int ai_0, int ai_4) {
string ls_ret_8 = f0_108(ai_0, 0);
if (StringLen(ls_ret_8) > ai_4) ls_ret_8 = ".." + StringSubstr(ls_ret_8, StringLen(ls_ret_8) - ai_4, ai_4);
return (ls_ret_8);
}
// C123310E38F564BFF896BAD76F1D4B1B
void f0_126(int a_ticket_0 = -1) {
string str_concat_12;
string name_20;
int count_28;
int li_32;
int li_36;
int li_40;
int li_44;
int color_48;
int cmd_52;
double ld_56;
double ld_64;
string str_concat_72;
int li_80;
int li_84;
int color_88;
double ld_92;
double ld_100;
string ls_108;
double ld_116;
double ld_124;
double ld_132;
string ls_140;
string str_concat_148;
double ld_156;
double ld_164;
double ld_172;
string ls_180;
double ld_188;
int li_196;
int li_200;
if (a_ticket_0 == -1) a_ticket_0 = g_ticket_820;
else g_ticket_820 = a_ticket_0;
if (PropertiesPanelPos == 0) {
gi_1344 = f0_4(OrderListPanelX < 0, gi_1308 - gi_1352 - 10, gi_1308 + gi_1316 + 10);
gi_1348 = gi_1312;
} else {
gi_1344 = f0_4(OrderListPanelX < 0, gi_1192 - gi_1352 - 60, OrderListPanelX);
gi_1348 = gi_1312 + gi_1320;
}
int li_4 = gi_1344;
int li_8 = gi_1348;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
if (OrderCloseTime() != 0) f0_19();
else {
str_concat_12 = StringConcatenate("DrW_", gs_1332);
name_20 = str_concat_12 + ".BG1";
f0_81(name_20, li_4, li_8, "gg", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
gi_1356 = 160;
if (gi_392) {
name_20 = str_concat_12 + ".BG2";
f0_81(name_20, li_4, li_8 + 20, "gg", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
gi_1356 = 180;
}
name_20 = str_concat_12 + "01";
f0_81(name_20, li_4 + 8, li_8 + 2, "gggggggggggggggg", 14, "Webdings", C'0x14,0x14,0x14');
name_20 = str_concat_12 + "03";
f0_81(name_20, li_4 + 32, li_8 + 6, "Order properties: " + f0_108(a_ticket_0), 10, "Tahoma", Gold);
name_20 = str_concat_12 + "06";
f0_81(name_20, li_4 + 10, li_8 + 5, CharToStr(78), 12, "Webdings", Gold);
name_20 = str_concat_12 + "07";
f0_81(name_20, li_4 + gi_1352 - 25, li_8 + 5, CharToStr(114), 12, "Webdings", Gold);
count_28 = 0;
li_32 = 13;
li_36 = li_4 + 8;
li_40 = li_4 + 80;
li_44 = 12632256;
color_48 = g_clr_1244;
cmd_52 = OrderType();
ld_56 = f0_71(a_ticket_0);
ld_64 = f0_58(a_ticket_0);
str_concat_72 = "";
li_80 = f0_56(gs_grid_1076, a_ticket_0);
if (li_80 != EMPTY_VALUE) {
li_84 = f0_25(a_ticket_0);
if (li_84 > 1) str_concat_72 = StringConcatenate(" (", li_84, " orders)");
}
OrderSelect(a_ticket_0, SELECT_BY_TICKET);
name_20 = str_concat_12 + "10";
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "Type: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32, StringConcatenate(f0_169(OrderType()), " ", f0_108(ld_64, 2), " lots ", str_concat_72), 8, "Tahoma",
color_48);
count_28++;
name_20 = str_concat_12 + "12";
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "Open price: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32, f0_108(ld_56, Digits), 8, "Tahoma", color_48);
count_28++;
name_20 = str_concat_12 + "13";
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "Open time: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32, f0_10(TimeCurrent() - OrderOpenTime()), 8, "Tahoma", color_48);
count_28++;
count_28++;
color_88 = color_48;
name_20 = str_concat_12 + "14";
ld_92 = f0_139(f0_39(cmd_52 == OP_BUY, Bid - ld_56, ld_56 - Ask));
ld_100 = f0_98(a_ticket_0);
ls_108 = f0_136(ld_100, 2);
if (ld_100 > 0.0) color_88 = TakeProfitColor;
else
if (ld_100 < 0.0) color_88 = StopLossColor;
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32 - 6, "Profit: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32 - 6, StringConcatenate(ls_108, " (", f0_108(ld_92, 1), " pips)"), 10, "Tahoma", color_88);
count_28++;
name_20 = str_concat_12 + "15";
ld_116 = f0_31(gs_1020, a_ticket_0);
if (ld_116 != EMPTY_VALUE && ld_116 != 0.0) {
ld_124 = f0_139(MathAbs(ld_56 - ld_116));
ld_132 = f0_153(ld_124, ld_64);
ls_140 = f0_136(ld_132, 2);
str_concat_148 = StringConcatenate(ld_124, " pips (", ls_140, ")");
} else str_concat_148 = "Not set";
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "TakeProfit: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32, str_concat_148, 8, "Tahoma", color_48);
count_28++;
name_20 = str_concat_12 + "16";
ld_156 = f0_31(gs_1012, a_ticket_0);
if (ld_156 != EMPTY_VALUE && ld_156 != 0.0) {
ld_164 = f0_139(f0_39(cmd_52 == OP_BUY, ld_156 - ld_56, ld_56 - ld_156));
ld_172 = f0_153(ld_164, ld_64);
ls_180 = f0_136(ld_172, 2);
str_concat_148 = StringConcatenate(ld_164, " pips (", ls_180, ")");
} else str_concat_148 = "Not set";
if (ld_172 > 0.0) color_88 = TakeProfitColor;
else
if (ld_172 < 0.0) color_88 = StopLossColor;
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "StopLoss: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32, str_concat_148, 8, "Tahoma", color_88);
count_28++;
count_28++;
color_88 = color_48;
name_20 = str_concat_12 + "17";
str_concat_148 = "--";
if (ld_164 < 0.0 && ld_124 > 0.0) {
ld_188 = MathAbs(ld_124 / ld_164);
if (ld_188 >= 2.0) color_88 = TakeProfitColor;
else
if (ld_188 < 1.0) color_88 = StopLossColor;
if (ld_124 != 0.0 && ld_164 != 0.0) str_concat_148 = f0_108(ld_188, 1);
}
f0_81(name_20, li_36, li_8 + 24 + count_28 * li_32, "R/R: ", 8, "Tahoma", li_44);
f0_81(name_20 + "_value", li_40, li_8 + 24 + count_28 * li_32 - 4, str_concat_148, 16, "Impact", color_88);
count_28++;
str_concat_12 = StringConcatenate("DrW_", gs_1332, "Btn");
li_196 = li_4 + gi_1360;
li_200 = li_8 + gi_1364;
f0_79(str_concat_12 + "Break", li_196, li_200, 15, "Breakeven", 1662302, g_clr_1244);
li_200 += gi_1376;
f0_79(str_concat_12 + "Partial", li_196, li_200, 10, "Partial close", 5922330, g_clr_1244);
li_200 += gi_1376;
f0_79(str_concat_12 + "Reverse", li_196, li_200, 20, "Reverse", 5970526, g_clr_1244);
li_200 += gi_1376;
f0_79(str_concat_12 + "Close", li_196, li_200, 28, "Close", 1662515, g_clr_1244);
li_200 += gi_1376;
if (gi_432) f0_79(str_concat_12 + "Hedge", li_196, li_200, 28, "Hedge", 91798, g_clr_1244);
li_200 += gi_1376;
if (gi_392) {
if (li_80 == 1) f0_79(str_concat_12 + "Grid", li_196, li_200, 20, "Grid On", 128, g_clr_1244);
else f0_79(str_concat_12 + "Grid", li_196, li_200, 18, "Grid Off", 60, g_clr_1244);
li_200 += gi_1376;
}
gi_1340 = TRUE;
}
}
}
// 7A1A81E6D4F7763DA5275206F8CCEB6D
void f0_79(string as_0, int ai_8, int ai_12, int ai_16, string as_20, int ai_28, int ai_32) {
int li_36 = 10;
int li_40 = 2;
string ls_44 = as_0 + "BG";
f0_81(ls_44, ai_8, ai_12, "ggggg", 13, "Webdings", ai_28);
ls_44 = as_0 + "Txt1";
f0_81(ls_44, ai_8 + ai_16 + 1, ai_12 + li_40 + 1, as_20, li_36, "Tahoma", Black);
ls_44 = as_0 + "Txt2";
f0_81(ls_44, ai_8 + ai_16, ai_12 + li_40, as_20, li_36, "Tahoma", ai_32);
}
// EB73A07A134C212369DCC3747A0780D5
int f0_156(int ai_0, int ai_4) {
if (!gi_1340) return (0);
if (f0_162(ai_0, ai_4, gi_1344 + gi_1352 - 20, gi_1348 + 8, gi_1344 + gi_1352, gi_1348 + 8 + 16)) {
f0_19();
return (1);
}
if (f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372)) {
f0_132(g_ticket_820);
return (1);
}
if (f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364 + gi_1376, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372 + gi_1376)) {
f0_76(g_ticket_820);
return (1);
}
if (f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364 + gi_1376 * 2, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372 + gi_1376 * 2)) {
f0_65(g_ticket_820);
return (1);
}
if (f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364 + 3 * gi_1376, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372 + 3 * gi_1376)) {
f0_17(g_ticket_820);
f0_19();
WindowRedraw();
return (1);
}
if (f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364 + gi_1376 * 4, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372 + gi_1376 * 4)) {
if (!(gi_432)) return (0);
f0_46(g_ticket_820);
f0_19();
WindowRedraw();
return (1);
}
if (gi_392 && f0_162(ai_0, ai_4, gi_1344 + gi_1360, gi_1348 + gi_1364 + 5 * gi_1376, gi_1344 + gi_1360 + gi_1368, gi_1348 + gi_1364 + gi_1372 + 5 * gi_1376)) {
f0_134(g_ticket_820);
f0_126();
WindowRedraw();
return (1);
}
return (0);
}
// 1CF67D674039C9BB64BDCB42D6706A26
void f0_19() {
string str_concat_0;
if (gi_1340) {
str_concat_0 = StringConcatenate("DrW_", gs_1332);
f0_38(str_concat_0);
gi_1340 = FALSE;
}
}
// ACAE909BAFD5095E6236CD9403AAE758
void f0_115() {
int li_0;
int li_4;
int li_8;
string str_concat_12;
string name_20;
string ls_28;
string ls_36;
int li_44;
int color_48;
int count_52;
int color_56;
double ld_60;
int li_68;
int count_72;
double ld_76;
double ld_84;
double ld_92;
double ld_100;
string ls_112;
double ld_120;
if (ShowAccountPanel) {
li_0 = gi_1396;
li_4 = gi_1400;
li_8 = gi_1396 + 80;
str_concat_12 = StringConcatenate("DrW_", gs_1380);
name_20 = str_concat_12 + "0";
f0_81(name_20, li_0, li_4, "g", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
name_20 = str_concat_12 + "00";
f0_81(name_20, li_0, li_4 + 16, "g", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
name_20 = str_concat_12 + "1";
f0_81(name_20, li_0 + 5, li_4 + 2, "gggggggg", 14, "Webdings", C'0x14,0x14,0x14');
ls_28 = "Account info";
name_20 = str_concat_12 + "2";
f0_81(name_20, li_0 + 45, li_4 + 7, ls_28, 10, "Tahoma", Black);
name_20 = str_concat_12 + "3";
f0_81(name_20, li_0 + 44, li_4 + 6, ls_28, 10, "Tahoma", Gold);
ls_36 = CharToStr(165);
name_20 = str_concat_12 + "5";
f0_81(name_20, li_0 + 9, li_4 + 6, ls_36, 10, "Webdings", C'0x32,0x32,0x32');
name_20 = str_concat_12 + "6";
f0_81(name_20, li_0 + 8, li_4 + 5, ls_36, 10, "Webdings", Gold);
li_44 = 12632256;
color_48 = g_clr_1244;
count_52 = 0;
f0_111(count_52, "Balance:", li_44);
f0_159(count_52, li_8, f0_136(AccountBalance()), color_48);
count_52++;
color_56 = color_48;
if (AccountEquity() < AccountBalance()) color_56 = LightPink;
else
if (AccountEquity() > AccountBalance()) color_56 = PaleTurquoise;
f0_111(count_52, "Equity:", li_44);
f0_159(count_52, li_8, f0_136(AccountEquity()), color_56);
count_52++;
f0_111(count_52, "Free margin:", li_44);
f0_159(count_52, li_8, f0_108(AccountFreeMargin(), 2), color_48);
count_52++;
ld_60 = f0_67(0, 1);
color_56 = color_48;
if (ld_60 > 20.0) color_56 = Red;
f0_111(count_52, "Drawdown:", li_44);
f0_159(count_52, li_8, f0_108(ld_60, 2) + "%", color_56);
count_52++;
f0_111(count_52, "-------------------------------------", li_44);
count_52++;
count_72 = 0;
ld_84 = 0;
ld_100 = 0;
for (int pos_108 = OrdersTotal() - 1; pos_108 >= 0; pos_108--) {
if (OrderSelect(pos_108, SELECT_BY_POS, MODE_TRADES)) {
if (OrderType() == OP_BUY && OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
li_68++;
ld_92 += OrderProfit() + OrderSwap() + OrderCommission();
ld_76 += OrderLots();
continue;
}
if (OrderType() == OP_SELL && OrderSymbol() == Symbol()) {
count_72++;
ld_100 += OrderProfit() + OrderSwap() + OrderCommission();
ld_84 += OrderLots();
}
}
}
color_56 = color_48;
if (ld_92 < 0.0) color_56 = Red;
else
if (ld_92 > 0.0) color_56 = Lime;
f0_111(count_52, "Buy:", 15658671);
f0_159(count_52, gi_1396 + 40, StringConcatenate(li_68, " | ", f0_108(ld_76, 2), " | ", f0_136(ld_92, 2)), color_56);
count_52++;
color_56 = color_48;
if (ld_100 < 0.0) color_56 = Red;
else
if (ld_100 > 0.0) color_56 = Lime;
f0_111(count_52, "Sell:", 12695295);
f0_159(count_52, gi_1396 + 40, StringConcatenate(count_72, " | ", f0_108(ld_84, 2), " | ", f0_136(ld_100, 2)), color_56);
count_52++;
f0_111(count_52, "-------------------------------------", li_44);
count_52++;
color_56 = color_48;
if (ld_92 + ld_100 < 0.0) color_56 = Red;
else
if (ld_92 + ld_100 > 0.0) color_56 = Lime;
f0_111(count_52, "Sum:", 55295);
f0_159(count_52, gi_1396 + 40, StringConcatenate(li_68 + count_72, " | ", f0_108(ld_76 + ld_84, 2), " | ", f0_136(ld_92 + ld_100, 2)), color_56);
count_52++;
f0_111(count_52, "Avg:", 55295);
ls_112 = "-----------------";
color_56 = Gray;
if (li_68 + count_72 > 0) {
ld_120 = f0_28();
if (ld_120 != EMPTY_VALUE) {
ls_112 = f0_108(ld_120, Digits);
color_56 = color_48;
if (li_68 + count_72 > 1 && AveragePriceLineColor != CLR_NONE) f0_0(gs_avgprice_1108, ld_120, -1, AveragePriceLineColor, STYLE_DOT);
}
} else
if (AveragePriceLineColor != CLR_NONE) f0_0(gs_avgprice_1108, 0, -1, AveragePriceLineColor, STYLE_DOT);
f0_159(count_52, gi_1396 + 40, ls_112, color_56);
count_52++;
gi_nsd_1412 = TRUE;
}
}
// 2D16C2E5D3DD33F6C2ECBE53BC848288
double f0_28() {
double ld_0;
double ld_8 = 0;
for (int pos_16 = OrdersTotal() - 1; pos_16 >= 0; pos_16--) {
if (OrderSelect(pos_16, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
ld_0 += OrderOpenPrice() * OrderLots();
ld_8 += OrderLots();
}
}
}
}
if (ld_8 > 0.0) return (f0_100(ld_0 / ld_8));
return (EMPTY_VALUE);
}
// A7C093DDD4EBAF0E80FC957EBF7C53AB
void f0_111(int ai_0, string as_4, int ai_12) {
string str_concat_16 = StringConcatenate("DrW_", gs_1380, "C", ai_0);
f0_81(str_concat_16, gi_1396 + 6, gi_1388 + gi_1400 + ai_0 * gi_1392, as_4, 8, "Tahoma", ai_12);
}
// EEC6F43503E25962F346B950A31DA94D
void f0_159(int ai_0, int ai_4, string as_8, int ai_16) {
string str_concat_20 = StringConcatenate("DrW_", gs_1380, "V", ai_0);
f0_81(str_concat_20, ai_4, gi_1388 + gi_1400 + ai_0 * gi_1392, as_8, 8, "Tahoma", ai_16);
}
// 5D2E36B397609AC857C0AF71C6613194
void f0_61() {
int li_0;
int li_4;
string str_concat_8;
string name_16;
string ls_24;
string ls_32;
int li_nsd_40;
int li_nsd_44;
int count_48;
int str2time_52;
int str2time_56;
int datetime_60;
int li_64;
if (ShowProfitPanel) {
li_0 = gi_1432;
li_4 = gi_1436;
str_concat_8 = StringConcatenate("DrW_", gs_1416);
name_16 = str_concat_8 + "0";
f0_81(name_16, li_0, li_4, "gg", 75, "Webdings", gi_452);
ObjectSet(name_16, OBJPROP_BACK, BackgroundOpacity);
name_16 = str_concat_8 + "1";
f0_81(name_16, li_0 + 5, li_4 + 2, "gggggggggg", 14, "Webdings", C'0x14,0x14,0x14');
ls_24 = "Profit info";
name_16 = str_concat_8 + "2";
f0_81(name_16, li_0 + 75, li_4 + 7, ls_24, 10, "Tahoma", Black);
name_16 = str_concat_8 + "3";
f0_81(name_16, li_0 + 74, li_4 + 6, ls_24, 10, "Tahoma", Gold);
ls_32 = CharToStr(164);
name_16 = str_concat_8 + "5";
f0_81(name_16, li_0 + 9, li_4 + 6, ls_32, 10, "Webdings", C'0x32,0x32,0x32');
name_16 = str_concat_8 + "6";
f0_81(name_16, li_0 + 8, li_4 + 5, ls_32, 10, "Webdings", Gold);
li_nsd_40 = 12632256;
li_nsd_44 = g_clr_1244;
count_48 = 0;
datetime_60 = TimeCurrent();
str2time_56 = StrToTime(TimeToStr(datetime_60, TIME_DATE));
f0_59(str2time_56, datetime_60, count_48, "Today");
count_48++;
str2time_52 = str2time_56;
li_64 = f0_152(str2time_52 - gi_1456);
f0_59(li_64, str2time_52, count_48, "Yesterday");
count_48++;
str2time_52 = f0_93();
f0_59(str2time_52, datetime_60, count_48, "Week");
count_48++;
str2time_52 = StrToTime(Year() + "." + Month() + ".01");
f0_59(str2time_52, datetime_60, count_48, "Month");
count_48++;
str2time_52 = StrToTime(Year() + ".01.01");
f0_59(str2time_52, datetime_60, count_48, "Year");
count_48++;
gi_nsd_1448 = TRUE;
}
}
// 55B8E7F64ACEAFC2E33BA1080F79A8B9
void f0_59(int ai_0, int ai_4, int ai_8, string a_time2str_12 = "") {
double ld_20;
double ld_28;
if (a_time2str_12 == "") a_time2str_12 = TimeToStr(ai_0, TIME_DATE);
double ld_nsd_36 = 0.0;
int li_52 = 10;
int li_56 = 80;
int li_60 = 140;
f0_82(ai_0, ai_4, ld_20, ld_28);
double ld_64 = 0;
if (AccountBalance() > 0.0) ld_64 = 100.0 * (ld_28 / AccountBalance());
string ls_44 = StringConcatenate(a_time2str_12, ": ");
f0_171(ai_8, li_52, ls_44, 12632256);
ls_44 = f0_136(ld_28, 2);
f0_171(ai_8, li_56, ls_44, f0_14(ld_28));
ls_44 = f0_108(ld_20, 1) + " pips";
f0_171(ai_8, li_60, ls_44, f0_14(ld_20));
}
// 18395C9D5496CE3BB9D2FCDDB85B6140
int f0_14(double ad_0) {
int li_ret_8 = 12632256;
if (ad_0 > 0.0) li_ret_8 = 65280;
if (ad_0 < 0.0) li_ret_8 = 255;
return (li_ret_8);
}
// FAA80C7FAF626ACD4F482B5EEC0C0420
void f0_171(int ai_0, int ai_4, string as_8, int ai_16) {
string str_concat_20 = StringConcatenate("DrW_", gs_1416, "V", ai_0, ai_4);
f0_81(str_concat_20, gi_1432 + ai_4, gi_1424 + gi_1436 + ai_0 * gi_1428, as_8, 8, "Tahoma", ai_16);
}
// 7E0062AA8C59AA9E68163945475F7764
int f0_82(int ai_0, int ai_4, double &ad_8, double &ad_16) {
int hist_total_28 = OrdersHistoryTotal();
ad_8 = 0;
ad_16 = 0;
for (int pos_24 = 0; pos_24 < hist_total_28; pos_24++) {
if (OrderSelect(pos_24, SELECT_BY_POS, MODE_HISTORY)) {
if (gi_1452 || OrderSymbol() == Symbol()) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
if (ai_4 >= OrderCloseTime() && OrderCloseTime() >= ai_0) {
ad_16 += OrderProfit() + OrderCommission() + OrderSwap();
if (OrderType() == OP_BUY) ad_8 += f0_139(OrderClosePrice() - OrderOpenPrice());
if (OrderType() == OP_SELL) ad_8 += f0_139(OrderOpenPrice() - OrderClosePrice());
}
}
}
}
}
return (1);
}
// E3D77C5FEF5B55479437EF591440DE35
int f0_152(int ai_0) {
for (int li_ret_4 = ai_0; TimeDayOfWeek(li_ret_4) < 1 || TimeDayOfWeek(li_ret_4) > 5; li_ret_4 -= gi_1456) {
}
return (li_ret_4);
}
// 8A729F392CA03BCF676C04744BE4AB2E
int f0_93(int ai_0 = 0) {
for (int li_ret_4 = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)); TimeDayOfWeek(li_ret_4) != 1; li_ret_4 -= gi_1456) {
}
li_ret_4 += 7 * ai_0 * gi_1456;
return (li_ret_4);
}
// D87000F73B355D66104C50794879C500
void f0_142(bool ai_0) {
int li_4;
int li_8;
string str_concat_12;
string name_20;
string ls_28;
string ls_36;
int li_44;
int digits_48;
double spread_52;
string ls_60;
string ls_68;
string ls_76;
string ls_84;
string ls_96;
int li_104;
int li_108;
int li_112;
int li_116;
int li_120;
double ihigh_124;
double ilow_132;
double iopen_140;
double iclose_148;
double ld_156;
double ld_164;
double ld_172;
double ld_180;
int li_188;
if (ShowDashboard) {
li_4 = gi_1468;
li_8 = gi_1472;
str_concat_12 = StringConcatenate("DrW_", gs_1460);
if (ai_0 || (!gi_1484)) {
name_20 = str_concat_12 + "0";
f0_81(name_20, li_4, li_8, "g", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
name_20 = str_concat_12 + "00";
f0_81(name_20, li_4, li_8 + 28, "g", 120, "Webdings", gi_452);
ObjectSet(name_20, OBJPROP_BACK, BackgroundOpacity);
name_20 = str_concat_12 + "1";
f0_81(name_20, li_4 + 5, li_8 + 2, "gggggggg", 14, "Webdings", C'0x14,0x14,0x14');
ls_28 = "Dashboard";
name_20 = str_concat_12 + "2";
f0_81(name_20, li_4 + 55, li_8 + 7, ls_28, 10, "Tahoma", Black);
name_20 = str_concat_12 + "3";
f0_81(name_20, li_4 + 54, li_8 + 6, ls_28, 10, "Tahoma", Gold);
ls_36 = CharToStr(105);
name_20 = str_concat_12 + "5";
f0_81(name_20, li_4 + 9, li_8 + 6, ls_36, 10, "Webdings", C'0x32,0x32,0x32');
name_20 = str_concat_12 + "6";
f0_81(name_20, li_4 + 8, li_8 + 5, ls_36, 10, "Webdings", Gold);
}
li_44 = li_8 + 25;
digits_48 = Digits;
spread_52 = MarketInfo(Symbol(), MODE_SPREAD);
ls_60 = f0_108(Bid, digits_48);
ls_68 = f0_108(Ask, digits_48);
ls_76 = f0_108(spread_52);
ls_84 = "";
for (int li_92 = 0; li_92 < StringLen(ls_60); li_92++) {
if (StringGetChar(ls_60, li_92) != StringGetChar(ls_68, li_92)) break;
ls_84 = ls_84 + StringSubstr(ls_60, li_92, 1);
}
ls_96 = Symbol();
ls_28 = StringSubstr(ls_96, 0, 6);
f0_81(str_concat_12 + "07", li_4 + 55, li_44 + 1, ls_28, 10, "Arial Black", Black);
f0_81(str_concat_12 + "08", li_4 + 54, li_44, ls_28, 10, "Arial Black", DarkGray);
li_44 += 15;
li_104 = 5 * (7 - StringLen(ls_84)) + 28;
ls_28 = ls_84;
f0_81(str_concat_12 + "14", li_4 + li_104 + 2, li_44 + 2, ls_28, 20, "Verdana", Black);
f0_81(str_concat_12 + "15", li_4 + li_104, li_44, ls_28, 20, "Verdana", White);
li_44++;
li_108 = li_104 + 16.5 * StringLen(ls_84);
ls_28 = StringSubstr(ls_68, StringLen(ls_84));
f0_81(str_concat_12 + "16", li_4 + li_108 + 1, li_44 + 1, ls_28, 10, "Verdana", Black);
f0_81(str_concat_12 + "17", li_4 + li_108, li_44, ls_28, 10, "Verdana", White);
li_44 += 13;
ls_28 = StringSubstr(ls_60, StringLen(ls_84));
f0_81(str_concat_12 + "18", li_4 + li_108 + 1, li_44 + 1, ls_28, 10, "Verdana", Black);
f0_81(str_concat_12 + "19", li_4 + li_108, li_44, ls_28, 10, "Verdana", White);
li_44 += 21;
ls_28 = "Spread";
f0_81(str_concat_12 + "7", li_4 + 64, li_44 + 1, ls_28, 10, "Tahoma", Black);
f0_81(str_concat_12 + "8", li_4 + 63, li_44, ls_28, 10, "Tahoma", DarkGray);
li_44 += 16;
ls_28 = f0_108(spread_52 / gd_876, 1);
li_112 = 10026686;
if (spread_52 / gd_876 >= DashboardSpreadRedValue) li_112 = 255;
f0_81(str_concat_12 + "10", li_4 + 62, li_44 + 2, ls_28, 22, "Verdana", Black);
f0_81(str_concat_12 + "11", li_4 + 60, li_44, ls_28, 22, "Verdana", li_112);
if (ai_0) {
li_44 += 30;
li_44 += 14;
li_116 = 20;
li_120 = 9;
f0_81(str_concat_12 + "30", li_4 + 10, li_44, "M1", 7, "Arial", f0_158(1));
f0_81(str_concat_12 + "31", li_4 + 6, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_M1));
f0_81(str_concat_12 + "32", li_4 + 6, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_M1));
f0_81(str_concat_12 + "33", li_4 + 6, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_103(PERIOD_M1));
f0_81(str_concat_12 + "34", li_4 + 6, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_M1));
f0_81(str_concat_12 + "40", li_4 + 30, li_44, "M5", 7, "Arial", f0_158(5));
f0_81(str_concat_12 + "41", li_4 + 26, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_M5));
f0_81(str_concat_12 + "42", li_4 + 26, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_M5));
f0_81(str_concat_12 + "43", li_4 + 26, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_M5));
f0_81(str_concat_12 + "44", li_4 + 26, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_M5));
f0_81(str_concat_12 + "50", li_4 + 47, li_44, "M15", 7, "Arial", f0_158(15));
f0_81(str_concat_12 + "51", li_4 + 46, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_M15));
f0_81(str_concat_12 + "52", li_4 + 46, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_M15));
f0_81(str_concat_12 + "53", li_4 + 46, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_M15));
f0_81(str_concat_12 + "54", li_4 + 46, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_M15));
f0_81(str_concat_12 + "60", li_4 + 68, li_44, "M30", 7, "Arial", f0_158(30));
f0_81(str_concat_12 + "61", li_4 + 66, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_M30));
f0_81(str_concat_12 + "62", li_4 + 66, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_M30));
f0_81(str_concat_12 + "63", li_4 + 66, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_M30));
f0_81(str_concat_12 + "64", li_4 + 66, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_M30));
f0_81(str_concat_12 + "70", li_4 + 90, li_44, "H1", 7, "Arial", f0_158(60));
f0_81(str_concat_12 + "71", li_4 + 86, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_H1));
f0_81(str_concat_12 + "72", li_4 + 86, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_H1));
f0_81(str_concat_12 + "73", li_4 + 86, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_H1));
f0_81(str_concat_12 + "74", li_4 + 86, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_H1));
f0_81(str_concat_12 + "80", li_4 + 110, li_44, "H4", 7, "Arial", f0_158(240));
f0_81(str_concat_12 + "81", li_4 + 106, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_H4));
f0_81(str_concat_12 + "82", li_4 + 106, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_H4));
f0_81(str_concat_12 + "83", li_4 + 106, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_H4));
f0_81(str_concat_12 + "84", li_4 + 106, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_H4));
f0_81(str_concat_12 + "90", li_4 + 130, li_44, "D1", 7, "Arial", f0_158(1440));
f0_81(str_concat_12 + "91", li_4 + 126, li_44 - li_116, "-", 42, "Arial", f0_72(PERIOD_D1));
f0_81(str_concat_12 + "92", li_4 + 126, li_44 - li_116 + li_120, "-", 42, "Arial", f0_103(PERIOD_D1));
f0_81(str_concat_12 + "93", li_4 + 126, li_44 - li_116 + li_120 * 2, "-", 42, "Arial", f0_90(PERIOD_D1));
f0_81(str_concat_12 + "94", li_4 + 126, li_44 - li_116 + 3 * li_120, "-", 42, "Arial", f0_102(PERIOD_D1));
li_120 = 10;
f0_81(str_concat_12 + "101", li_4 + 145, li_44 + li_120, "MA", 6, "Arial", SkyBlue);
f0_81(str_concat_12 + "102", li_4 + 145, li_44 + li_120 * 2, "CCI", 6, "Arial", SkyBlue);
f0_81(str_concat_12 + "103", li_4 + 145, li_44 + 3 * li_120, "RSI", 6, "Arial", SkyBlue);
f0_81(str_concat_12 + "104", li_4 + 145, li_44 + li_120 * 4, "Sth", 6, "Arial", SkyBlue);
ihigh_124 = iHigh(Symbol(), PERIOD_D1, 0);
ilow_132 = iLow(Symbol(), PERIOD_D1, 0);
iopen_140 = iOpen(Symbol(), PERIOD_D1, 0);
iclose_148 = iClose(Symbol(), PERIOD_D1, 0);
ld_156 = f0_139(ihigh_124 - ilow_132);
ld_164 = ld_156 / 29.0;
if (ld_164 != 0.0) {
ld_172 = f0_139(ihigh_124 - iopen_140) / ld_164;
ld_180 = f0_139(ihigh_124 - iclose_148) / ld_164;
li_188 = 6908265;
li_112 = li_188;
for (li_92 = 0; li_92 < 30; li_92++) {
if (ld_172 > ld_180) {
if (MathFloor(ld_180) <= li_92) li_112 = 25600;
if (MathFloor(ld_172) < li_92) li_112 = li_188;
} else {
if (ld_172 < ld_180) {
if (MathFloor(ld_172) <= li_92) li_112 = 2237106;
if (MathFloor(ld_180) < li_92) li_112 = li_188;
}
}
f0_81(StringConcatenate(str_concat_12, "DR", li_92), li_4 + 145, li_8 + 10 + 3 * li_92, "-", 20, "Arial", li_112);
}
f0_81(StringConcatenate(str_concat_12, "DRCurr"), li_4 + 137, li_8 + 18 + 3.0 * MathFloor(ld_180), "4", 8, "Webdings", Gold);
}
}
gi_1484 = TRUE;
}
}
// EDEA1FE21A3EDE39BF7E8D6E9831284D
int f0_158(int ai_0) {
if (Period() == ai_0) return (16777215);
return (15453831);
}
// 6A398A7CB1A89E7422220FC9AC47FAF8
int f0_72(int a_timeframe_0) {
if (Dashboard_OnlyCurrentTF && a_timeframe_0 != Period()) return (6908265);
double ima_4 = iMA(Symbol(), a_timeframe_0, Dashboard_MAPeriod, 0, Dashboard_MAMode, Dashboard_MAPrice, 0);
double ima_12 = iMA(Symbol(), a_timeframe_0, Dashboard_MAPeriod, 0, Dashboard_MAMode, Dashboard_MAPrice, 1);
if (ima_4 > ima_12) return (65280);
return (255);
}
// 9BBE1B727E7454DAF1054B4380C412FB
int f0_103(int a_timeframe_0) {
if (Dashboard_OnlyCurrentTF && a_timeframe_0 != Period()) return (6908265);
double icci_4 = iCCI(Symbol(), a_timeframe_0, Dashboard_CCIPeriod, Dashboard_CCIPrice, 0);
double icci_12 = iCCI(Symbol(), a_timeframe_0, Dashboard_CCIPeriod, Dashboard_CCIPrice, 1);
if (icci_4 > 0.0) {
if (icci_4 <= icci_12) return (2237106);
return (65280);
}
if (icci_4 < icci_12) return (255);
return (32768);
}
// 8924A78C0605254C6973A5E079E5C60C
int f0_90(int a_timeframe_0) {
if (Dashboard_OnlyCurrentTF && a_timeframe_0 != Period()) return (6908265);
double irsi_4 = iRSI(Symbol(), a_timeframe_0, Dashboard_RSIPeriod, Dashboard_RSIPrice, 0);
if (irsi_4 >= 50.0) return (65280);
return (255);
}
// 9B63D776DCDB7E5F9566C12936C962CB
int f0_102(int a_timeframe_0) {
if (Dashboard_OnlyCurrentTF && a_timeframe_0 != Period()) return (6908265);
double istochastic_4 = iStochastic(Symbol(), a_timeframe_0, Dashboard_StochKPeriod, Dashboard_StockDPeriod, Dashboard_StochSlowing, Dashboard_StochMode, Dashboard_StochPrice,
MODE_MAIN, 0);
double istochastic_12 = iStochastic(Symbol(), a_timeframe_0, Dashboard_StochKPeriod, Dashboard_StockDPeriod, Dashboard_StochSlowing, Dashboard_StochMode, Dashboard_StochPrice,
MODE_SIGNAL, 0);
if (istochastic_4 > istochastic_12) return (65280);
return (255);
}
// 506D7272A84C5F087624880F1171C82D
void f0_55() {
int li_4;
double iclose_8;
double iopen_16;
double ihigh_24;
double ilow_32;
double iopen_40;
double ihigh_48;
double ilow_56;
double ld_64;
double ld_72;
double ld_80;
int timeframe_0 = 0;
if (Period() == PERIOD_D1) timeframe_0 = 43200;
else {
if (Period() == PERIOD_H4) timeframe_0 = 10080;
else
if (Period() < PERIOD_H4) timeframe_0 = 1440;
}
if (timeframe_0 > 0) {
li_4 = 1;
if (TimeDayOfWeek(iTime(Symbol(), timeframe_0, li_4)) == 0) li_4++;
iclose_8 = iClose(Symbol(), timeframe_0, li_4);
iopen_16 = iOpen(Symbol(), timeframe_0, li_4);
ihigh_24 = iHigh(Symbol(), timeframe_0, li_4);
ilow_32 = iLow(Symbol(), timeframe_0, li_4);
iopen_40 = iOpen(Symbol(), timeframe_0, 0);
ihigh_48 = iHigh(Symbol(), timeframe_0, 0);
ilow_56 = iLow(Symbol(), timeframe_0, 0);
ld_64 = ihigh_48 - ilow_56;
ld_72 = ihigh_24 - ilow_32;
ld_80 = (ihigh_24 + ilow_32 + iclose_8) / 3.0;
gd_1496 = ld_80;
gd_1504 = 2.0 * ld_80 + (ihigh_24 - 2.0 * ilow_32);
gd_1512 = ld_80 + (ihigh_24 - ilow_32);
gd_1520 = 2.0 * ld_80 - ilow_32;
gd_1528 = 2.0 * ld_80 - ihigh_24;
gd_1536 = ld_80 - (ihigh_24 - ilow_32);
gd_1544 = 2.0 * ld_80 - (2.0 * ihigh_24 - ilow_32);
}
}
// 05EC5F8CC81F86D68993F307785CD862
void f0_3() {
f0_55();
int li_0 = 2;
int li_4 = gi_1552;
string str_concat_8 = StringConcatenate("DrW_", gs_1488);
f0_157(str_concat_8 + "R3Text", "R3", str_concat_8 + "R3 line", li_0, li_4, gd_1504);
f0_157(str_concat_8 + "R2Text", "R2", str_concat_8 + "R2 line", li_0, li_4, gd_1512);
f0_157(str_concat_8 + "R1Text", "R1", str_concat_8 + "R1 line", li_0, li_4, gd_1520);
li_4 = gi_1556;
f0_157(str_concat_8 + "PText", "P", str_concat_8 + "P line", li_0, li_4, gd_1496);
li_4 = gi_1560;
f0_157(str_concat_8 + "S1Text", "S1", str_concat_8 + "S1 line", li_0, li_4, gd_1528);
f0_157(str_concat_8 + "S2Text", "S2", str_concat_8 + "S2 line", li_0, li_4, gd_1536);
f0_157(str_concat_8 + "S3Text", "S3", str_concat_8 + "S3 line", li_0, li_4, gd_1544);
}
// ECEC9869575AF9DCB685E4A3B133CFE8
void f0_157(string a_name_0, string a_text_8, string a_name_16, int ai_24, color a_clr_28, double a_price_32) {
if (ObjectFind(a_name_0) != 0) {
ObjectCreate(a_name_0, OBJ_TEXT, 0, Time[0] + 60 * Period() * gi_1572, a_price_32);
ObjectSetText(a_name_0, a_text_8, 8, "Arial", CLR_NONE);
} else ObjectMove(a_name_0, 0, Time[0] + 60 * Period() * gi_1572, a_price_32);
if (ObjectFind(a_name_16) != 0) {
ObjectCreate(a_name_16, ai_24, 0, Time[1], a_price_32, Time[0], a_price_32);
ObjectSet(a_name_16, OBJPROP_STYLE, STYLE_DASHDOTDOT);
ObjectSet(a_name_16, OBJPROP_COLOR, a_clr_28);
return;
}
ObjectMove(a_name_16, 0, Time[1], a_price_32);
ObjectMove(a_name_16, 1, Time[0], a_price_32);
}
// E86AC8F15FE841E2A07F823AE236DB69
void f0_154() {
int li_0 = 60 * Period() - (TimeCurrent() - Time[0]);
string text_4 = " < ";
if (li_0 < 0) text_4 = text_4 + "--:--:--";
else text_4 = text_4 + TimeToStr(li_0, TIME_SECONDS);
string str_concat_12 = StringConcatenate("DrW_", gs_1576, "Text");
string str_concat_20 = StringConcatenate("DrW_", gs_1576, "Bg");
if (ObjectFind(str_concat_12) != 0) ObjectCreate(str_concat_12, OBJ_TEXT, 0, Time[0], Bid);
ObjectMove(str_concat_12, 0, Time[0], Bid);
ObjectSetText(str_concat_12, text_4, 8, "Verdana", NextCandleTimeTextColor);
}
// 4986B4C5BB37CA1A703AB220CAF9CD65
void f0_52() {
//string str_concat_0 = StringConcatenate("DrW_", "CopyRight");
//string str_concat_8 = StringConcatenate("TraderAgent", " ", "v2.3.3", " ", f0_123());
//string ls_16 = "More info: http://www.icefx.eu";
//string ls_24 = "Build " + "159";
//string name_32 = str_concat_0 + "0";
//ObjectDelete(name_32);
//f0_81(name_32, 4, 1, "±", 80, "IceFX", C'0x5A,0x5A,0x5A');
//ObjectSet(name_32, OBJPROP_CORNER, 3);
//name_32 = str_concat_0 + "1";
//ObjectDelete(name_32);
//f0_81(name_32, 18, 16, str_concat_8, 10, "Tahoma", Gold);
//ObjectSet(name_32, OBJPROP_CORNER, 3);
//name_32 = str_concat_0 + "2";
//ObjectDelete(name_32);
//f0_81(name_32, 4, 4, ls_16, 8, "Tahoma", Silver);
//ObjectSet(name_32, OBJPROP_CORNER, 3);
//name_32 = str_concat_0 + "3";
//ObjectDelete(name_32);
//f0_81(name_32, 4, 30, ls_24, 8, "Tahoma", Gray);
//ObjectSet(name_32, OBJPROP_CORNER, 3);
}
// 3689FAF537C7277424867A8C8C0E0163
void f0_34() {
string str_concat_0 = StringConcatenate("DrW_", "CopyRight");
string name_8 = str_concat_0 + "clock";
if (ObjectFind(name_8) < 0) {
ObjectCreate(name_8, OBJ_LABEL, 0, 0, 0);
ObjectSet(name_8, OBJPROP_CORNER, 3);
ObjectSet(name_8, OBJPROP_BACK, FALSE);
ObjectSet(name_8, OBJPROP_XDISTANCE, 4);
ObjectSet(name_8, OBJPROP_YDISTANCE, 15);
}
ObjectSetText(name_8, CharToStr(g_count_1584 + 183), 10, "Wingdings", Gold);
g_count_1584++;
if (g_count_1584 > 11) g_count_1584 = 0;
if (ObjectFind(str_concat_0 + "0") == -1) f0_52();
}
// 8A9AA0276E92E1E287ED3D315CA553B8
int f0_94() {
gia_1184[0] = gia_1188[0];
gia_1184[1] = gia_1188[1];
gia_1184[2] = gia_1188[2];
gia_1184[3] = gia_1188[3];
IceLock_GetWindowSize(gi_804, gia_1188);
gi_1192 = gia_1188[2] - gia_1188[0];
gi_1196 = gia_1188[3] - gia_1188[1];
gi_1268 = f0_4(ControlPanelX < 0, gi_1192 + ControlPanelX, ControlPanelX);
gi_1272 = f0_4(ControlPanelY < 0, gi_1196 + ControlPanelY - gi_1280, ControlPanelY);
gi_1308 = f0_4(OrderListPanelX < 0, gi_1192 + OrderListPanelX, OrderListPanelX);
gi_1312 = f0_4(OrderListPanelY < 0, gi_1196 + OrderListPanelY - gi_1320, OrderListPanelY);
gi_1396 = f0_4(AccountPanelX < 0, gi_1192 + AccountPanelX, AccountPanelX);
gi_1400 = f0_4(AccountPanelY < 0, gi_1196 + AccountPanelY - gi_1408, AccountPanelY);
gi_1432 = f0_4(ProfitPanelX < 0, gi_1192 + ProfitPanelX, ProfitPanelX);
gi_1436 = f0_4(ProfitPanelY < 0, gi_1196 + ProfitPanelY - gi_1444, ProfitPanelY);
gi_1468 = f0_4(DashboardX < 0, gi_1192 + DashboardX, DashboardX);
gi_1472 = f0_4(DashboardY < 0, gi_1196 + DashboardY - gi_1480, DashboardY);
if (gia_1188[0] != gia_1184[0] || gia_1188[1] != gia_1184[1] || gia_1188[2] != gia_1184[2] || gia_1188[3] != gia_1184[3]) {
f0_6();
return (1);
}
return (0);
}
// 0A0AC84BAFDEEFE131C3CA141E3191DC
void f0_6() {
f0_11();
f0_115();
f0_61();
f0_142(1);
f0_52();
if (ShowOrderListPanel && gi_1324) {
f0_121();
f0_83();
}
}
// C5AA0DDDA68543E36FBE2BD55B806ECA
int f0_130() {
int lia_0[2];
string ls_20;
int li_4 = IceLock_GetMouseState(gi_804, lia_0);
int li_8 = lia_0[0];
int li_12 = lia_0[1];
if (li_4 == 1) {
for (int count_16 = 0; count_16 < ArrayRange(gia_1252, 0); count_16++) {
if (gi_1204 && GetTickCount() - gia_1200[0] > 2000 || gia_1200[1] != li_8 || gia_1200[2] != li_12) {
if (ShowControlPanel && f0_162(li_8, li_12, gi_1268, gi_1272, gi_1268 + gi_1276, gi_1272 + gi_1280)) f0_170(li_8, li_12);
else {
if (ShowOrderListPanel && f0_162(li_8, li_12, gi_1308, gi_1312, gi_1308 + gi_1316, gi_1312 + gi_1320)) f0_124(li_8, li_12);
else
if (gi_1340 && f0_162(li_8, li_12, gi_1344, gi_1348, gi_1344 + gi_1352, gi_1348 + gi_1356)) f0_156(li_8, li_12);
}
gia_1200[0] = GetTickCount();
gia_1200[1] = li_8;
gia_1200[2] = li_12;
gi_1204 = FALSE;
return (count_16);
}
}
} else {
if (li_4 < 0) {
if (!gi_1236) {
ls_20 = "";//IceLock_GetLastResponseText(gi_804);
f0_41("License problem!", ls_20, 2, 5000);
}
} else gi_1204 = TRUE;
}
gi_796 = li_4 > 0;
return (-1);
}
// F1C2A50AB274EA5BB48B52676E8779BD
int f0_162(int ai_0, int ai_4, int ai_8, int ai_12, int ai_16, int ai_20) {
return (ai_8 <= ai_0 && ai_16 >= ai_0 && ai_12 <= ai_4 && ai_20 >= ai_4);
}
// F5543B7F0A2E0E1532973CAA9215D94B
void f0_167(int ai_0) {
int li_4 = f0_56(gs_1084, ai_0);
if (li_4 == EMPTY_VALUE) {
f0_69(ai_0);
f0_91(ai_0);
f0_50(ai_0);
if (f0_45(gs_grid_1076, ai_0)) f0_109(ai_0);
if (PartialClosePos1 != 0.0 && PartialClosePercent1 > 0.0 && PartialClosePercent1 <= 100.0) f0_29(ai_0, 1, PartialClosePos1, PartialClosePercent1);
if (PartialClosePos2 != 0.0 && PartialClosePercent2 > 0.0 && PartialClosePercent2 <= 100.0) f0_29(ai_0, 2, PartialClosePos2, PartialClosePercent2);
if (PartialClosePos3 != 0.0 && PartialClosePercent3 > 0.0 && PartialClosePercent3 <= 100.0) f0_29(ai_0, 3, PartialClosePos3, PartialClosePercent3);
}
}
// 8891ADA670F5B3992A8951FA0D442FC0
void f0_88(string as_0, double ad_8, string a_text_16, color a_clr_24) {
int li_44;
double ld_28 = 0;
if (gi_1196 > 0) ld_28 = 7.5 * ((WindowPriceMax() - WindowPriceMin()) / (1.0 * gi_1196));
string name_36 = as_0 + "_Text";
if (ObjectFind(name_36) > -1 || ObjectCreate(name_36, OBJ_TEXT, 0, 0, 0)) {
ObjectSet(name_36, OBJPROP_TIME1, Time[0] + 60 * (ControlLineOffset * Period()));
ObjectSet(name_36, OBJPROP_PRICE1, ad_8 + ld_28);
ObjectSetText(name_36, a_text_16, 8, "Arial", a_clr_24);
name_36 = as_0 + "_BgText";
if (ObjectFind(name_36) != 0) ObjectCreate(name_36, OBJ_TEXT, 0, 0, 0);
ObjectSet(name_36, OBJPROP_TIME1, Time[0] + 60 * (ControlLineOffset * Period()));
ObjectSet(name_36, OBJPROP_PRICE1, ad_8 + ld_28);
li_44 = StringLen(a_text_16) + 2;
a_text_16 = "";
for (int count_48 = 0; count_48 < li_44; count_48++) a_text_16 = a_text_16 + "Û";
ObjectSetText(name_36, a_text_16, 8, "Terminal", ControlLineLabelColor);
}
}
// 82D963C450BA8CDDE78C498C77E7F272
int f0_84(int ai_0) {
return (ai_0 == 0 || ai_0 == 2 || ai_0 == 4);
}
// C1037ECE641795974231751B55767CD8
void f0_125(int a_ticket_0) {
int cmd_4;
double order_lots_8;
double order_open_price_16;
double ld_24;
double ld_32;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
cmd_4 = OrderType();
order_lots_8 = OrderLots();
order_open_price_16 = OrderOpenPrice();
ld_24 = 0;
ld_32 = 0;
if (StopLoss > 0.0) {
ld_24 = f0_39(f0_84(cmd_4), order_open_price_16 - f0_7(StopLoss), order_open_price_16 + f0_7(StopLoss));
f0_0(gs_1012, ld_24, a_ticket_0, StopLossColor);
}
if (TakeProfit > 0.0) {
ld_32 = f0_39(f0_84(cmd_4), order_open_price_16 + f0_7(TakeProfit/10), order_open_price_16 - f0_7(TakeProfit/10));
f0_0(gs_1020, ld_32, a_ticket_0, TakeProfitColor);
}
if (!StealthMode && ld_24 > 0.0 || ld_32 > 0.0) f0_165(a_ticket_0, 0, 0, ld_24, ld_32);
f0_35(a_ticket_0);
}
}
// 3980953FD047E9F2CEAC750BFDF7FD07
void f0_35(int a_ticket_0) {
double ld_4;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
ld_4 = f0_71(a_ticket_0);
f0_40(a_ticket_0, 1, PartialClosePos1);
f0_40(a_ticket_0, 2, PartialClosePos2);
f0_40(a_ticket_0, 3, PartialClosePos3);
if (BreakEvenAt > 0.0) f0_120(a_ticket_0, OrderType(), ld_4);
}
}
// 685F792C37B8B836793CE6A2B866715A
void f0_69(int a_ticket_0) {
int cmd_4;
double ld_8;
double ld_16;
double order_stoploss_24;
string ls_32;
string ls_40;
bool li_48;
double ld_52;
double ld_60;
string ls_68;
int color_76;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
cmd_4 = OrderType();
ld_8 = f0_58(a_ticket_0);
ld_16 = f0_71(a_ticket_0);
order_stoploss_24 = f0_31(gs_1012, a_ticket_0);
if (order_stoploss_24 == EMPTY_VALUE) {
if (OrderStopLoss() > 0.0) {
order_stoploss_24 = OrderStopLoss();
f0_0(gs_1012, order_stoploss_24, a_ticket_0, StopLossColor);
} else {
if (ForceSetSLTPIfMissing) {
order_stoploss_24 = f0_39(f0_84(cmd_4), ld_16 - f0_7(StopLoss), ld_16 + f0_7(StopLoss));
f0_0(gs_1012, order_stoploss_24, a_ticket_0, StopLossColor);
}
}
f0_35(a_ticket_0);
} else {
if ((cmd_4 == OP_BUY && Bid <= order_stoploss_24) || (cmd_4 == OP_SELL && Ask >= order_stoploss_24)) {
f0_138(StringConcatenate("Ticket ", a_ticket_0, ": Price reach the StopLoss line! Closing order! SL line: ", order_stoploss_24, ", Price: ", f0_39(cmd_4 == OP_BUY,
Bid, Ask)));
f0_17(a_ticket_0);
} else {
ls_32 = "[SL] ";
ls_40 = f0_151(gs_1012, a_ticket_0);
if (TrailingStop > 0.0) {
ls_32 = "[TSL=" + f0_108(TrailingStop) + "] ";
li_48 = f0_64(a_ticket_0, TrailingStop, 0);
if (li_48) order_stoploss_24 = f0_31(gs_1012, a_ticket_0);
}
if (!StealthMode && order_stoploss_24 != f0_100(OrderStopLoss())) f0_165(a_ticket_0, 0, 0, order_stoploss_24);
if (ShowControlLineLabels) {
ld_52 = f0_139(f0_39(f0_84(cmd_4), order_stoploss_24 - ld_16, ld_16 - order_stoploss_24));
ld_60 = f0_153(ld_52, ld_8);
ls_68 = f0_136(ld_60, 2);
color_76 = StopLossColor;
if (ld_60 > 0.0) color_76 = TakeProfitColor;
f0_88(ls_40, order_stoploss_24, StringConcatenate(ls_32, OrderTicket(), ": ", f0_108(ld_52, 1), " pips (", ls_68, ")"), color_76);
}
}
}
}
}
// 89769B13ED4F492C312B67394076B751
void f0_91(int a_ticket_0) {
int cmd_4;
double ld_8;
double ld_16;
double order_takeprofit_24;
string ls_nsd_32;
double ld_40;
double ld_48;
string ls_56;
string ls_64;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
cmd_4 = OrderType();
ld_8 = f0_58(a_ticket_0);
ld_16 = f0_71(a_ticket_0);
order_takeprofit_24 = f0_31(gs_1020, a_ticket_0);
if (order_takeprofit_24 == EMPTY_VALUE) {
if (OrderTakeProfit() > 0.0) {
order_takeprofit_24 = OrderTakeProfit();
f0_0(gs_1020, order_takeprofit_24, a_ticket_0, TakeProfitColor);
} else {
if (ForceSetSLTPIfMissing) {
order_takeprofit_24 = f0_39(f0_84(cmd_4), ld_16 + f0_7(TakeProfit), ld_16 - f0_7(TakeProfit));
f0_0(gs_1020, order_takeprofit_24, a_ticket_0, TakeProfitColor);
}
}
} else {
if ((cmd_4 == OP_BUY && Bid >= order_takeprofit_24) || (cmd_4 == OP_SELL && Ask <= order_takeprofit_24)) {
f0_138(StringConcatenate("Ticket ", a_ticket_0, ": Price reach the TakeProfit line! Closing order! TP line: ", order_takeprofit_24, ", Price: ", f0_39(cmd_4 == OP_BUY,
Bid, Ask)));
f0_17(a_ticket_0);
} else {
if (!StealthMode && order_takeprofit_24 != f0_100(OrderTakeProfit())) f0_165(a_ticket_0, 0, 0, 0, order_takeprofit_24);
if (ShowControlLineLabels) {
ls_nsd_32 = "[TP] ";
ld_40 = f0_139(MathAbs(ld_16 - order_takeprofit_24));
ld_48 = f0_153(ld_40, ld_8);
ls_56 = f0_136(ld_48, 2);
ls_64 = f0_151(gs_1020, a_ticket_0);
f0_88(ls_64, order_takeprofit_24, StringConcatenate("[TP] ", OrderTicket(), ": ", f0_108(ld_40, 1), " pips (", ls_56, ")"), TakeProfitColor);
}
}
}
}
}
// B83E55AB5F40B64638ACCC1C1CC0F66F
void f0_120(int ai_0, int ai_4, double ad_8) {
double ld_16 = f0_39(f0_84(ai_4), ad_8 + f0_7(BreakEvenAt), ad_8 - f0_7(BreakEvenAt));
f0_0(gs_1036, ld_16, ai_0, BreakEvenColor);
}
// 3BE9355AC3F791222AD6D439E4AFF99A
void f0_40(int a_ticket_0, int ai_4, double ad_8) {
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) || OrderSymbol() != Symbol() || ad_8 == 0.0) return;
int cmd_16 = OrderType();
double order_lots_20 = OrderLots();
double order_open_price_28 = OrderOpenPrice();
double ld_36 = f0_39(f0_84(cmd_16), order_open_price_28 + f0_7(ad_8), order_open_price_28 - f0_7(ad_8));
f0_43(a_ticket_0, ai_4, ad_8, ld_36);
}
// 3F9D4D0323EF7F5AD257F632CD2A26CA
void f0_43(int a_ticket_0, int ai_4, double ad_8, double ad_16) {
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) || OrderSymbol() != Symbol()) return;
int cmd_24 = OrderType();
double stoplevel_28 = MarketInfo(Symbol(), MODE_STOPLEVEL);
double ld_36 = Ask - Bid;
if (cmd_24 > OP_SELL) {
if (ad_8 != 0.0) f0_0(gs_1044 + f0_108(ai_4), ad_16, a_ticket_0, PartialCloseColor);
} else {
if (((cmd_24 == OP_BUY && ad_8 > 0.0) || (cmd_24 == OP_SELL && ad_8 < 0.0) && ad_16 > Bid + ld_36 + f0_7(1)) || ((cmd_24 == OP_SELL && ad_8 > 0.0) || (cmd_24 == OP_BUY &&
ad_8 < 0.0) && ad_16 < Bid - ld_36 - f0_7(1))) f0_0(gs_1044 + f0_108(ai_4), ad_16, a_ticket_0, PartialCloseColor);
}
}
// 2F1DB2AE07F19F39E12ED9F3C6736290
void f0_29(int a_ticket_0, int ai_4, double ad_8, double ad_16) {
double ld_52;
string ls_60;
string name_68;
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) || OrderSymbol() != Symbol()) return;
int cmd_24 = OrderType();
double ld_28 = f0_58(a_ticket_0);
double ld_36 = f0_71(a_ticket_0);
double ld_44 = f0_31(gs_1044 + f0_108(ai_4), a_ticket_0);
if (ld_44 != EMPTY_VALUE) {
ld_52 = f0_139(MathAbs(ld_36 - ld_44));
ls_60 = f0_136(f0_153(ld_52, ld_28), 2);
name_68 = f0_151(gs_1044 + f0_108(ai_4), a_ticket_0);
if (ShowControlLineLabels) f0_88(name_68, ld_44, StringConcatenate("[PC", ai_4, "] ", OrderTicket(), ": ", f0_108(ld_52, 1), " pips (", ad_16, "%)"), PartialCloseColor);
if (((cmd_24 == OP_BUY && ad_8 > 0.0) || (cmd_24 == OP_SELL && ad_8 < 0.0) && ld_44 <= Close[0]) || ((cmd_24 == OP_SELL && ad_8 > 0.0) || (cmd_24 == OP_BUY && ad_8 < 0.0) &&
ld_44 >= Close[0])) {
f0_76(a_ticket_0, ad_16);
ObjectDelete(name_68 + "_Text");
ObjectDelete(name_68 + "_BgText");
ObjectDelete(name_68);
}
}
}
// 453E13E7614D8CCF30123D2AD5C771DC
void f0_50(int a_ticket_0) {
double ld_32;
string ls_40;
string name_48;
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) || OrderSymbol() != Symbol()) return;
int cmd_4 = OrderType();
double ld_8 = f0_58(a_ticket_0);
double ld_16 = f0_71(a_ticket_0);
double ld_24 = f0_31(gs_1036, a_ticket_0);
if (ld_24 != EMPTY_VALUE) {
ld_32 = f0_139(MathAbs(ld_16 - ld_24));
ls_40 = f0_136(f0_153(ld_32, ld_8), 2);
name_48 = f0_151(gs_1036, a_ticket_0);
if (ShowControlLineLabels) f0_88(name_48, ld_24, StringConcatenate("[BE] ", OrderTicket(), ": ", f0_108(ld_32, 1), " pips (", ls_40, ")"), BreakEvenColor);
if ((cmd_4 == OP_BUY && ld_24 <= Close[0]) || (cmd_4 == OP_SELL && ld_24 >= Close[0])) {
f0_132(a_ticket_0);
ObjectDelete(name_48 + "_Text");
ObjectDelete(name_48 + "_BgText");
ObjectDelete(name_48);
}
}
}
// ADA7C40C36B61F2F558BD473F21B8B5B
void f0_116() {
string name_8;
string name_16;
string ls_24;
int li_0 = ObjectsTotal();
for (int li_4 = li_0 - 1; li_4 >= 0; li_4--) {
name_8 = ObjectName(li_4);
if (ObjectFind(name_8) == 0) {
if (UseTrendLines && ObjectType(name_8) == 2) f0_74(name_8);
if (UseChannels && ObjectType(name_8) == 5) f0_104(name_8);
if (UsePendingLines && ObjectType(name_8) == 1) f0_26(name_8);
}
}
if (UsePendingLines) {
li_0 = OrdersTotal();
for (li_4 = li_0 - 1; li_4 >= 0; li_4--) {
if (OrderSelect(li_4, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() > OP_SELL) {
name_16 = f0_151(gs_pending_1116, OrderTicket());
ls_24 = name_16 + "_Text";
if (ObjectFind(name_16) == -1) {
f0_60(OrderTicket(), "Delete pending order because there is no line on chart!");
OrderDelete(OrderTicket());
}
}
}
}
}
}
}
// 6CB6B16E41BC868A64E6E67B270514C9
void f0_74(string a_name_0) {
string text_48;
double str2dbl_56;
double str2dbl_64;
int str2int_72;
int str2int_76;
int li_84;
double ld_88;
double ld_96;
string ls_8 = ObjectDescription(a_name_0);
double ld_16 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE1));
double ld_24 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE2));
double ld_32 = f0_100(ObjectGet(a_name_0, OBJPROP_TIME1));
double ld_40 = f0_100(ObjectGet(a_name_0, OBJPROP_TIME2));
if (ls_8 != "" && StringFind(ls_8, "!") == 0) {
text_48 = ls_8;
f0_89(text_48, "|");
str2dbl_56 = StrToDouble(f0_89(text_48, "|"));
str2dbl_64 = StrToDouble(f0_89(text_48, "|"));
str2int_72 = StrToInteger(f0_89(text_48, "|"));
str2int_76 = StrToInteger(f0_89(text_48, "|"));
if (f0_100(str2dbl_56) != ld_16 || f0_100(str2dbl_64) != ld_24 || f0_100(str2int_72) != ld_32 || f0_100(str2int_76) != ld_40) {
ObjectSetText(a_name_0, text_48);
ObjectSet(a_name_0, OBJPROP_COLOR, Red);
ls_8 = ObjectDescription(a_name_0);
f0_86(StringConcatenate("Reactivate trend line: ", a_name_0, " (", ls_8, ")"));
}
}
int li_80 = -1;
if (StringFind(ls_8, "!") != 0 && ObjectGet(a_name_0, OBJPROP_RAY) == 1.0 || (Time[0] >= ld_32 && Time[0] <= ld_40)) {
li_84 = 0;
if (OpenAfterCandleClose) li_84 = 1;
ld_88 = ObjectGetValueByShift(a_name_0, li_84);
if (StringFind(a_name_0, "Trendline", 0) == 0 || (TrueTLSupport && StringFind(a_name_0, "TrueTL", 0) == 0) && ld_88 > Open[li_84]) {
if (Close[li_84] >= ld_88 && Open[li_84] < ld_88) {
ld_96 = f0_27(ls_8, gd_748);
li_80 = 0;
if (OppositeTrendLineOrder || StringFind(ls_8, "sell", 0) == 0) li_80 = 1;
}
} else {
if (StringFind(a_name_0, "Trendline", 0) == 0 || (TrueTLSupport && StringFind(a_name_0, "TrueTL", 0) == 0) && ld_88 < Open[li_84]) {
if (Close[li_84] <= ld_88 && Open[li_84] > ld_88) {
ld_96 = f0_27(ls_8, gd_748);
li_80 = 1;
if (OppositeTrendLineOrder || StringFind(ls_8, "buy", 0) == 0) li_80 = 0;
}
}
}
if (li_80 != -1) {
f0_138(StringConcatenate("Open order for trend line! Name: ", a_name_0));
if (f0_114(li_80, ld_96) > 0) {
f0_172(gs_1124, TimeCurrent());
if (DeleteTrendLinesAfterOpen) {
f0_86("Delete trend line: " + a_name_0);
ObjectDelete(a_name_0);
} else {
f0_86("Disable trend line: " + a_name_0);
ObjectSetText(a_name_0, StringConcatenate("!Old", "|", ObjectGet(a_name_0, OBJPROP_PRICE1), "|", ObjectGet(a_name_0, OBJPROP_PRICE2), "|", ObjectGet(a_name_0, OBJPROP_TIME1),
"|", ObjectGet(a_name_0, OBJPROP_TIME2), "|", ls_8));
ObjectSet(a_name_0, OBJPROP_COLOR, Gray);
}
if (TrendLinesOCOMode) f0_122();
}
}
}
}
// 9C4D9879A9CC1EC0B794F0312287CE43
void f0_104(string a_name_0) {
int li_68;
double ld_72;
double ld_80;
double ld_88;
string ls_8 = ObjectDescription(a_name_0);
double ld_16 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE1));
double ld_24 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE2));
double ld_32 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE3));
double ld_40 = f0_100(ObjectGet(a_name_0, OBJPROP_TIME1));
double ld_48 = f0_100(ObjectGet(a_name_0, OBJPROP_TIME2));
double ld_56 = f0_100(ObjectGet(a_name_0, OBJPROP_TIME3));
int li_64 = -1;
if (StringFind(ls_8, "!") != 0 && ObjectGet(a_name_0, OBJPROP_RAY) == 1.0 || (Time[0] >= ld_40 && Time[0] <= ld_48)) {
li_68 = 0;
if (OpenAfterCandleClose) li_68 = 1;
if (ld_32 > ld_16) {
ld_72 = ObjectGetValueByShift(a_name_0, li_68);
ld_80 = ld_72 + (ld_32 - ld_16);
} else {
ld_80 = ObjectGetValueByShift(a_name_0, li_68);
ld_72 = ld_80 - (ld_16 - ld_32);
}
if (Close[li_68] >= ld_80 && Open[li_68] < ld_80) {
ld_88 = gd_748;
li_64 = 0;
if (OppositeTrendLineOrder) li_64 = 1;
} else {
if (Close[li_68] <= ld_72 && Open[li_68] > ld_72) {
ld_88 = gd_748;
li_64 = 1;
if (OppositeTrendLineOrder) li_64 = 0;
}
}
if (li_64 != -1) {
f0_138(StringConcatenate("Open order for channel! Name: ", a_name_0));
if (f0_114(li_64, ld_88) > 0) {
f0_86("Delete channel: " + a_name_0);
ObjectDelete(a_name_0);
}
}
}
}
// 2C5A855C6F830E8B269D08DDD9D53A1A
void f0_26(string a_name_0) {
double ld_28;
int ticket_36;
string name_40;
bool li_48;
double ld_52;
double ld_60;
double ld_68;
double ld_76;
double ld_84;
string ls_8 = f0_13(ObjectDescription(a_name_0));
double price_16 = f0_100(ObjectGet(a_name_0, OBJPROP_PRICE1));
int li_24 = -1;
if (StringFind(a_name_0, "Horizontal Line", 0) == 0) {
if (StringFind(ls_8, "buy") == 0) {
if (price_16 > Close[0]) li_24 = 4;
else li_24 = 2;
} else {
if (StringFind(ls_8, "sell") == 0) {
if (price_16 > Close[0]) li_24 = 3;
else li_24 = 5;
}
}
if (li_24 != -1) {
f0_138(StringConcatenate("Open pending (", f0_169(li_24), ") position by line: ", a_name_0));
ld_28 = f0_27(ls_8, gd_748);
if (f0_42(li_24, ld_28, 0, 0, MagicNumber, 0, price_16)) {
ticket_36 = g_ticket_968;
f0_125(ticket_36);
name_40 = f0_151(gs_pending_1116, ticket_36);
if (ObjectFind(name_40) == -1) {
ObjectCreate(name_40, OBJ_HLINE, 0, 0, price_16);
ObjectSet(name_40, OBJPROP_COLOR, PendingLineColor);
ObjectSet(name_40, OBJPROP_STYLE, STYLE_DASHDOT);
}
if (ShowControlLineLabels) f0_88(name_40, price_16, StringConcatenate("[", f0_169(li_24), "] ", OrderTicket(), ": ", f0_108(ld_28, 2), " lots"), PendingLineColor);
ObjectDelete(a_name_0);
}
}
} else {
if (StringFind(a_name_0, gs_996, 0) == 0 && StringFind(a_name_0, gs_pending_1116, 0) > 0) {
li_48 = FALSE;
price_16 = ObjectGet(a_name_0, OBJPROP_PRICE1);
ticket_36 = f0_70(a_name_0);
if (OrderSelect(ticket_36, SELECT_BY_TICKET)) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
li_48 = TRUE;
if (PendingOCOMode) {
f0_138(StringConcatenate("Delete all pending orders. Cause: PendingOCOMode is true and ticket ", ticket_36, " is opened. "));
f0_80();
}
} else {
if (f0_100(OrderOpenPrice()) != f0_100(price_16)) {
ld_52 = 0;
ld_60 = 0;
ld_68 = OrderOpenPrice() - price_16;
ld_76 = f0_31(gs_1012, ticket_36);
if (ld_76 != EMPTY_VALUE) ld_52 = ld_76 - ld_68;
ld_84 = f0_31(gs_1020, ticket_36);
if (ld_84 != EMPTY_VALUE) ld_60 = ld_84 - ld_68;
if (f0_118(ticket_36, price_16, f0_39(StealthMode, 0, ld_52), f0_39(StealthMode, 0, ld_60))) {
if (OrderSelect(ticket_36, SELECT_BY_TICKET)) {
if (ld_52 > 0.0) f0_0(gs_1012, ld_52, ticket_36);
if (ld_60 > 0.0) f0_0(gs_1020, ld_60, ticket_36);
for (int li_92 = 1; li_92 <= 3; li_92++)
if (f0_31(gs_1044 + f0_108(li_92), ticket_36) != EMPTY_VALUE) f0_0(gs_1044 + f0_108(li_92), f0_31(gs_1044 + f0_108(li_92), ticket_36) - ld_68, ticket_36, PartialCloseColor);
if (f0_31(gs_1036, ticket_36) != EMPTY_VALUE) f0_0(gs_1036, f0_31(gs_1036, ticket_36) - ld_68, ticket_36, BreakEvenColor);
}
}
}
if (ShowControlLineLabels) {
name_40 = f0_151(gs_pending_1116, ticket_36);
f0_88(name_40, price_16, StringConcatenate("[", f0_169(OrderType()), "] ", OrderTicket(), ": ", f0_108(OrderLots(), 2), " lots"), PendingLineColor);
}
}
} else li_48 = TRUE;
if (li_48) {
ObjectDelete(a_name_0);
name_40 = f0_151(gs_pending_1116, ticket_36);
ObjectDelete(name_40 + "_BgText");
ObjectDelete(name_40 + "_Text");
}
}
}
}
// B8657638CFA5247FE57D2D00F2E198B8
void f0_122() {
string name_8;
int objs_total_0 = ObjectsTotal();
for (int li_4 = objs_total_0 - 1; li_4 >= 0; li_4--) {
name_8 = ObjectName(li_4);
if (ObjectType(name_8) != 2 || ObjectFind(name_8) != 0) continue;
ObjectDelete(name_8);
}
}
// 7B26EB163EEA6BBA01A1869096B0C7F1
void f0_80() {
int order_total_0 = OrdersTotal();
for (int pos_4 = order_total_0 - 1; pos_4 >= 0; pos_4--) {
if (OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
if (OrderType() > OP_SELL) OrderDelete(OrderTicket());
}
}
}
// A2EAB982495DA51539FEDFD4F431755F
void f0_109(int a_ticket_0) {
if (!OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) || OrderSymbol() != Symbol()) return;
int cmd_4 = OrderType();
double ld_8 = f0_96(a_ticket_0);
if (f0_25(a_ticket_0) > 1) f0_0(gs_1100, ld_8, a_ticket_0, LightSkyBlue, STYLE_DOT);
}
// 91F4903D720AB7A282618D4DEAA0D2D1
double f0_96(int ai_0) {
double ld_4;
int li_24;
double ld_12 = 0;
for (int pos_20 = OrdersTotal() - 1; pos_20 >= 0; pos_20--) {
if (OrderSelect(pos_20, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber) {
if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
li_24 = f0_56(gs_1084, OrderTicket());
if (li_24 == ai_0 || OrderTicket() == ai_0) {
ld_4 += OrderOpenPrice() * OrderLots();
ld_12 += OrderLots();
}
}
}
}
}
if (ld_12 > 0.0) return (f0_100(ld_4 / ld_12));
return (EMPTY_VALUE);
}
// 2C6D6D7A6D0F1902FDEAEAB1C37DD7FB
double f0_27(string as_0, double a_str2dbl_8) {
double str2dbl_16 = a_str2dbl_8;
string ls_24 = as_0;
string ls_32 = f0_89(ls_24, "=");
if (StringLen(ls_24) > 0) str2dbl_16 = StrToDouble(ls_24);
return (f0_95(str2dbl_16));
}
// 68CECFBE4049D002E8B8CE95B3832A6E
int f0_70(string as_0) {
int str2int_8 = -1;
string ls_12 = StringSubstr(as_0, StringLen(gs_996));
string ls_20 = StringSubstr(ls_12, 0, StringFind(ls_12, "_", 0));
str2int_8 = StrToInteger(ls_20);
return (str2int_8);
}
// 7CE58342490F2719632C99A1A5E38D1B
void f0_81(string a_name_0, int a_x_8, int a_y_12, string a_text_16, int a_fontsize_24, string a_fontname_28, color a_clr_36) {
if (ObjectFind(a_name_0) < 0) ObjectCreate(a_name_0, OBJ_LABEL, 0, 0, 0);
ObjectSet(a_name_0, OBJPROP_CORNER, g_corner_1180);
ObjectSet(a_name_0, OBJPROP_BACK, FALSE);
ObjectSet(a_name_0, OBJPROP_XDISTANCE, a_x_8);
ObjectSet(a_name_0, OBJPROP_YDISTANCE, a_y_12);
ObjectSetText(a_name_0, a_text_16, a_fontsize_24, a_fontname_28, a_clr_36);
}
// 6BF191DB9F328C0F42640F1F596A2384
void f0_73() {
string name_4;
string ls_12;
string ls_20;
int str2int_28;
for (int li_0 = ObjectsTotal() - 1; li_0 >= 0; li_0--) {
name_4 = ObjectName(li_0);
if (ObjectFind(name_4) == 0) {
if (StringFind(name_4, gs_996, 0) == 0) {
ls_12 = StringSubstr(name_4, StringLen(gs_996));
ls_20 = StringSubstr(ls_12, 0, StringFind(ls_12, "_", 0));
str2int_28 = StrToInteger(ls_20);
if (str2int_28 > 0 && !OrderSelect(str2int_28, SELECT_BY_TICKET, MODE_TRADES) || OrderCloseTime() != 0) ObjectDelete(name_4);
}
}
}
}
// 1135155E048F3DF4275620DA6DD845E6
string f0_10(int ai_0) {
string lsa_4[6] = {"year", "month", "day", "h", "m", "s"};
int lia_8[6] = {31536000, 2678400, 86400, 3600, 60, 1};
if (ai_0 < 0) return ("-");
string ls_ret_12 = "";
int count_20 = 0;
int li_24 = ai_0;
int li_28 = 0;
for (int index_32 = 0; index_32 < 6; index_32++) {
li_28 = MathFloor(li_24 / lia_8[index_32]);
if (li_28 > 0) {
if (count_20 > 0) ls_ret_12 = ls_ret_12 + " ";
ls_ret_12 = StringConcatenate(ls_ret_12, li_28, lsa_4[index_32]);
count_20++;
if (count_20 > 1) break;
li_24 = MathMod(li_24, lia_8[index_32]);
}
}
return (ls_ret_12);
}
// 61BCD96A2C1F8026527CBF2019D6E9A4
int f0_66() {
string ls_24;
bool li_ret_0 = FALSE;
f0_119("");
f0_119("Starting " + StringConcatenate("TraderAgent", " ", "v2.3.3", " Build ", "159", " ", f0_123(), "..."));
f0_119("Checking DLL calls............");
if (!IsDllsAllowed()) {
f0_119("ERROR", 1);
f0_119("Set Parameter **AllowDLL Imports** ON in menu Tools -> Options -> ExpertAdvisors.");
return (1);
}
f0_119("OK", 1);
f0_119("Checking Expert enabled............");
if (!IsExpertEnabled()) {
f0_119("ERROR", 1);
f0_119("Please enable the Expert Advisors.");
return (1);
}
f0_119("OK", 1);
string ls_4 = "2.3.1.60";//IceLock_GetVersion();
f0_119("DLL version: " + ls_4);
f0_138("Product version: " + "v2.3.3" + " Build " + "159");
f0_138("IceLock DLL version: " + ls_4);
f0_119("Checking passkey............");
int str2int_12 = 0;
string ls_16 = "";
gi_804 = WindowHandle(Symbol(), Period());
ls_16 = "1 | Pro mode!";//IceLock_CheckLicense(gi_804, PassKey, TerminalPath(), WindowExpertName(), "30b491b240062cd4e41874504960a075", "v2.3.3", 0);
str2int_12 = StrToInteger(f0_89(ls_16, " | "));
if (str2int_12 <= 0) {
ls_24 = "unknown";//IceLock_GetComputerID();
f0_119("ERROR", 1);
f0_119("License error! " + ls_16);
f0_20("License error! " + ls_16);
f0_119("Computer ID: " + ls_24);
f0_20("Computer ID: " + ls_24);
Alert("TraderAgent", " ", "v2.3.3", " - License check error (", str2int_12, ")! ", ls_16);
return (str2int_12);
}
if (str2int_12 == 1) f0_119("OK", 1);
else {
if (str2int_12 == 2) {
f0_119("OK", 1);
f0_119("Trial mode!");
gi_1596 = TRUE;
}
}
f0_78("Your computer ID: unknown"/* + IceLock_GetComputerID()*/);
f0_78("License check result (" + f0_108(str2int_12) + "): " + ls_16);
f0_119("Waiting for first tick............");
gi_1600 = TRUE;
li_ret_0 = TRUE;
return (li_ret_0);
}
// 5DDE2CC43817CF3BC77DE1C0C7978C13
void f0_63() {
g_count_1592 = 0;
f0_30();
}
// B70A9113C5772E6DFB45E474B46C9979
void f0_119(string as_0, bool ai_8 = FALSE, int ai_12 = -1) {
if (ai_12 == -1) {
if (!ai_8) {
ai_12 = g_count_1592;
g_count_1592++;
} else ai_12 = g_count_1592 - 1;
}
if (ai_8) gsa_1588[ai_12] = gsa_1588[ai_12] + as_0;
else gsa_1588[ai_12] = as_0;
f0_30();
}
// 2F7095AADF8745BE0F469991AD836EF1
void f0_30() {
string ls_0 = "";
for (int index_8 = 0; index_8 < g_count_1592; index_8++) {
if (index_8 > 0) {
ls_0 = ls_0
+ "\n";
}
ls_0 = ls_0 + gsa_1588[index_8];
}
Comment(ls_0);
}
// 0E40DB3B593F30DA392370025B26753A
void f0_8() {
Print("Self-destruct initiated!");
int li_0 = WindowHandle(Symbol(), 0);
PostMessageA(li_0, WM_COMMAND, 33050, 0);
}
// 43FCCB9D3B9E6FC994AC54D13FB61D2F
void f0_47() {
g_bool_844 = (!IsOptimization()) && 1;
g_bool_852 = !IsTesting();
gi_848 = TRUE;
gs_824 = "127.0.0.1";
g_bool_856 = IsTesting() || f0_22(gs_udplog_1132, -1, 0, 1) == 1.0;
f0_2();
f0_147();
}
// E37F0136AA3FFAF149B351F6A4C948E9
int init2() {
f0_38("DrW_");
f0_161();
f0_48();
f0_47();
gi_952 = OrderSlippage;
g_comment_956 = CommentForOrder;
g_bool_964 = ShowSentinelAlerts;
f0_86(StringConcatenate("Pip multiplier: ", gd_876, ", Digits: ", Digits));
gi_768 = GetTickCount() - 1000;
OrderSelect(OrdersHistoryTotal() - 1, SELECT_BY_POS, MODE_HISTORY);
gi_932 = OrderTicket();
if (IsTesting()) gi_732 = TRUE;
HideTestIndicators(TRUE);
gi_808 = TRUE;
int li_0 = f0_66();
if (li_0 <= 0) {
f0_119(StringConcatenate("TraderAgent", " stopped!"));
if (li_0 > -1000) return (1);
}
gi_808 = FALSE;
if (f0_94()) f0_6();
if (!gi_732) f0_113();
return (0);
}
// 52D46093050F38C27267BCE42543EF60
int deinit2() {
f0_38("DrW_");
if ((!gi_808) && !gi_732) f0_23();
if (!gi_808) f0_163();
return (0);
}
// F21A94BE6FBDF8D56C501172DCEDA4CC
void f0_163() {
ArrayInitialize(gia_1188, 0);
gi_nsd_744 = 0;
ArrayInitialize(gia_1200, 0);
gi_1324 = FALSE;
gi_1296 = 0;
g_dttm_1328 = 0;
f0_19();
f0_33();
}
// A9AC747ECC57E99EEF4277C89F17F1C7
void f0_113() {
gi_804 = WindowHandle(Symbol(), Period());
IceLock_StartTicker(gi_804, TickTime);
}
// 29984943467A7EC2DB2B1FC0BE6394DE
void f0_23() {
IceLock_StopTicker(gi_804);
}
// EA2B2676C28C0DB26D39331A336C6B92
int start2() {
if (gi_808) {
f0_8();
return (0);
}
g_bool_776 = g_bid_780 != Bid || g_ask_788 != Ask;
g_bid_780 = Bid;
g_ask_788 = Ask;
if (gi_1600) {
f0_63();
gi_1600 = FALSE;
}
f0_49();
return (0);
}
// 451B93CD5361E5070EDA031D26C5855B
void f0_49() {
double ld_0;
gi_760++;
gi_756 = GetTickCount();
f0_130();
f0_34();
if (g_bool_776) f0_142(0);
if (IsTesting() && BackTestTime > 0)
if (TimeCurrent() - g_dttm_772 < BackTestTime) return;
g_dttm_772 = TimeCurrent();
if (GetTickCount() - gi_768 > gi_816 || IsTesting()) {
g_bool_812 = GlobalVariableCheck("TADebug") && GlobalVariableGet("TADebug") == 1.0;
if (GlobalVariableCheck("TASlowTime")) gi_816 = MathMax(GlobalVariableGet("TASlowTime"), 500);
if (gi_796) f0_94();
f0_77();
ld_0 = gd_748;
gd_748 = f0_53(Symbol(), RiskPercent, LOT, StopLoss);
if (gd_748 != ld_0) {
f0_18(0, StringConcatenate("Buy ", f0_108(gd_748, 2)));
f0_18(1, StringConcatenate("Sell ", f0_108(gd_748, 2)));
}
if (g_bool_776) f0_142(1);
if (UseTrendLines || UsePendingLines || UseChannels) f0_116();
if ((gi_796 && g_bool_776) || TimeCurrent() - g_dttm_800 > 30) {
if (ShowPivotPoints) f0_3();
f0_61();
f0_115();
g_dttm_800 = TimeCurrent();
}
f0_83();
if (gi_1340) f0_126();
f0_110();
if (ShowNextCandleTime) f0_154();
if (ShowControlPanel) f0_144();
gi_768 = GetTickCount();
gi_764++;
if (g_bool_812) Comment("Full tick count: ", gi_764, ", Last Full Work time: ", GetTickCount() - gi_756, " ms - Real tick:", g_bool_776, ", HasFocus: ", gi_796);
}
gi_756 = GetTickCount() - gi_756;
}
// BCAE19BFF0BBF16DE57434082605B5CF
string f0_123() {
if (gi_1596) return ("Trial");
switch (2) {
case 1:
return ("");
case 2:
return ("Pro");
case 3:
return ("Ultra");
}
return ("");
}
// F787E1ED503D2D47A476A44E6CA26384
string f0_169(int ai_0) {
switch (ai_0) {
case 0:
return ("Buy");
case 1:
return ("Sell");
case 2:
return ("Buylimit");
case 3:
return ("Selllimit");
case 4:
return ("Buystop");
case 5:
return ("Sellstop");
}
return ("Unknow");
}
// 435B996F3BB934BC9504AD03D905BC90
int f0_46(int a_ticket_0 = -1) {
double ld_4;
int li_12;
int li_16;
if (a_ticket_0 == -1) a_ticket_0 = f0_57(-1, MagicNumber);
if (a_ticket_0 != -1) {
f0_138("Open hedge position for #" + a_ticket_0);
if (OrderTicket() != a_ticket_0) OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES);
ld_4 = f0_58(a_ticket_0);
li_12 = 1 - OrderType();
li_16 = f0_114(li_12, ld_4);
return (li_16);
}
return (-1);
}
// 89FF7E2FBE79EDBFF74ECA22412DA098
void f0_92(int a_ticket_0) {
double order_lots_4;
double cmd_12;
double ticket_20;
double ld_28;
double order_lots_36;
double ld_44;
int li_52;
double ld_56;
double ld_64;
int ticket_72;
double ld_76;
double ld_84;
double ld_92;
double ld_104;
double ld_112;
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES) && GridStep > 0.0 && GridLotMultiplier > 0.0 && OrderCloseTime() == 0) {
order_lots_4 = OrderLots();
cmd_12 = OrderType();
ticket_20 = f0_137(a_ticket_0);
if (OrderSelect(ticket_20, SELECT_BY_TICKET, MODE_TRADES)) {
ld_28 = f0_100(OrderOpenPrice());
order_lots_36 = OrderLots();
ld_44 = f0_56(gs_1092, ticket_20);
li_52 = ld_44 + 1.0;
if ((cmd_12 == 0.0 && f0_100(Ask) < f0_100(ld_28 - f0_7(GridStep))) || (cmd_12 == 1.0 && f0_100(Bid) > f0_100(ld_28 + f0_7(GridStep))) && li_52 < GridMaxOrderCount ||
GridMaxOrderCount == 0) {
ld_56 = f0_149(order_lots_4, li_52);
if (ld_56 > 0.0) {
f0_138(StringConcatenate("Open new grid order! Parent ticket: ", a_ticket_0, ", LOT: ", ld_56, ", Level: ", li_52, ", Price: ", Bid, ", Distance: ", MathAbs(Ask - ld_28)));
ld_64 = f0_71(a_ticket_0);
if (f0_42(cmd_12, ld_56, 0, 0, MagicNumber)) {
ticket_72 = g_ticket_968;
f0_172(gs_1084, a_ticket_0, ticket_72);
f0_172(gs_1092, li_52, ticket_72);
if (GridReCalculateSLTP) {
ld_76 = f0_96(a_ticket_0);
ld_84 = ld_76 - ld_64;
f0_138(StringConcatenate("Recalculate SL/TP/BE values! Old avg. price: ", ld_64, ", new avg. price: ", ld_76, ", Difference: ", ld_84));
if (ld_84 != 0.0) {
ld_92 = f0_31(gs_1012, a_ticket_0);
if (ld_92 > 0.0 && ld_92 != EMPTY_VALUE) f0_0(gs_1012, ld_92 + ld_84, a_ticket_0);
ld_92 = f0_31(gs_1020, a_ticket_0);
if (ld_92 > 0.0 && ld_92 != EMPTY_VALUE) f0_0(gs_1020, ld_92 + ld_84, a_ticket_0);
ld_92 = f0_31(gs_1036, a_ticket_0);
if (ld_92 != EMPTY_VALUE) f0_0(gs_1036, ld_92 + ld_84, a_ticket_0, BreakEvenColor);
for (int li_100 = 1; li_100 <= 3; li_100++) {
ld_92 = f0_31(gs_1044 + f0_108(li_100), a_ticket_0);
if (ld_92 != EMPTY_VALUE) f0_0(gs_1044 + f0_108(li_100), ld_92 + ld_84, a_ticket_0, PartialCloseColor);
}
}
}
}
} else f0_138(StringConcatenate("Invalid new grid order lot: ", ld_56));
}
if (!StealthMode) {
if (OrderSelect(a_ticket_0, SELECT_BY_TICKET, MODE_TRADES)) {
ld_104 = f0_100(OrderStopLoss());
ld_112 = f0_100(OrderTakeProfit());
for (int pos_120 = OrdersTotal() - 1; pos_120 >= 0; pos_120--) {
if (OrderSelect(pos_120, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol()) {
if (OrderMagicNumber() == MagicNumber) {
if (f0_56(gs_1084, OrderTicket()) == a_ticket_0)
if (f0_100(OrderStopLoss()) != ld_104 || f0_100(OrderTakeProfit()) != ld_112) f0_165(OrderTicket(), 0, 0, ld_104, ld_112);
}
}
}
}
}
}
}
}
}