Build 188 - backtesting issues

 
Hi,

in new build 188 I get big differencies in results of Strategy Tester compared to build 186.
Is Strategy Tester undergone a major update in this new release?

Btw: Is there a place where someone can see a list of fixes for every build version?

Thanks.
 
In between I found out, that there is a big bug in Strategy Tester of build 188:

All limit orders are executed. And they get whatever price you want.
Meaning whatever (unrealistic) price you give to OrderSend() will be accepted.

Last time I've seen exactly this was in MT3.85.
Hope it will be fixed soon.
Otherwise Strategy Tester is complete useless for limit orders!!

Here's a litte EA for bug demonstration.
Look at Journal after running in ST.
EA makes 10 limit orders with prices miles away from actual Ask... and get this trades filled!!!




double BuyPriceWanted;
int ticket, cnt;

int init(){return(0);}
int deinit(){return(0);}

int start()
  {
   if (cnt>9) return;
   
   BuyPriceWanted=NormalizeDouble(Ask-100*Point, Digits);
   ticket= OrderSend(Symbol(), OP_BUYSTOP, 1.00, BuyPriceWanted, 3, Ask - 500 *Point, Ask + 500 * Point, "Test Buy1", 4711, 0, Blue);   
   if (ticket>0) 
   {
     cnt++;
     Alert("Ticket: #", ticket, " Bid ", Bid, " Ask: ", Ask, " Buy Price wanted: ", BuyPriceWanted," SL: ", Ask - 500 *Point," TP: ", Ask + 500 * Point); 
     if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)==True)
     {
       if (OrderOpenPrice()<Ask)
       Alert("Ticket: #", ticket, " Buy Price get: ", OrderOpenPrice(), " < Ask !!! ERROR !!!");
       
     }
   }

   return(0);
  }
 
error is here
   BuyPriceWanted=NormalizeDouble(Ask-100*Point, Digits);
   ticket= OrderSend(Symbol(), OP_BUYSTOP, 1.00, BuyPriceWanted, 3, Ask - 500 *Point, Ask + 500 * Point, "Test 


should be

   BuyPriceWanted=NormalizeDouble(Ask+100*Point, Digits);



see "Trading"

 
[quote]error is here
   BuyPriceWanted=NormalizeDouble(Ask-100*Point, Digits);
   ticket= OrderSend(Symbol(), OP_BUYSTOP, 1.00, BuyPriceWanted, 3, Ask - 500 *Point, Ask + 500 * Point, "Test 



No Slawa,

this is an intentially forced error to demonstrate the wrong behavior of Strategy Tester.
Because of the wrong pricing this trade should generate a error message like it does in real trading.
But it don't. Instead it gets filled at that wrong price. Thats the problem.
I hope it's clearer now.

 
Does someone of Metaquotes noticed my last reply?
 
"New MetaTrader 4 Client Terminal Build 188"
===
26. Tester: Fixed error of placing of mistaken SL and TP in pending orders.
===
Addition: and mistaken open price too.
 
But like I said:

I got this problem since Build 188.
Build 186 had no problems with that.
So I guess it's still present, maybe side effects of your latest changes in Tester.
Reason: