Download MetaTrader 5
To add comments, please log in or register
Speed up MQL5 Cloud Network. Install Strategy Tester Agent!
Hans Krijgsman
184
Hans Krijgsman 2015.12.14 13:08 
DISCREPANCY 1
First, before testing I use F2 to download the M1 symbol data.
I´m using the combination of CCI(4) and RSI(4) as filter. But, CCI(4) is not calculated well in Strategy Tester: 
      //--- RSI filter
      RSI_1=0.0; RSI_2=0.0; // =0.0 doesn`t help
      RSI_1=NormalizeDouble(iRSI(NULL,0,4,PRICE_CLOSE,1),Digits); // NormalizeDouble doesn`t help
      RSI_2=NormalizeDouble(iRSI(NULL,0,4,PRICE_CLOSE,2),Digits); // NormalizeDouble doesn`t help

      //--- CCI filter
      CCI_1=0.0; CCI_2=0.0; // =0.0 doesn`t help
      CCI_1=NormalizeDouble(iCCI(NULL,0,4,PRICE_CLOSE,1),Digits); // NormalizeDouble doesn`t help
      CCI_2=NormalizeDouble(iCCI(NULL,0,4,PRICE_CLOSE,2),Digits); // NormalizeDouble doesn`t help

The conditions to PREPARE a Trade With the Trend Sell position:

      //--- Sell TWT
      //if(Blue_2>Blue_1 && (C1>RedLo_1 || C2>RedLo_2) && (RSI_1>70 || RSI_2>70) && (CCI_1>100 || CCI_2>100)) // doesn`t help
      if(Blue_2>Blue_1 && (C1>RedLo_1 || C2>RedLo_2) && ((RSI_1>70 && CCI_1>100) || (RSI_2>70 && CCI_2>100))) // doesn`t help
        {
         //--- set ENTRY, TP, SL
         orders[SellOpen]=NormalizeDouble(Low[iLowest(NULL,0,MODE_LOW,2,1)],Digits);
         orders[SellTP]=NormalizeDouble(Blue_0,Digits);
         // orders[SellSL]=NormalizeDouble(orders[SellOpen]+((orders[SellOpen]-orders[SellTP])/2)+maxSPREAD*Point,Digits);// RRR 2:1
         orders[SellSL]=NormalizeDouble(orders[SellOpen]+((orders[SellOpen]-orders[SellTP])+maxSPREAD*Point),Digits);// RRR 1:1
         //--- error 130 check
         if(orders[SellOpen]-orders[SellTP]<maxSTOPLEVEL*Point) orders[SellTP]=NormalizeDouble(orders[SellOpen]-maxSTOPLEVEL*Point,Digits);
         if(orders[SellSL]-orders[SellOpen]<maxSTOPLEVEL*Point) orders[SellSL]=NormalizeDouble(orders[SellOpen]+maxSTOPLEVEL*Point,Digits);
         //--- 
         SellSignals++; commentCount++; totalCount++;
         //commentList("\n"+IntegerToString(commentCount,0)+"#"+IntegerToString(totalCount)+" "+PREFIX+trend+"  "+_short+" ("+IntegerToString(SellSignals,0)+")");
         commentList("\n"+"#"+IntegerToString(totalCount)+" "+PREFIX+trend+"  "+_short+" ("+IntegerToString(SellSignals,0)+")");
        }

 The conditions to OPEN a Trade With the Trend (Sell) position:

The conditions to OPEN a Trade With the Trend (Sell) position:
//--- TRADING   CHECK FOR OPEN --------------------------------------+
   if(lastTrade!=Time[0])
     {
      if(orders[BuyOpen]>0.0 && Ask>orders[BuyOpen] && orders[BuyOpen]<Blue_0)
        {
         //--- open Buy
         tradePlaced=(EA_Enabled) ? Buy(orders[BuySL],orders[BuyTP]) : true;
         //--- save last trade time
         if(tradePlaced) lastTrade=Time[0];
        }
      if(orders[SellOpen]>0.0 && Bid<orders[SellOpen] && orders[SellOpen]>Blue_0)
        {
         //--- open Sell
         tradePlaced=(EA_Enabled) ? Sell(orders[SellSL],orders[SellTP]) : true;
         //--- save last trade time
         if(tradePlaced) lastTrade=Time[0];
        }
     }

 

See the image. At both vertical lines, CCI(4) did not meet the Sell condition.

CCI(4) was below treshold 100 on bar[1] and below bar[2]. Not above 100!

Despite these false conditions, Strategy Tester opened a Sell position. 

 

That would be very bad when live trading in automatic mode.....

 

And Yes, it went wrong:

 

Last but not least:

I rebooted my computer, the problem persisted.

Did MT4 uninstall and reboot before reinstall,  the problem persisted.

