I'm absolutely stunned by the behaviour of my EA during strategy testing. Why in the world are there two different outputs. How could Ask be perfectly divisible by CurrentProfitTarget and not equal to CurrentProfitTarget? Here is the relevant code:
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: LookForClose()
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Ask/CurrentProfitTarget: 1
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Ask*10000: 13146000 CurrentProfitTarget*10000000 13146000
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Bid: 1.3144 Ask: 1.3146 TradeDirection: DOWN CurrentProfitTarget: 1.3146 ProfitTargetFlag: 0
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: First part matches
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Second part matches
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Profit Target has been reached.
Relevant Output 2:
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: LookForClose()
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Ask/CurrentProfitTarget: 1
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Ask*10000: 13136000 CurrentProfitTarget*10000000 13136000
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Bid: 1.3134 Ask: 1.3136 TradeDirection: DOWN CurrentProfitTarget: 1.3136 ProfitTargetFlag: 0
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: First part matches
Allow the use of cookies to log in to the MQL5.com website.
Please enable the necessary setting in your browser, otherwise you will not be able to log in.
You are signed in. Two-factor authentication has been disabled. Set it up again and scan a new QR code, or continue with two-factor authentication disabled.
I'm absolutely stunned by the behaviour of my EA during strategy testing. Why in the world are there two different outputs. How could Ask be perfectly divisible by CurrentProfitTarget and not equal to CurrentProfitTarget? Here is the relevant code:
Print("LookForClose()");
Print("Ask/CurrentProfitTarget: ", Ask/CurrentProfitTarget);
Print("Ask*10000: ", Ask*10000000, " CurrentProfitTarget*10000000 ", CurrentProfitTarget*10000000);
Print("Bid: ", Bid, " Ask: ", Ask, " TradeDirection: ", TradeDirection, " CurrentProfitTarget: ",
CurrentProfitTarget, " ProfitTargetFlag: ", ProfitTargetFlag);
if(ProfitTargetFlag == 0)
{ if(TradeDirection == "DOWN")
Print("First part matches");
if(Ask == CurrentProfitTarget)
Print("Second part matches");
if(TradeDirection == "UP" && Bid == CurrentProfitTarget)
ProfitTargetFlag = 1;
if(TradeDirection == "DOWN" && Ask == CurrentProfitTarget)
ProfitTargetFlag = 1;
if(ProfitTargetFlag == 1)
Print("Profit Target has been reached.");
}
Relevant Output 1:
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: LookForClose()
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Ask/CurrentProfitTarget: 1
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Ask*10000: 13146000 CurrentProfitTarget*10000000 13146000
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Bid: 1.3144 Ask: 1.3146 TradeDirection: DOWN CurrentProfitTarget: 1.3146 ProfitTargetFlag: 0
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: First part matches
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Second part matches
13:30:02 2009.04.13 00:09 EA EURUSDFXF,M15: Profit Target has been reached.
Relevant Output 2:
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: LookForClose()
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Ask/CurrentProfitTarget: 1
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Ask*10000: 13136000 CurrentProfitTarget*10000000 13136000
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: Bid: 1.3134 Ask: 1.3136 TradeDirection: DOWN CurrentProfitTarget: 1.3136 ProfitTargetFlag: 0
13:30:02 2009.04.13 00:16 EA EURUSDFXF,M15: First part matches