How to test trading strategies – first steps

This discussion outlines the benefits, based on my own experience, of using a proper application for testing a discretionary trading strategy for the financial markets.

The discussion focuses on the ForexTester3 application, simply because I have used it extensively, however the benefits, pros and cons discussed are quite generic, regardless of the application used.

‘Primitive’ Testing Methodologies

Ideally, a trader should articulate, document and test his/her trading strategy prior to trading with real money in the live markets.  It is probably safe to assume that many retail traders skip the testing stage for various reasons – see earlier post back in April 2017 “Traders’ Reluctance in back-testing strategies”.

The rest of this article proceeds on the assumption that a trader does hold testing as vitally important and goes ahead and does it.

First steps – this might simply entail looking at the charts after all price action has taken place and pinpointing the entry for the trade.  This tends to be plagued with hindsight bias, however, it can actually be a good way of generating trading strategy ideas.

As opposed to seeing the entire price action, including hoTesting Cover Screen with Handw potential trades would have unfolded, a step in the right direction encompasses hiding the price action to the right, be it by holding a piece of paper over the screen, or,  slightly better, rolling the chart forward one bar at a time using a platform such as MT4 or the chart package from FXCM.

This technique is quite prone to accidentally revealing too many bars at a time.  And it is difficult to track potential results.

In my experience, neither of these approaches are effective and will not be very helpful in ascertaining whether a strategy idea has merit or not.

Using a testing application – Example: ForexTester

A much more professional and meaningful is to use a proper application for testing and practicing a strategy.

Presumably there are several out there, however I have only used the ForexTester application.  It is a simple one-off license – the current version, ForexTester3 (FT3) retails at US$250.  I’ve been using the product on and off for more than 5 years.  Is it the best product on the market? I don’t know, to date I have not felt the need to look for other solutions.5

Here’s a link to the ForexTester site and product.  Have a look at their site and check out whether the product would help you.  [ I figured it’s time I become an affiliate of theirs, given how often I have mentioned the product on my blog over the last 4 years! ]

In FT3, rolling forward of bars is not done with mouse scrolling but by pressing certain keys on the keyboard. Uploading external data (a lot of FX data is automatically included) is fairly straight-forward, assuming one has a data source.

FT3 allows the user to enter trades, set stops and targets and to manually manage the trade and to vary position sizing.  Results are recorded in a history file and the trades are automatically marked on the chart.  It’s also possible to make notes on the chart, draw support and resistance lines, mark out technical patterns and so on – very similar to a typical MT4 platform.

FT3 Screenshot

Advantages & Disadvantages

It’s a good method for practising trade execution and for trading through historical data at a rapid pace, as opposed to paper trading through the markets in real time.  The downside are small nuances such as time differences in respect of daylight savings that play havoc when attempting to figure out when exactly scheduled news events occur.  It can also be a challenge to turn back time and then enter a trade and thus “cheat” once seeing the subsequent price action. This sounds rather silly but it is actually a temptation when trying to pull together testing results and to build one’s confidence.

FT3 is more beneficial, or basically, best suited to discretionary traders (as opposed to traders looking to head down the automation route). Discretionary traders trading manually, albeit ideally using a few simple rules, can benefit greatly from a FT3 type product.

Moving from identifying trades on charts to rigidly trading through historical data in a testing application, can be a significant leap for a trader. It quickly increases the number of trades entered, managed and exited.  It provides quick feedback whether something is working or not – hence, it serves greatly in the strategy development process, and it provides a great practice and learning environment. And rest assured, if one can’t produce a profit in the testing environment then it’s highly unlikely that profits will be achieved in real trading. It therefore provides a good testing ground, or test to pass.  At this point refering back to Lance Beggs‘ diagram is quite appropriate  (the diagram below incorporates some comments of my own):

Trading Project Plan (Abbrev)


A common reply here is to say that a testing application does not provide a realistic environment.  Discretionary traders take additional factors into account – related markets, the news flow of the day, gut instinct and feelings generated throughout the day.   Arguably, particularly early on, a trader should ideally rely less on anything that cannot be articulated and/or documented, and to rely heavily on rules and check-lists, which then lends itself naturally to practice in a testing application!


My goal here was to convey that testing with an application such as ForexTester can be very beneficial in a trader’s learning path – as well as a significant time-saver to complete a good sample size of test trades.  Testing in an application is a good step forward along the path.  That has been my experience – so wanted to get the idea out there.

By the way, search on the Testing Category for other blog posts relating to this topic.

More advanced testing methods

Further steps in the journey of testing a trading strategy entail downloading data and create simple strategies in applications such as Microsoft Excel or MATLAB, and further along from that again, learning how to code strategies using programming languages such as EasyLanguage or Python and using platforms such as EL ExampleTradeStation or  MultiCharts or Expert Advisors (EA’s) on the MT4 platform. Moving into programming (something I started 2-3 months ago) is again a big jump along the path.  Though each step brings, along with increased benefits, new challenges and issues.

Hope this was informative and helpful.   Happy trading everyone!





This entry was posted in Testing and tagged , , , , , , , . Bookmark the permalink.

One Response to How to test trading strategies – first steps

  1. Hannah Cote says:

    Thanks for the tips. I would prefer using MATLAB or Excel for testing trading strategies.

    Liked by 1 person

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s