I think I have correct code and tested various ways to ensure normalized data.....

What is wrong? I think it is in Strategy Tester.

 


DISCREÀNCY 2 

Same trade as in DISCREPANCY 1 

In Journal all trade info is displayed according Digits:

 

 In Results all trade info is NOT displayed according Digits (TRUNCATED):

 

 Again:

I rebooted my computer, the problem persisted.

Did MT4 uninstall and reboot before reinstall,  the problem persisted.

I think I have correct code and tested various ways to ensure normalized data.....

What is wrong? I think it is in Strategy Tester.

 

I´ll notify Service Desk. Any help is welcome. 

Alain Verleyen
Moderator
28651
Alain Verleyen 2015.12.14 13:27  

Don't place your RSI and CCI on the same window, there is a scale issue on visual display.

Also print the values in your EA to check them.

Hans Krijgsman
184
Hans Krijgsman 2015.12.14 13:41  

Thanks for your fast reply Alain, but the problem persist (i have notified Service Desk)

It make no difference..... 

Hans Krijgsman
184
Hans Krijgsman 2015.12.14 14:25  
Thanks for the Print Log hint Alain.
Indeed it shows CCI(4) > 100 in LOG.

However, the problem remains.

What causes the discepancy 
- between Print LOG value (retrieved OnTick Strategy Tester calculation)
- and value in DATA window
- and CCI Graph value/curve in indicator subwindow?

Concrete, WHEN does one read WHAT value? 

Or, how many INDIVIDUAL calculations are made by MT4 Terminal for:
- OnTick as shown in Print Log
- ?? for Graph subwindow
- ?? for Data window ?

And -vital for EA logic development- which calculation to trust?

2015.12.14 13:48:23.533 2015.07.29 07:19  MBFX EA GBPUSD,H4: modify #1 sell 0.10 GBPUSD at 1.55939 sl: 1.56874 tp: 1.55018 ok
2015.12.14 13:48:23.533 2015.07.29 07:19  MBFX EA GBPUSD,H4: open #1 sell 0.10 GBPUSD at 1.55939 ok


2015.12.14 13:48:19.148 2015.07.29 04:00  MBFX EA GBPUSD,H4: CCI_2 2015.07.29 04:00  GBPUSD  H4    130.55556  <----
2015.12.14 13:48:19.148 2015.07.29 04:00  MBFX EA GBPUSD,H4: CCI_1 2015.07.29 04:00  GBPUSD  H4    73.76147
2015.12.14 13:48:19.148 2015.07.29 04:00  MBFX EA GBPUSD,H4: RSI_2 2015.07.29 04:00  GBPUSD  H4    80.25677
2015.12.14 13:48:19.148 2015.07.29 04:00  MBFX EA GBPUSD,H4: RSI_1 2015.07.29 04:00  GBPUSD  H4    81.35546


2015.12.14 13:48:13.782 2015.07.29 00:00  MBFX EA GBPUSD,H4: CCI_2 2015.07.29 00:00  GBPUSD  H4    81.93833
2015.12.14 13:48:13.782 2015.07.29 00:00  MBFX EA GBPUSD,H4: CCI_1 2015.07.29 00:00  GBPUSD  H4    130.55556  <----
2015.12.14 13:48:13.782 2015.07.29 00:00  MBFX EA GBPUSD,H4: RSI_2 2015.07.29 00:00  GBPUSD  H4    72.56297
2015.12.14 13:48:13.782 2015.07.29 00:00  MBFX EA GBPUSD,H4: RSI_1 2015.07.29 00:00  GBPUSD  H4    80.25677


2015.12.14 13:47:43.702 2015.07.28 12:00  MBFX EA GBPUSD,H4: CCI_2 2015.07.28 12:00  GBPUSD  H4    -36.52968
2015.12.14 13:47:43.702 2015.07.28 12:00  MBFX EA GBPUSD,H4: CCI_1 2015.07.28 12:00  GBPUSD  H4    133.33333
2015.12.14 13:47:43.702 2015.07.28 12:00  MBFX EA GBPUSD,H4: RSI_2 2015.07.28 12:00  GBPUSD  H4    57.57431
2015.12.14 13:47:43.702 2015.07.28 12:00  MBFX EA GBPUSD,H4: RSI_1 2015.07.28 12:00  GBPUSD  H4    75.40472

2015.12.14 13:47:23.082 2015.07.28 04:00  Custom indicator MBFX System GBPUSD,H4: loaded successfully
2015.12.14 13:47:18.533 2015.07.28 00:00  MBFX EA inputs: EA_Enabled=1; LotSize=0.1; Slippage=3; mbfxBars=120; mbfxOrder=3; mbfxEcart=1.61803399; dtformat=1; alertppup=0; 

DEBUG=0; 

 

/
To add comments, please log in or register