Using EA "Strategy Test" with data for the current day: Is it possible? - page 2

 
Alain Verleyen:

The justification is probably what Rosh and Stringo said in the old topic : they want backtest to produce always the same result when you don't change settings.

The problem is that this reasoning is incorrect. If a user wants a stable results between test runs, he specifies exact range of dates, using the current date as the end date - and voila - he gets unchanged results (because today is excluded). But if he want the last date always in actual state, he should have a possibility to specify a date in future as the end date. This will allow testing on current day, which is very important and highly demanded.

In other words, the feature request does NOT break test reproducability, whereas current implementation breaks the principle of proper acceptance of user input. If a user wants to test last day and explicitly specify this, he should have an option to do this. MetaQuotes's decision is obviously wrong.

 
Stanislav Korotky:

 This will allow testing on current day, which is very important and highly demanded.

By whom exactly ?

Stanislav Korotky:

In other words, the feature request does NOT break test reproducability, whereas current implementation breaks the principle of proper acceptance of user input. If a user wants to test last day and explicitly specify this, he should have an option to do this. MetaQuotes's decision is obviously wrong.


Can you give one good reason as to why or how this could possibly add any value at all ?

Consider the fact that you in stead of MetaQuotes, could obviously be wrong.

 
Marco vd Heijden:

By whom exactly ?

Can you give one good reason as to why or how this could possibly add any value at all ?

Consider the fact that you in stead of MetaQuotes, could obviously be wrong.

This thread and the other one on Russian forum demonstrate the demand for testing on actual data.

The reason is very simple: I want to test EA on actual data as soon as possible. It was already pointed out by other developers that they are currently compelled to wait until today becomes yesterday for debugging and bugfixing EA on today's quotes. This is ridiculous.

I have enough expertise in software development to know where I'm wrong and where I'm right. This is the latter case.

 

i have enough expertise to tell you that you are wrong.

you can only find what you are looking for by testing your EA on live market data.

i suggest you study the inner workings of the tester some more and find out why and what the differences are.

i fully understand MQ's decision and agree that it is useless to argue about this.

it only shows a lack of understanding on your part.

 
Marco vd Heijden:

i have enough expertise to tell you that you are wrong.

you can only find what you are looking for by testing your EA on live market data.

i suggest you study the inner workings of the tester some more and find out why and what the differences are.

i fully understand MQ's decision and agree that it is useless to argue about this.

it only shows a lack of understanding on your part.

That's incorrect. If an error is occurred today, you can not reproduce it on live market data, because every situation is unique, and current live data is not those "live" data that caused the error 1 hour before. What we need is an ability to test on every required depth of history, including the "near" intraday history. Period.

Please read what is suggested carefully again.

It seems this is you who do not understand the issue. I have no intention to argue with you or MQ.

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Библиотеки: Symbol

fxsaber, 2018.07.09 14:20

// We include the current day in backtest
#property script_show_inputs

#include <Symbol.mqh> // https://www.mql5.com/ru/code/18855

input int Offset = -24 * 7; // Offset in hours

#define HOUR 3600

void OnStart()
{
  const SYMBOL Symb(_Symbol + "_Offset" + (string)Offset); // Создали символ

  if (Symb.IsExist()) // Если символ создан
  {
    Symb.CloneProperties(); // Скопировали свойства
    
    MqlRates Rates[];

    // Сместили время баров
    for (int i = CopyRates(_Symbol, PERIOD_M1, 0, (int)SeriesInfoInteger(_Symbol, PERIOD_M1, SERIES_BARS_COUNT), Rates) - 1; i >= 0; i--)
      Rates[i].time += Offset * HOUR;
      
//    Symb.CloneTicks(Ticks);

    // Записали смещенные бары и включили символ в Обзор рынка
    if ((Symb.CloneRates(Rates) > 0) && Symb.On())
      ChartOpen(Symb.Name, PERIOD_CURRENT); // Открыли график нового символа
  }
}
 
Just change your system date to tomorrow . close all MT5 tools and reopen . and select end date tomorrow or more, now you can see data of current day in tester .
 
Mohammad Inanloo #:
Just change your system date to tomorrow . close all MT5 tools and reopen . and select end date tomorrow or more, now you can see data of current day in tester .

Have you checked?

Reason: