Does backtesting work on Linux?

To add comments, please log in or register
nadiawicket
642
nadiawicket  

Just tested  the exact same EA on VM Win10 and on Debian,

2 completely different results.

Backtesting is not working on Linux then,

Can anyone confirm this?

nadiawicket
642
nadiawicket  

Anyone?

Unmatched data error is give even when you run a completely empty EA straight out of the MQL wizard.

VirtualBox time.

Marco vd Heijden
Moderator
7270
Marco vd Heijden  

Yes that works.

Make sure that your history data is fully loaded.

Sergey Golubev
Moderator
105173
Sergey Golubev  
nadiawicket:

Just tested  the exact same EA on VM Win10 and on Debian,

2 completely different results.

Backtesting is not working on Linux then,

Can anyone confirm this?

If it is two Metatrader instances with the different number of bars for testing (and different testing time) so it should be different.
As to Linux ... I do not have PC on Linux sorry but I think that backtest should work there.

Sergey Golubev
Moderator
105173
Sergey Golubev  

Anyway, if it is related to MT4 so read this post:

-----------------

How to prepare MT4 for backtesting/trading with some pair
https://www.mql5.com/en/forum/9950/page94#comment_4070616 

How to Start with Metatrader 5
How to Start with Metatrader 5
  • 2017.02.08
  • www.mql5.com
I decided to create this thread to help to myself and to the others to start with Metatrader 5...
nadiawicket
642
nadiawicket  
Marco vd Heijden:

Yes that works.

Make sure that your history data is fully loaded.

What exactly do you mean check that the history data is fully loaded?

I don't want to use MetaQuotes data as I only want to use my broker's data. Downloading data from history center gets me the MetaQuotes data.

How to make sure my broker's data is fully loaded correctly?

You mean

Sergey Golubev:

Hi peperibal:

It is not a fully related to your questions but it is about what I am doing when I want to backtest/check/trade using some pair for example:

1. I open MT4.

2. Open USDJPY H1 chart (if I want to do something with this pair).

3. Go to Tools - History Center, find this pair and double mouse click on every pair's timeframe so

before double-mouse click on every timeframe there:


after:


So, by this action - I downloaded the history for this pair to MT4.

4. Now I want to transfer this history to the chart (to trade, for backtesting, and so on).

So, I change timeframe for USDJPY chart to M1, right mouse click on any space of the chart and choose 'Refresh', and all history is loaded to the chart - and I can see it from the Journal about how many bars were loaded from my MT4 History Center to this chart:


Same with M5 timeframe (Refresh), same with M15 and so on up to MN.

----

After that only I will backtesting/trading or whatsoever anything with this pair (USDJPY in our example).

Just my experience

?

After terminal displays:

2018.07.19 11:41:37.385    HistoryCenter: 20583 bars imported in 'EURUSD_1'
2018.07.19 11:41:35.428    HistoryCenter: synchronize 'EURUSD_1'
2018.07.19 11:28:45.919    HistoryCenter: 20570 bars imported in 'EURUSD_1'
2018.07.19 11:28:44.082    HistoryCenter: synchronize 'EURUSD_1'

I proceeded to Refresh the chart. Chart itself did not change at all hoever it looks like improvement because now it does not give the "Unmatched data error" upon starting the backtest. Much appreciated.

Marco vd Heijden
Moderator
7270
Marco vd Heijden  
nadiawicket:

What exactly do you mean check that the history data is fully loaded?

If the historic data for the time span you want to test is not (fully) available, a download will be initiated that (partly) downloads some extra data.

Everytime you run the tester it will download a bit more data, unless the (M1) data is readily available.

This can cause a huge difference in test results, especially with robots that run on tick.

That is why i said to make sure that the data is fully loaded / present.

Usually the historic data offered by a broker is much less then what's available from MetaQuotes so it's good to check on forehand whether the data exists or not. 

nadiawicket
642
nadiawicket  
Marco vd Heijden:

If the historic data for the time span you want to test is not (fully) available, a download will be initiated that (partly) downloads some extra data.

Everytime you run the tester it will download a bit more data, unless the (M1) data is readily available.

This can cause a huge difference in test results, especially with robots that run on tick.

That is why i said to make sure that the data is fully loaded / present.

Usually the historic data offered by a broker is much less then what's available from MetaQuotes so it's good to check on forehand whether the data exists or not. 

Now I get you.

So if broker is only giving me 6 months of 1m data and I want to backtest the EA since 1 year ago instead of 6 months, the rest of the data needs to be downloaded.

So we should just backtest for the 6 months if the broker only gives us 6 months then if we want to backtest with broker's data.

How can we make sure this extra downloaded data comes from our broker? I just clicked on the 1m section of the instrument in the history center, as per the previous guide, and then clicked refresh. After this, the error was gone from tester and I assumed everything was ok for now. I need to further test though.

Marco vd Heijden
Moderator
7270
Marco vd Heijden  

It's the way around.

If you only have 6 months, you should only test for 6 months.

You can try that on your demo account because the historic data on live trading servers is usually limited to prevent heavy server loads from terminals that want to download 30+ years of historic data.

What is wrong with the MetaQuotes data ?

To add comments, please log in or register