Offline Test Helper

///Offline Test Helper
Offline Test Helper 2016-10-16T18:53:49+00:00

Sending Offline Chart to Strategy Tester (25% model)

OfflineTestHelper is a simple script that helps with a simple testing strategies, nested in offline charts. The testing quality is displayed as 25%, though it highly depends on the original chart fidelity.

The Strategy Tester included in the Terminal only allows picking testing timeframes from a drop-down menu, which contains standard values M1, M5 etc. On the contrary, the offline charts never can have such timeframe value in a live terminal.

The script replaces one of the standard timeframes by the offline chart. It works with an artificial broker to prevent the refresh of such chart with on-line data.

Input

Input Dialogue

Input lets you decide for alternative server name. It is useful, when you prepare multiple offline charts for testing, preserving all of them for later use. Otherwise keep the default.

The second option would systematically overwrite the candle open value by a close value of the preceding candle. Use this settings for offline charts with displacement of the open price, like a reversal candle on Renko charts has.

Dialog

Result Dialogue

The First Steps

Watch the video from Theo on how to use the Helper with the offline chart.

FXT Builder
Are you rather looking for the 99% (tick) modelling quality?
FXT Builder

What does the helper after dropping on a chart:

  1. Creates a virtual server folder. Absence of the on-line server will prevent the terminal from updating any chart.
  2. Copies essential Metatrader data to the new server folder (instrument list with latest quotes).
  3. Creates a copy of the current offline chart.
  4. Set its timeframe to M1.
  5. Removes zero-volume candles (they are not compatible with the tester).
  6. Stores the new chart into the virtual server folder.

Then it displays a result dialogue. You have a chance to stop the script now.

When you decide to stop, your data is prepared for use with any MT4 terminal instance. You may copy/move your virtual server folder to another terminal for testing, login into the virtual server in the other terminal.

When you decide to continue with the Restart, your current terminal instance will be used for testing. It will force the entire MT4 terminal restart.

  1. The terminal would request to login into the virtual server. Change only server to value you filled in the input (“test” by default). Leave other fields unchanged. Confirm. (skipped in the latest version, using “test” hardcoded)
  2. The terminal shuts down, unbinding current server data.
  3. The terminal used to start up now. Unfortunately, this feature seems to be discontinued, so start the terminal using its alias as you would usually do. (fixed)
  4. Terminal starts with the virtual server “test”, the connection status remains “Disconnected”.
  5. Ignore whatever you see in the charts in front of you. Switch to Strategy Tester (ctrl+R) by hand.
  6. Pick symbol of your converted chart.
  7. Pick M1 timeframe (your offline chart is stored as M1).
  8. Pick your strategy.
  9. Test.
  10. If you finished testing, log-in back to your original account&server (double click your previous account in the Navigator).

