

TS
dollarz
Kupas Tuntas Coding Robot EA Scalping MQL4
Salam Ijo Agan Semua
Sory sebelumnya jika lapak ane kurang berkenan
ane baru beli EA MillionDollarPips (EURUSD only) dari EBay, cuman masih OFFROAD
jadi belum di testdrive, kamsud ane mau ane shere disini sapa tau ada
agan MASTA CODING mau cekidot ni EA biar lebih yahuutt...
ni gan CODINGnya
#property copyright "Copyright © 2011"
#property link "http://www.metaquotes.net"
#property show_inputs
#include <stdlib.mqh>
#import "MillionDollarPips.dll"
double fun1(int a0, int a1, int a2, double a3, double a4, double a5, double a6);
double fun2(int a0, int a1, int a2, double a3, double a4, double a5, double a6);
int fun3(int a0, int a1, int a2, double a3, double a4, double a5, double a6, double a7, double a8, double a9);
#import
extern string Configuration = "================ Configuration";
extern bool Show_Debug = FALSE;
extern bool Verbose = FALSE;
extern bool Mode_HighSpeed = TRUE;
extern bool Mode_Safe = FALSE;
bool Mode_MaxOrders = FALSE;
bool gi_104 = FALSE;
extern string Username = "Traders-Shop";
extern int Magic = 112226;
extern string OrderCmt = "MDP_EURUSD_1.1.0";
extern string Money_Management = "---------------- Money Management";
double gd_136 = 0.1;
bool gi_144 = TRUE;
extern double Min_Lots = 0.001;
extern double Max_Lots = 1000.0;
extern double Risk = 1.5;
double gd_172 = 0.0;
string gs_unused_180 = "---------------- Scalping Factors";
double gd_188 = 15.0;
double gd_196 = 40.0;
double gd_204 = 145.0;
double gd_212 = 270.0;
double gd_220 = 0.4;
double gd_228 = 0.3333333333;
double gd_236 = 0.0;
extern string SL_TP_Trailing = "---------------- SL / TP / Trailing";
extern double Trailing_Resolution = 0.0;
double gd_260 = 5.0;
double gd_268 = 20.0;
extern bool Trailing_Stop = TRUE;
bool gi_280 = TRUE;
string gs_unused_284 = "---------------- Indicators";
int gi_292 = 30;
double gd_296 = 2.0;
string gs_304;
int gi_312 = 0;
double gd_316 = 0.0;
int g_slippage_324 = 3;
double gda_328[30];
double gda_332[30];
int gia_336[30];
double gd_340 = 1.0;
double gd_348;
bool gi_356;
double gd_360;
bool gi_368 = FALSE;
double gd_372 = 1.0;
double gd_380 = 0.0;
int gi_388 = 0;
int g_time_392 = 0;
int g_count_396 = 0;
double gda_400[30];
int gi_404 = 0;
bool gi_408 = TRUE;
double gd_412 = 5.0;
double gd_420 = 10.0;
double gd_428 = 40.0;
bool gi_436 = FALSE;
double gd_440 = 5.0;
double gd_448 = 10.0;
double gd_456 = 40.0;
bool gi_464 = FALSE;
bool gi_unused_468 = FALSE;
string gs_472 = "Valid user";
string gs_480;
int gia_488[] = {0};
int gia_492[] = {0};
int AccNum;
int init() {
AccNum = AccountNumber();
ArrayInitialize(gda_400, 0);
gi_312 = 5;
gd_316 = 0.00001;
if (Digits < 5) g_slippage_324 = 0;
else gi_388 = -1;
gi_unused_468 = FALSE;
if (gi_104) {
gi_unused_468 = TRUE;
gia_492[0] = 1;
} else {
if (AccNum == 0) {
gs_480 = "MetaTrader has not yet been connected to Server.";
Print(gs_480);
} else {
if (Username == "" || Username == gs_304) {
gi_unused_468 = TRUE;
gs_480 = "MDP_EURUSD_1.1.0" + " is unable to validate MetaTrader account credentials. Username is not set.";
Print(gs_480);
Comment(gs_480);
Alert(gs_480);
} else {
gi_unused_468 = TRUE;
gia_492[0]=1;
gs_480 = gs_472;
if (gia_492[0] != TRUE) {
Print("Account validation failed. Username:" + Username + " AccountNumber:" + AccNum);
Print(gs_480);
Comment("Account validation failed. Username:" + Username + " AccountNumber:" + AccNum
+ "\n"
+ gs_480);
Alert("MDP_EURUSD_1.1.0" + ": Account validation failed. Username:" + Username + " AccountNumber:" + AccNum);
Alert("MDP_EURUSD_1.1.0" + ": " + gs_480);
} else Print("Account validation succeeded. Username:" + Username + " AccountNumber:" + AccNum);
}
}
}
start();
return (0);
}
int start() {
if (gi_312 == 0) {
init();
return;
}
if (gia_492[0] == TRUE) {
if (Period() != PERIOD_M1 || StringFind(Symbol(), "EURUSD") == -1) {
Print("ERROR -- " + "MDP_EURUSD_1.1.0" + " should be attached to EURUSD 1 Minute Chart Window");
Comment("ERROR -- " + "MDP_EURUSD_1.1.0" + " should be attached to EURUSD 1 Minute Chart Window");
} else {
f0_2(gda_328, gda_332, gia_336, gd_340);
f0_0(Period());
}
}
return (0);
}
void f0_0(int a_timeframe_0) {
int ticket_16;
int li_24;
bool bool_28;
double ld_92;
bool li_116;
double ld_120;
double ld_136;
double ld_220;
int datetime_236;
int li_240;
double ld_244;
double order_stoploss_260;
double order_takeprofit_268;
double ld_276;
int li_292;
int li_296;
string ls_300;
bool li_308;
if (g_time_392 < Time[0]) {
g_time_392 = Time[0];
g_count_396 = 0;
} else g_count_396++;
double ihigh_64 = iHigh(Symbol(), a_timeframe_0, 0);
double ilow_72 = iLow(Symbol(), a_timeframe_0, 0);
double icustom_32 = iCustom(Symbol(), a_timeframe_0, "Bands", gi_292, 0, gd_296, 1, 0);
double icustom_40 = iCustom(Symbol(), a_timeframe_0, "Bands", gi_292, 0, gd_296, 2, 0);
double ld_80 = icustom_32 - icustom_40;
bool li_88 = Bid >= icustom_40 + ld_80 / 2.0;
if (!gi_368) {
for (int pos_4 = OrdersTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderCloseTime() != 0 && OrderClosePrice() != OrderOpenPrice() && OrderProfit() != 0.0 && OrderComment() != "partial close" && StringFind(OrderComment(), "[sl]from #") == -1 &&
StringFind(OrderComment(), "[tp]from #") == -1) {
gi_368 = TRUE;
ld_92 = MathAbs(OrderProfit() / (OrderClosePrice() - OrderOpenPrice()));
gd_372 = ld_92 / OrderLots() / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_380 = (-OrderCommission()) / ld_92;
Print("Commission_Rate : " + f0_3(gd_380));
break;
}
}
}
if (!gi_368) {
for (pos_4 = OrdersHistoryTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderCloseTime() != 0 && OrderClosePrice() != OrderOpenPrice() && OrderProfit() != 0.0 && OrderComment() != "partial close" && StringFind(OrderComment(), "[sl]from #") == -1 &&
StringFind(OrderComment(), "[tp]from #") == -1) {
gi_368 = TRUE;
ld_92 = MathAbs(OrderProfit() / (OrderClosePrice() - OrderOpenPrice()));
gd_372 = ld_92 / OrderLots() / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_380 = (-OrderCommission()) / ld_92;
Print("Commission_Rate : " + f0_3(gd_380));
break;
}
}
}
double ld_100 = MarketInfo(Symbol(), MODE_STOPLEVEL) * Point;
double ld_108 = Ask - Bid;
double ld_128 = gd_260 * gd_316;
if (ld_128 < ld_100 - 5.0 * gd_316) {
li_116 = gi_436;
ld_120 = gd_428 * gd_316;
ld_128 = gd_420 * gd_316;
ld_136 = gd_412 * gd_316;
} else {
if (!Mode_HighSpeed) {
li_116 = gi_464;
ld_120 = gd_456 * gd_316;
ld_128 = gd_448 * gd_316;
ld_136 = gd_440 * gd_316;
} else {
li_116 = gi_280;
ld_120 = gd_268 * gd_316;
ld_128 = gd_260 * gd_316;
ld_136 = Trailing_Resolution * gd_316;
}
}
ld_120 = MathMax(ld_120, ld_100);
if (li_116) ld_128 = MathMax(ld_128, ld_100);
double ld_unused_144 = gda_400[0];
ArrayCopy(gda_400, gda_400, 0, 1, 29);
gda_400[29] = ld_108;
if (gi_404 < 30) gi_404++;
double ld_152 = 0;
pos_4 = 29;
for (int count_8 = 0; count_8 < gi_404; count_8++) {
ld_152 += gda_400[pos_4];
pos_4--;
}
double ld_160 = ld_152 / gi_404;
if (!gi_368 && ld_160 < 15.0 * gd_316) gd_380 = 15.0 * gd_316 - ld_160;
double ld_168 = f0_5(Ask + gd_380);
double ld_176 = f0_5(Bid - gd_380);
double ld_184 = ld_160 + gd_380;
double ld_192 = fun1(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, ld_184, gd_316, gd_188, gd_196);
//ld_192=0.28;
double ld_200 = fun2(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, gd_316, gd_204, gd_212, ld_192);
//ld_200=0.0018;
double ld_208 = ihigh_64 - ilow_72;
/*
if (ld_208>0.00250)
{ if (Bid<icustom_40) li_216=-1; else if (Bid>icustom_32) li_216=1; }
*/
double limitTe;
string mode=Mode_HighSpeed+"-"+Mode_Safe+"-0";
if(mode=="0-0-0") { ld_192=0.24; ld_200=0.0018; limitTe=0.00250; }
else if(mode=="0-1-0") { ld_192=0.68; ld_200=0.0023; limitTe=0.00300; }
else if(mode=="1-0-0") { ld_192=0.28; ld_200=0.0018; limitTe=0.00150; }
else if(mode=="1-1-0") { ld_192=0.56; ld_200=0.0022; limitTe=0.00250; }
int li_216 = fun3(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, gd_220, gd_316, Bid, ld_208, icustom_40, icustom_32, ld_200);
if(ld_208>limitTe) { if (Bid<icustom_40) li_216=-1; else if (Bid>icustom_32) li_216=1; }
if (gd_236 == 0.0) ld_220 = gd_228 * ld_200;
else ld_220 = gd_236 * gd_316;
ld_220 = MathMax(ld_100, ld_220);
if (Bid == 0.0 || MarketInfo(Symbol(), MODE_LOTSIZE) == 0.0) ld_220 = 0;
double ld_228 = ld_220 + ld_160 + gd_380;
if (gi_408) datetime_236 = TimeCurrent() + 60.0 * MathMax(10 * a_timeframe_0, 60);
else datetime_236 = 0;
if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.0) li_240 = 5;
else li_240 = f0_7(0.1, MarketInfo(Symbol(), MODE_LOTSTEP));
if (gi_144) {
if (Risk < 0.001 || Risk > 1000.0) {
Comment("ERROR -- Invalid Risk Value.");
return;
}
if (AccountBalance() <= 0.0) {
Comment("ERROR -- Account Balance is " + DoubleToStr(MathRound(AccountBalance()), 0));
return;
}
if (ld_220 != 0.0) {
gd_172 = MathMax(AccountBalance(), gd_172);
ld_244 = MathMin(AccountFreeMargin() * AccountLeverage() / 2.0, gd_172 * Risk / 100.0 * Bid / ld_228);
gd_136 = ld_244 / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_136 = NormalizeDouble(gd_136, li_240);
gd_136 = MathMax(Min_Lots, gd_136);
gd_136 = MathMax(MarketInfo(Symbol(), MODE_MINLOT), gd_136);
gd_136 = MathMin(Max_Lots, gd_136);
gd_136 = MathMin(MarketInfo(Symbol(), MODE_MAXLOT), gd_136);
}
}
int count_252 = 0;
int count_256 = 0;
for (pos_4 = 0; pos_4 < OrdersTotal(); pos_4++) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderCloseTime() == 0) {
if (OrderSymbol() != Symbol()) {
count_256++;
continue;
}
switch (OrderType()) {
case OP_BUY:
while (Trailing_Stop) {
order_stoploss_260 = OrderStopLoss();
order_takeprofit_268 = OrderTakeProfit();
if (!(order_takeprofit_268 < f0_5(ld_168 + ld_120) && ld_168 + ld_120 - order_takeprofit_268 > ld_136)) break;
order_stoploss_260 = f0_5(Bid - ld_120);
order_takeprofit_268 = f0_5(ld_168 + ld_120);
bool_28 = OrderModify(OrderTicket(), 0, order_stoploss_260,
bersambung....
Sory sebelumnya jika lapak ane kurang berkenan

ane baru beli EA MillionDollarPips (EURUSD only) dari EBay, cuman masih OFFROAD
jadi belum di testdrive, kamsud ane mau ane shere disini sapa tau ada
agan MASTA CODING mau cekidot ni EA biar lebih yahuutt...

ni gan CODINGnya
Spoiler for EA MilionDollarPips:
#property copyright "Copyright © 2011"
#property link "http://www.metaquotes.net"
#property show_inputs
#include <stdlib.mqh>
#import "MillionDollarPips.dll"
double fun1(int a0, int a1, int a2, double a3, double a4, double a5, double a6);
double fun2(int a0, int a1, int a2, double a3, double a4, double a5, double a6);
int fun3(int a0, int a1, int a2, double a3, double a4, double a5, double a6, double a7, double a8, double a9);
#import
extern string Configuration = "================ Configuration";
extern bool Show_Debug = FALSE;
extern bool Verbose = FALSE;
extern bool Mode_HighSpeed = TRUE;
extern bool Mode_Safe = FALSE;
bool Mode_MaxOrders = FALSE;
bool gi_104 = FALSE;
extern string Username = "Traders-Shop";
extern int Magic = 112226;
extern string OrderCmt = "MDP_EURUSD_1.1.0";
extern string Money_Management = "---------------- Money Management";
double gd_136 = 0.1;
bool gi_144 = TRUE;
extern double Min_Lots = 0.001;
extern double Max_Lots = 1000.0;
extern double Risk = 1.5;
double gd_172 = 0.0;
string gs_unused_180 = "---------------- Scalping Factors";
double gd_188 = 15.0;
double gd_196 = 40.0;
double gd_204 = 145.0;
double gd_212 = 270.0;
double gd_220 = 0.4;
double gd_228 = 0.3333333333;
double gd_236 = 0.0;
extern string SL_TP_Trailing = "---------------- SL / TP / Trailing";
extern double Trailing_Resolution = 0.0;
double gd_260 = 5.0;
double gd_268 = 20.0;
extern bool Trailing_Stop = TRUE;
bool gi_280 = TRUE;
string gs_unused_284 = "---------------- Indicators";
int gi_292 = 30;
double gd_296 = 2.0;
string gs_304;
int gi_312 = 0;
double gd_316 = 0.0;
int g_slippage_324 = 3;
double gda_328[30];
double gda_332[30];
int gia_336[30];
double gd_340 = 1.0;
double gd_348;
bool gi_356;
double gd_360;
bool gi_368 = FALSE;
double gd_372 = 1.0;
double gd_380 = 0.0;
int gi_388 = 0;
int g_time_392 = 0;
int g_count_396 = 0;
double gda_400[30];
int gi_404 = 0;
bool gi_408 = TRUE;
double gd_412 = 5.0;
double gd_420 = 10.0;
double gd_428 = 40.0;
bool gi_436 = FALSE;
double gd_440 = 5.0;
double gd_448 = 10.0;
double gd_456 = 40.0;
bool gi_464 = FALSE;
bool gi_unused_468 = FALSE;
string gs_472 = "Valid user";
string gs_480;
int gia_488[] = {0};
int gia_492[] = {0};
int AccNum;
int init() {
AccNum = AccountNumber();
ArrayInitialize(gda_400, 0);
gi_312 = 5;
gd_316 = 0.00001;
if (Digits < 5) g_slippage_324 = 0;
else gi_388 = -1;
gi_unused_468 = FALSE;
if (gi_104) {
gi_unused_468 = TRUE;
gia_492[0] = 1;
} else {
if (AccNum == 0) {
gs_480 = "MetaTrader has not yet been connected to Server.";
Print(gs_480);
} else {
if (Username == "" || Username == gs_304) {
gi_unused_468 = TRUE;
gs_480 = "MDP_EURUSD_1.1.0" + " is unable to validate MetaTrader account credentials. Username is not set.";
Print(gs_480);
Comment(gs_480);
Alert(gs_480);
} else {
gi_unused_468 = TRUE;
gia_492[0]=1;
gs_480 = gs_472;
if (gia_492[0] != TRUE) {
Print("Account validation failed. Username:" + Username + " AccountNumber:" + AccNum);
Print(gs_480);
Comment("Account validation failed. Username:" + Username + " AccountNumber:" + AccNum
+ "\n"
+ gs_480);
Alert("MDP_EURUSD_1.1.0" + ": Account validation failed. Username:" + Username + " AccountNumber:" + AccNum);
Alert("MDP_EURUSD_1.1.0" + ": " + gs_480);
} else Print("Account validation succeeded. Username:" + Username + " AccountNumber:" + AccNum);
}
}
}
start();
return (0);
}
int start() {
if (gi_312 == 0) {
init();
return;
}
if (gia_492[0] == TRUE) {
if (Period() != PERIOD_M1 || StringFind(Symbol(), "EURUSD") == -1) {
Print("ERROR -- " + "MDP_EURUSD_1.1.0" + " should be attached to EURUSD 1 Minute Chart Window");
Comment("ERROR -- " + "MDP_EURUSD_1.1.0" + " should be attached to EURUSD 1 Minute Chart Window");
} else {
f0_2(gda_328, gda_332, gia_336, gd_340);
f0_0(Period());
}
}
return (0);
}
void f0_0(int a_timeframe_0) {
int ticket_16;
int li_24;
bool bool_28;
double ld_92;
bool li_116;
double ld_120;
double ld_136;
double ld_220;
int datetime_236;
int li_240;
double ld_244;
double order_stoploss_260;
double order_takeprofit_268;
double ld_276;
int li_292;
int li_296;
string ls_300;
bool li_308;
if (g_time_392 < Time[0]) {
g_time_392 = Time[0];
g_count_396 = 0;
} else g_count_396++;
double ihigh_64 = iHigh(Symbol(), a_timeframe_0, 0);
double ilow_72 = iLow(Symbol(), a_timeframe_0, 0);
double icustom_32 = iCustom(Symbol(), a_timeframe_0, "Bands", gi_292, 0, gd_296, 1, 0);
double icustom_40 = iCustom(Symbol(), a_timeframe_0, "Bands", gi_292, 0, gd_296, 2, 0);
double ld_80 = icustom_32 - icustom_40;
bool li_88 = Bid >= icustom_40 + ld_80 / 2.0;
if (!gi_368) {
for (int pos_4 = OrdersTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol() && OrderCloseTime() != 0 && OrderClosePrice() != OrderOpenPrice() && OrderProfit() != 0.0 && OrderComment() != "partial close" && StringFind(OrderComment(), "[sl]from #") == -1 &&
StringFind(OrderComment(), "[tp]from #") == -1) {
gi_368 = TRUE;
ld_92 = MathAbs(OrderProfit() / (OrderClosePrice() - OrderOpenPrice()));
gd_372 = ld_92 / OrderLots() / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_380 = (-OrderCommission()) / ld_92;
Print("Commission_Rate : " + f0_3(gd_380));
break;
}
}
}
if (!gi_368) {
for (pos_4 = OrdersHistoryTotal() - 1; pos_4 >= 0; pos_4--) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_HISTORY);
if (OrderSymbol() == Symbol() && OrderCloseTime() != 0 && OrderClosePrice() != OrderOpenPrice() && OrderProfit() != 0.0 && OrderComment() != "partial close" && StringFind(OrderComment(), "[sl]from #") == -1 &&
StringFind(OrderComment(), "[tp]from #") == -1) {
gi_368 = TRUE;
ld_92 = MathAbs(OrderProfit() / (OrderClosePrice() - OrderOpenPrice()));
gd_372 = ld_92 / OrderLots() / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_380 = (-OrderCommission()) / ld_92;
Print("Commission_Rate : " + f0_3(gd_380));
break;
}
}
}
double ld_100 = MarketInfo(Symbol(), MODE_STOPLEVEL) * Point;
double ld_108 = Ask - Bid;
double ld_128 = gd_260 * gd_316;
if (ld_128 < ld_100 - 5.0 * gd_316) {
li_116 = gi_436;
ld_120 = gd_428 * gd_316;
ld_128 = gd_420 * gd_316;
ld_136 = gd_412 * gd_316;
} else {
if (!Mode_HighSpeed) {
li_116 = gi_464;
ld_120 = gd_456 * gd_316;
ld_128 = gd_448 * gd_316;
ld_136 = gd_440 * gd_316;
} else {
li_116 = gi_280;
ld_120 = gd_268 * gd_316;
ld_128 = gd_260 * gd_316;
ld_136 = Trailing_Resolution * gd_316;
}
}
ld_120 = MathMax(ld_120, ld_100);
if (li_116) ld_128 = MathMax(ld_128, ld_100);
double ld_unused_144 = gda_400[0];
ArrayCopy(gda_400, gda_400, 0, 1, 29);
gda_400[29] = ld_108;
if (gi_404 < 30) gi_404++;
double ld_152 = 0;
pos_4 = 29;
for (int count_8 = 0; count_8 < gi_404; count_8++) {
ld_152 += gda_400[pos_4];
pos_4--;
}
double ld_160 = ld_152 / gi_404;
if (!gi_368 && ld_160 < 15.0 * gd_316) gd_380 = 15.0 * gd_316 - ld_160;
double ld_168 = f0_5(Ask + gd_380);
double ld_176 = f0_5(Bid - gd_380);
double ld_184 = ld_160 + gd_380;
double ld_192 = fun1(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, ld_184, gd_316, gd_188, gd_196);
//ld_192=0.28;
double ld_200 = fun2(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, gd_316, gd_204, gd_212, ld_192);
//ld_200=0.0018;
double ld_208 = ihigh_64 - ilow_72;
/*
if (ld_208>0.00250)
{ if (Bid<icustom_40) li_216=-1; else if (Bid>icustom_32) li_216=1; }
*/
double limitTe;
string mode=Mode_HighSpeed+"-"+Mode_Safe+"-0";
if(mode=="0-0-0") { ld_192=0.24; ld_200=0.0018; limitTe=0.00250; }
else if(mode=="0-1-0") { ld_192=0.68; ld_200=0.0023; limitTe=0.00300; }
else if(mode=="1-0-0") { ld_192=0.28; ld_200=0.0018; limitTe=0.00150; }
else if(mode=="1-1-0") { ld_192=0.56; ld_200=0.0022; limitTe=0.00250; }
int li_216 = fun3(Mode_HighSpeed, Mode_Safe, Mode_MaxOrders, gd_220, gd_316, Bid, ld_208, icustom_40, icustom_32, ld_200);
if(ld_208>limitTe) { if (Bid<icustom_40) li_216=-1; else if (Bid>icustom_32) li_216=1; }
if (gd_236 == 0.0) ld_220 = gd_228 * ld_200;
else ld_220 = gd_236 * gd_316;
ld_220 = MathMax(ld_100, ld_220);
if (Bid == 0.0 || MarketInfo(Symbol(), MODE_LOTSIZE) == 0.0) ld_220 = 0;
double ld_228 = ld_220 + ld_160 + gd_380;
if (gi_408) datetime_236 = TimeCurrent() + 60.0 * MathMax(10 * a_timeframe_0, 60);
else datetime_236 = 0;
if (MarketInfo(Symbol(), MODE_LOTSTEP) == 0.0) li_240 = 5;
else li_240 = f0_7(0.1, MarketInfo(Symbol(), MODE_LOTSTEP));
if (gi_144) {
if (Risk < 0.001 || Risk > 1000.0) {
Comment("ERROR -- Invalid Risk Value.");
return;
}
if (AccountBalance() <= 0.0) {
Comment("ERROR -- Account Balance is " + DoubleToStr(MathRound(AccountBalance()), 0));
return;
}
if (ld_220 != 0.0) {
gd_172 = MathMax(AccountBalance(), gd_172);
ld_244 = MathMin(AccountFreeMargin() * AccountLeverage() / 2.0, gd_172 * Risk / 100.0 * Bid / ld_228);
gd_136 = ld_244 / MarketInfo(Symbol(), MODE_LOTSIZE);
gd_136 = NormalizeDouble(gd_136, li_240);
gd_136 = MathMax(Min_Lots, gd_136);
gd_136 = MathMax(MarketInfo(Symbol(), MODE_MINLOT), gd_136);
gd_136 = MathMin(Max_Lots, gd_136);
gd_136 = MathMin(MarketInfo(Symbol(), MODE_MAXLOT), gd_136);
}
}
int count_252 = 0;
int count_256 = 0;
for (pos_4 = 0; pos_4 < OrdersTotal(); pos_4++) {
OrderSelect(pos_4, SELECT_BY_POS, MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderCloseTime() == 0) {
if (OrderSymbol() != Symbol()) {
count_256++;
continue;
}
switch (OrderType()) {
case OP_BUY:
while (Trailing_Stop) {
order_stoploss_260 = OrderStopLoss();
order_takeprofit_268 = OrderTakeProfit();
if (!(order_takeprofit_268 < f0_5(ld_168 + ld_120) && ld_168 + ld_120 - order_takeprofit_268 > ld_136)) break;
order_stoploss_260 = f0_5(Bid - ld_120);
order_takeprofit_268 = f0_5(ld_168 + ld_120);
bool_28 = OrderModify(OrderTicket(), 0, order_stoploss_260,
bersambung....
0
3.3K
Kutip
15
Balasan


Komentar yang asik ya
Urutan
Terbaru
Terlama


Komentar yang asik ya
Komunitas Pilihan