94 Comments

  1. Dylan May 7, 2015 at 9:58 am - Reply

    Hi OVO,
    When I dropped the script onto the renko chart like in your video, I got this error: unsupported legacy hst version. Use b509-compatible script. My MT4 is build 765. please advise. Thank you

    • administrator May 7, 2015 at 10:36 am - Reply

      Hello Dylan, since build 524, the Terminal data file structure changed. Though later the MQ added ability to read the legacy structure as well, all scripts in this site (and this script) were already designed to work with the native file structure only. If you intend to use this script with a third-party generator, ensure it uses the 600-like structure or ask the authors for a fix.

  2. Dylan May 7, 2015 at 11:38 am - Reply

    Cool, I got them working now. Charts look clean and beautiful. Back-test is smooth. Thanks man.

  3. thomas June 13, 2015 at 6:31 am - Reply

    I did every you did in your video when I dropped my template nothing happened thank you

    • administrator June 13, 2015 at 7:01 am - Reply

      Yes, unfortunately this particular functionality has been killed in MT4 since build 825.Currently you have to start the terminal by yourself. I will try some workaround when I have free time.

  4. thomas June 17, 2015 at 8:53 am - Reply

    is there a place that you know of were you can down load an order mt4 that will work with this back tester thanks

  5. ivolux June 18, 2015 at 9:25 am - Reply

    Hi.
    Does this script replaces fxt files too? Or just Offline chart with M1 chart in which case Strategy tester generates fake ticks inside the offline chart.

    • administrator June 20, 2015 at 7:33 am - Reply

      Hello ivolux, as the banner reads, it does nothing more than converts the particular chart into the M1. FXT file is generated by the Strategy tester as usually.

  6. Kaushik Hirpara June 19, 2015 at 10:21 am - Reply

    I got this error: unsupported legacy hst version. Use b509-compatible script. what i do ?

    • administrator June 20, 2015 at 7:36 am - Reply

      Hello Kaushik, as the banner on the top reads, it does not support file formats used prior the build 600.

  7. Kaushik Hirpara June 20, 2015 at 5:08 pm - Reply

    ok sir i will trey

  8. Kaushik Hirpara June 20, 2015 at 5:15 pm - Reply

    how can i use prior the build 600, please tell me sir

  9. Kaushik Hirpara June 22, 2015 at 5:14 pm - Reply

    hello sir please reply me , how to back test with renko ?

    • administrator June 22, 2015 at 5:54 pm - Reply

      I do not know. If you like to use this helper script, find a generator, which creates file in proper format, like any in this site. The terminal has been using the new format for more than two years.

  10. COGS June 24, 2015 at 1:18 am - Reply

    Hey

    So I drop the script onto the custom timeframe chart, login “test” for server. Go to restart, not connected to a server, run “strategy tester”, test on 1 minute chart visual chart pops up

    “Waiting for update” …………..any suggestions ? No getting an data for some reason.

    I downloaded the data for history center also,

    Any help would be great.

    Thanks

  11. SK September 25, 2015 at 2:48 pm - Reply

    Will this offline test helper work for all offline charts such Renko, Mean Renko, Range bar, Tick chart and Flexibar charts for back testing manually?

    • admin September 25, 2015 at 3:16 pm - Reply

      Not sure what you meant by manual testing. The script transfers the single (preferably offline) chart into virtual broker environment to appear as M1 chart. You may test EAs on this single chart like it were M1 chart.

  12. Benny September 29, 2015 at 5:45 pm - Reply

    Hi Sir,

    Thank you for your great script. I can run with the test server as you suggest. But I got the error “OrderSend Error 131″ and ” Error opening BUY order : 131″
    , even with MACD and Moving average sample EAs from MetaQuotes.
    Please help.

    Thanks!

  13. Benny September 30, 2015 at 5:39 pm - Reply

    Hi Sir,

    It works. Thank you for your great work.

  14. Andy October 2, 2015 at 11:53 am - Reply

    Hi, I have been using your excellent Range bars and have started using the back testing tool (thanks for link above, very useful). When I back test I am only achieving about 25% tick accuracy. I am thinking of using TickStory, is your Offline Test Helper compatible with TickStory and would this increase accuracy? If not do you have any other ideas to increase accuracy?

  15. Andy October 2, 2015 at 3:58 pm - Reply

    Ahhh…just spotted banner that says no tick by tick compatibility, guess that answers my question.

    • admin October 8, 2015 at 6:06 am - Reply

      Yes, the 25% is a standard accuracy for M1 chart testing.

  16. Manuel October 6, 2015 at 11:22 am - Reply

    hy
    everything works just fine till the moment I klick “start”. Just the peep tone comes but the test it self does not run. what can i do ?

    • admin October 8, 2015 at 6:04 am - Reply

      Hello Manuel, difficult to advice, I would start with adding some diagnostic outputs to the EA first. but actually the reason may be whatever.

  17. annoyed October 22, 2015 at 3:38 am - Reply

    HELPPPPPP ……………receiving error: you are in the test account login to another one. Using build 670

    • Milan October 22, 2015 at 5:44 am - Reply

      Hello annoyed, try to do what the message says, i.e. log in to a valid account before using the script.

  18. Tyrell November 11, 2015 at 8:37 am - Reply

    I keep getting unsupported legacy error have no idea what im doing wrong ive been using your offline tester for months now and never had any issues… please skype me @ vip.signals or respond to this so you can help thanks !

    • Milan November 11, 2015 at 8:46 am - Reply

      Hello Tyrell, you probably changed the way you create the offline chart (the generator). The helper won’t help with the offline chart which has pre-600 format. Though this format can be displayed in the terminal again, it is not applicable in the tester.

  19. Beau November 16, 2015 at 4:02 pm - Reply

    Hi there,

    I am trying to use your script to backtest my EA on an H8 time frame. For this, I need to use imported m1 data, which means I don’t log into any server (so the data doesn’t update over my imported data.) But when I attempt this, and drag the script onto the H8 offline chart, it tells me I’m already logged into a test account. From your instructions, it appears that I need to be logged in to a live/demo account before I drag the “offline test helper” script onto the offline chart. However if do that, wouldn’t my imported m1 data be overwrtten by live data at some point? Thanks for your help.

    • Milan November 17, 2015 at 4:18 pm - Reply

      Hello Beau, I updated the script, now it should run also on the disconnected account. Please download version 2.05.

  20. Beau November 17, 2015 at 9:47 pm - Reply

    Hi Milan, thank you for the response. I downloaded and ran the updated script. Now when I put the script on my offline chart I’m getting the message “something went wrong”.

    • Milan November 17, 2015 at 10:26 pm - Reply

      Some of the files symbols.raw, ticks.raw, symbols.sel and symgroups.raw is missing in the source history folder.

  21. Beau November 17, 2015 at 9:52 pm - Reply

    Any ideas why that is happening? Thanks again.

  22. Beau November 19, 2015 at 4:50 am - Reply

    Thanks Milan – works great now! Great script…thanks for sharing.

  23. behzad December 27, 2015 at 7:00 pm - Reply

    I have got the error Message “Incorrect Account”. you are in the test account login to another one.

    • Milan December 30, 2015 at 5:14 pm - Reply

      It is just a reminder you did not return back to your original source account. In the test account, the chart shape might be very distorted.

  24. behzad December 28, 2015 at 12:29 pm - Reply

    what is the user name and Passwort to login in test server please?

    • Milan December 30, 2015 at 5:10 pm - Reply

      There is not any, just leave the entries as they are.

  25. Anthony Drapers December 30, 2015 at 4:15 pm - Reply

    Hi Milan,

    I cannot get the Backtester to work with the results of the OffLine Helper.. I run MT build 910, downloaded the latest version of Offlinehelper and all other indis.
    When I run Offlinehelper on a 70 point Point o Chart on the DAX CFD which is called ‘Ger30Mar16’ in my case.. it does generate the directory and the files.
    However, when I confirm the script and restart the terminal, the terminal hangs and it keeps on hanging until I remove the directory and then restart.

    When I do not allow the script to automatically close down the terminal, and when I link to the server and start op the Backtester and define the testperiod from 2015.12-01 to 2015.12.04, the log says: TestGenerator: no history data ‘Ger30Mar16’ from 2015.12-01 to 2015.12.04

    Any idea what is wrong here? Look forward to your response,

    Kr. AD

    • Milan December 30, 2015 at 5:09 pm - Reply

      Hello Anthony, for the build 910, please try to download the script on this page.

  26. Anthony Drapers December 31, 2015 at 10:21 am - Reply

    Dzzzing… works like charm Thank you! I can see, that in this case with a 4.5 PO chart on the DAX CFD there is appr. 2 days of data available. Is it possible to get more data in? Tnx again and….All the best for 2016!!

  27. rodrigo December 31, 2015 at 2:59 pm - Reply

    hi, i try to use offlinetesthelper script into my mt4 910 build, but doenst work, i receive this message: unsupported legacy hst version. use b509- compatible script. can help me?:

  28. behzad December 31, 2015 at 8:43 pm - Reply

    I have this Problem too Unsupported legacy hst version. Use b509-compatible script

  29. Sarkis January 3, 2016 at 12:48 pm - Reply

    using the Offline tester helper – Offline Chart to Strategy Tester…. it only converts using M1, will the strategy tester show accurate results if my EA enters on a bar close and exits after a fixed number of points? the issue i have is the tester is not entering exactly where the EA is programmed to enter (e.g on a renko bar close) it enters early and i suspect its because of M1 data. anything i can do to test accurately? do i need tick data for this or does the M1 data suffice for a bar close entry.?

  30. James January 13, 2016 at 3:55 pm - Reply

    Hello, When I make the backtest of renko graph does not show with bricks, appears with normal graphics, which can have happened?

    • Milan March 2, 2016 at 10:02 am - Reply

      There are no valid charts in the test account, ignore them. The only purpose is selecting the M1 timeframe in the Strategy Tester.

  31. Ahmed March 31, 2016 at 1:12 pm - Reply

    I have this Problem too Unsupported legacy hst version. Use b509-compatible script

    • Milan March 31, 2016 at 1:43 pm - Reply

      It detected file format used in MT4 up to build 509. It is not supported by this script.

  32. Marc Brown April 1, 2016 at 2:51 am - Reply

    My broker, Forex.com, says I will not be able to actually trade live a fully-automated range-bar EA because my chart is off-line. Does this script enable that, or is this only for testing?

    • Milan April 1, 2016 at 10:52 pm - Reply

      Your broker has no clue what chart you are trading from. Yes, you may place the EA on the offline chart and let it trade.

  33. Bruce April 5, 2016 at 11:01 am - Reply

    Hello Milan,

    After reading this thread with all the links I’m confused if the OfflineTestHelper currently is function on build 950?

    Thx

    • Milan April 5, 2016 at 11:18 am - Reply

      I assume it works on build 950. The other product is not yet released.

  34. pswitek April 30, 2016 at 10:52 am - Reply

    Is it possible to run in strategy tester both source chart and range chart? This test helper enables only range chart

    • Milan April 30, 2016 at 10:56 am - Reply

      As far as I know the MT4 tester can serve only a single chart and it is not likely to change in the future.

      • pswitek May 8, 2016 at 8:17 am - Reply

        I tried to open M5 chart in ST, then load RangeBars on this chart and open offline chart. Some of indicators allowing to test multiple timeframes works like this. Unfortunately, RangeBars does not work on chart opened in StrategyTester. Maybe consider it as a featire for next releases

        • Milan May 8, 2016 at 8:29 am - Reply

          Hello pswitek,
          With the Test Helper you can forward any generated offline chart to the disconnected test environment as M1 chart, nothing more. It has no relation to the RangeBars indicator. The RangeBars indicator is currently not compatible with the strategy tester environment.

  35. Steven May 3, 2016 at 12:43 pm - Reply

    Hi Milan,

    Love the charts, can one use MT4 Indicators on them like MA’s and Bollinger Bands etc?

    • Milan May 8, 2016 at 8:32 am - Reply

      Hello Steven, theoretically any indicator can be useed, unless it is designed for and limited to particular timeframes.

  36. wunup May 12, 2016 at 3:57 am - Reply

    please hurry with that fxt builder, backtesting so far is super flawed and deceiving. Will fxt builder be able to backtest renko bars at real price points and not the artifical opens.

    • hal June 15, 2016 at 10:46 pm - Reply

      +100
      It is very necessary thing…

  37. Steven May 17, 2016 at 10:21 am - Reply

    Thankx Milan.

    All going well, looking forward to back testing. So good to get decent support to all my other email queries I did.

    Great job!

  38. Steven June 8, 2016 at 1:58 pm - Reply

    Hi Milan,

    I have been back testing, however the EA’s do not perform as they should on these charts.

    1. I test EA on normal time based candle = working
    2. I test same EA on Renko chart after compiling and testing on 1min EUR-USD, and some of the functions or filters just do different things than they are meant to
    3. I have tested about 40 EA’s to be sure.
    4. I have wiped my pc and had windows 8 reinstalled and retested – same problem.

    It seems the script might be interfering somehow with the proper function of the EA.

    Has anyone else had this problem?
    Is there a way to fix it?

    Whatever help you can give would be great, thanks.

    • Milan June 16, 2016 at 10:08 am - Reply

      The script creates the M1 chart from the original offline chart, nothing more. The tester treats them like common price candles, ignoring their original construction rule. The candle mostly contains artificial open and close prices, and often they are a way far from the original tick. It may skew the result a lot. At least the “align close to open” should be used to get more realistic result for Renko types, though it may distort the chart, and it may not fit the EA logical calculations.

      • Thomas February 26, 2017 at 12:06 pm - Reply

        Hi Milan,
        maybe a stupid question: Could you please elaborate what you meant by using “align close to open”? Since in the backtest the next bar open might not match in the BT to the real trading I believe that is what could make the BT more realistic, however I did not find any option which called “align close to open” which could be applied.
        Thanks!

        • Thomas February 26, 2017 at 1:14 pm - Reply

          Found the answer myself. Sorry for bothering..

  39. Wohid Noman June 25, 2016 at 10:50 am - Reply

    Hello Admin, when I drag the script on the chart it gives me an error msg. “ticks.raw copy failed”. Am I doing something wrong?

    • Milan June 25, 2016 at 10:56 am - Reply

      If the MT4 installation is new, just restart the terminal. If the problem persists, pleas contact me using the Contact Form.

  40. Wohid Noman June 25, 2016 at 11:24 am - Reply

    That was super fast and solved my problem. Thanks a lot. I now have renko in test environment but the problem is that the EA i am testing would not open any trade. The EA works in other accounts just fine. Is that me again?

    • Milan June 25, 2016 at 11:41 am - Reply

      The script has no direct impact on the Strategy tester mechanics, it delivers the M1 chart and copies supporting files to a virtual account. So it takes the spread and all other account-related values from the original account. Check if the weekend values make any impact.

  41. Wohid Noman June 25, 2016 at 11:42 am - Reply

    Sorry it was me again. Thanks for your help admin.

  42. Wohid Noman June 25, 2016 at 12:28 pm - Reply

    Do we have a release date for FXT Builder yet?

    • Milan June 25, 2016 at 12:34 pm - Reply

      Well, should have been like a moth ago, I just did not make it. Most likely this Monday.

  43. Wohid Noman June 25, 2016 at 12:44 pm - Reply

    Would that be free to someone who has purchased OmniaBar chart package by any chance? 🙂

  44. kornlert August 26, 2016 at 12:27 am - Reply

    how to test renko more than 2048 candle ?i use off line test helper that cannot load more than 2048….

    • Milan August 26, 2016 at 12:17 pm - Reply

      Your initial chart has to be as long as you require. In addition, the tester skips a bunch of initial candles in the chart, so you should increase the candles count by 1000 before sending the chart to the tester.

  45. kornlert September 7, 2016 at 1:10 pm - Reply

    why are there difference of renko bar in tester and real account
    i notice that in tester ,there are more renko bar than real account very much
    example xauusd 15/07/2015 there are 2000 bar in tester, 30 bar in real account?

    • Milan September 7, 2016 at 7:19 pm - Reply

      Hello kornlert, to be honest, I am not quite sure what you meant. If you are complaining about this script, it transfers exactly the same chart to the tester, it cannot add bars.

  46. kornlert September 9, 2016 at 10:19 am - Reply

    ON YOUR OFFLINE TEST HELPER, I RUN BACKTEST OF ANY EA AND I FIND THAT MY MODELLING QUALITY IS ABOUT ONLY 25%,,,,WHY?
    AND HOW TO CORRECT

    • Milan September 9, 2016 at 11:39 am - Reply

      As mentioned above, the 25% is a standard accuracy for M1 chart testing. You may improve the quality by using FXT Builder instead. With the optional 3-rd party launcher you would get the 99% number displayed in the test report.

  47. flyingmac October 26, 2016 at 10:33 pm - Reply

    I found this tester very usefull in the past but it doesen´t seem to work anymore. Just tried on different mt4 platforms from diferent brokers and the result was about the same. Any ideas??

  48. Elvis December 11, 2016 at 10:18 am - Reply

    i just wish that it would not skip any bars but thanks for the scrip good work

  49. Mohamed Nabi December 25, 2016 at 8:30 am - Reply

    Hello there ;
    Thank you for this amazing script however when i tried to follow the guidelines provided here i got error message says ” Unsupported legacy hst version . Use b509 compatible script ” can any one help

    • Milan December 25, 2016 at 2:20 pm - Reply

      The question was several times discussed, this script does not support chart formats used in Metatrader in 2013 or earlier.

  50. a March 26, 2017 at 5:16 am - Reply

    this isn’t working. all the files are in the correct folder, so i proceed to follow the steps. however, when i get to the point where i want to click yes after bringing up the offlinetesthelper, the terminal restarts without bringing up the login box. it doesn’t allow to run it as test. it just goes to a demo offline chart when it pops back up without any bars

    • Milan March 26, 2017 at 10:08 am - Reply

      The login box is filled automatically, you do not need to fill it yourself in the recent versions.

  51. Ronald March 26, 2017 at 2:17 pm - Reply

    hey everytime i put the script in and when the box pops up and says it will restart after i put test in the server. as soon as i click yes it restarts and doesn’t give me the chaance to put test in the server

    • Milan March 26, 2017 at 2:58 pm - Reply

      The login box is filled automatically, you do not need to fill it yourself in the recent versions. It has been working like that for about two years.

  52. Ogie Dimitrov May 23, 2017 at 12:30 am - Reply

    Hello Milan, I am about to order the key for the renko builder and the backtest helper. Before I do that I wanted to share with you how I have tested the renko EA I have built so far.
    I delete all charts from the terminal and also delete all history files. I only leave 1 min chart for the currency pair i want to test with the renko chart builder set to build the renko charts for 5 min time frame. After restarting the platform I ONLY open the offline chart 5 min and it is a pure renko chart. MT$ only downloads the history data for the time frame on the open chart. If I do not open the 5 min chart it only takes the data from the offline chart. I can also use the built in tester of MT4 to test the EA on 5 min charts.
    Here is my question for you – we all know that MT4 does not store tick data and that is why we have to use 1 min chart. If I understand it correctly your renko chart builder buidls the renko charts on ticks, not on closing prices – is that correct? If that is so, the charts built from the live feed are built on ticks, but the charts built from history data are built on closing prices of 1 min- am I correct?
    My second question – would there be a diference in the testing results between your backtest helper and my way of testing. If Yes – I would appreciate it if you tell me why?
    Sorry for the lenghty post – I hope it did not annoy you.
    Thanks and regards

  53. Greg Mitchell July 15, 2017 at 5:55 pm - Reply

    Dear Milan, i have heard that downloading data from within the MT4 history center is not the best data to use for strategy testing or back testing, Would you agree with this ?
    Will i get more accurate back test results if i download Tickstory and get the tick data from Dukascopy ? (which automatically converts it to FXT files)
    When downloading the tick data do i only need to download the 1 min data ? or should i also download the 5min 15min 30min etc..? Or is there no need to get the other time
    frames only the 1 min data ? As the back testing on the strategy tester is all done on 1 min.
    Or if the modeling quality is only 25% regardless is it ok to use the history center data from MT4 ?
    Thanks for your help.
    Greg

    • Nathan J July 18, 2017 at 3:38 pm - Reply

      Hi guys, I have the exact same question, as I can only get 25% modelling quality via MT4 data… If I use tickdata will this quality be improved once converted into renko bars?

      • Milan July 18, 2017 at 4:00 pm - Reply

        This script has no ambitions, it takes ANY chart as it is, and copies its content to the M1 chart of a virtual ‘test’ broker. It also removes the zero volume candles (they would stop the backtester). Then the test is using the standard MT4 test engine. According to MQ definition of accuracy, the M1 testing reads always 25% regardless of its content.
        If you are interested in tick based testing (aka 99% testing) of offline charts, you need to follow the link in the upper right corner to FXT Builders.

  54. Nathan J July 19, 2017 at 3:29 pm - Reply

    I had this working yesterday, and now today I get an error…

    “Cannot call ‘Kernel32.dll::CreateFileW’, ‘Kernel32.dll’ is not loaded”

    I have checked and I do have the ‘Kernel32.dll’ located in the libraries folder.

    There is no other clue as to why this is happening. Any ideas? I am running windows 10 64bit, however as mentioned this worked yesterday without issues…

    Note: I just tried the demo for RenkoFxtBuilder, and get the exact same problem… I also tried running the MT4 in administrator mode but it did not help…

  55. roman August 19, 2017 at 12:19 pm - Reply

    OfflineTester doesn’t work with hybrid renko bars(( – (45000 zero bars….).

Leave A Comment

Spam Blocking by WP-SpamShield