A journal of using a Forex back testing application

Introduction

I have been asked to review a backtesting application and provide honest feedback. I have chosen to write a journal of sorts in the Trading Tech & Tools section of the babypips forum to record my journey through the testing of this product.

On a personal basis this is a timely opportunity to progress my own 2021 Forex trading plan, late that it is.

However, for the purpose of this test, I shall be using some indicators which I hope almost everyone will be familiar with. I will be aiming to provide weekly updates of progress in the testing of this product, and will try my best to report what I have tested, why I have tested it, and the outcomes of my experience with it. Basically, does it do what it says on the tin?

I will be mindful that the audience may range from complete novice to experienced trader with a lot of automated testing experience. If you are one of the latter, please go easy on me, but please do give me the benefit of your experience and ask questions. The review is aimed at those who have not yet tried to back test their plans (or those who don’t even know why back testing is an integral part of a trading plan).

Disclosure
This will be the first time I have spent more than a few hours trying to use a software designed for automated back testing. I have tried (and failed) to use MT4 about a decade ago. I had planned to create a test strategy and plan in TradingView, but have failed to progress that in the last three months.

During the next 12 weeks, it is my intention to document my journey in some detail, using as simplified version as possible of an actual test strategy and plan. I will define the objectives of the tests and try to make them as broadly applicable as I can. However it will be limited to the foreign exchange (Forex) market.

I encourage discussion from any member who has an interest in learning along with me what can be gained from using an application designed to back test a plan, to be able to do that over and over again monitoring the impact of changes to plan parameters, settings or “indicators”. I will start off with one simple objective. TO LEARN HOW NOT TO LOSE MONEY. If I achieve that objective, I hope to have helped 90% or more of those who follow this Topic.

The outcome I have decided I want to achieve is a selfish one. It is to confirm that the time spent testing the application, and in writing this journal as a formal record of the testing, will pay back many fold as I continue with my plans for continuous improvement in Forex strategy and plan development.

Now, let’s make the first journal entry. To be continued…

5 Likes

This is a journal of testing the Backtesting application known as Forex Tester 5.

If you have never seen a trading screen before, a typical screen consists of a chart area and many option boxes, icons or buttons that control what is shown in the chart area. Each chart package provider has different layouts but they are very similar to each other. Throughout these tests, I will be using the Forex Tester 5 software. A free download is available with limited test parameters at the link provided below.

Click the “Free Trial Download” icon near the top of the screen in the link above.

This is the first of a series of 12 weekly tests. In this first post, I am only commenting on the Quick Start Guide.

Forex Tester 5 - Quick Start Guide review

1 Basic Testing Actions (3 minutes)

Near the top of the screen, note Start, Resume, Restart, Speed of testing, Timeframe
Click “Start” A backtest simulation starts

/Pause / Resume
2

Timeframe section - timeframes from one minute (M1) to one month (MN)
Next, choose one of the timeframes (eg M5)

Speed of Testing. A slide bar to control the speed of the test

5

2 Market Order (3 minutes)

Near top of screen, Action / Orders - Market Order
A simulation test starts.

Click “Market Order
6

A list of currency pairs opens. Choose a pair symbol.

Lot size. Choose a lot size (eg 0.1)
You are going to: Buy (go long) or Sell (go short)
Choose the “Buy” buttton

The bid / ask price appears near the foot of the box.

Set Stop Loss - choose the number of pips (30). Click the green arrow button to the left of the SL pips box, and Forex Tester 5 will display the stop loss price automatically.

(Optional) Set a Take Profit level in pips (eg 100). Click the green arrow button to the left of the TP pips box, and Forex Tester 5 will display the take profit price automatically.

Click “Buy” to place a market order (long)

At the foot of the screen you will see Ticket #1 - Open order. Buy 0.1 lot, date/time, open price 1.23379, SL 1.23349, TP 1.23479, market price 1.23374, swap 0, commission 0, points -5, profit -0.5.

The chart will show dashed lines as red (stop loss) blue (take profit) and a text box (Buy) with the price on the right scale in black background.

You can right click on an open order to perform actions (close, modify, create copy, close part position, close all position). Alternatively, click the Order tab at the top of the screen (next to the Home tab) and choose “close order” icon.

At the bottom of the screen click the “Account History” tab. The closed trade will appear as ticket #1 with a loss of -0.50. Deposit balance (in this demo account) 10,000, profit from closed trade -0.50, profit / loss -0.50 (-5 points), balance 9999.50

3 Add Indicator (5 minutes)

Click “Home”, See “List of Indicators” icon.

A drop down list of indicators appears. Choosing an indicator.
Choose “Trend” then subcategory “Moving Average”.

Parameters tab. A list of parameters appears in a new box. In this example the chosen parameters are: Period (5), Hshift (0), Vshift (0), MA type (simple, or SMA), apply to price (Close),
Then: Style (blue solid line).

Timeframe tab.

Choose from the shortest (1 min) to the longest (1 month). Note that a moving average line appears on the chart.

Add an Oscillator (MACD). Click “List of Indicators” and choose category “Oscillators”, choose subcategory “MACD”.

A list of parameters appears in a new box.

Note: Common. Fast EMA period (5), Slow EMA period (13), SMA period (3), Apply to price (Close)
Styles MACD (silver - solid line). Signal line (red - dotted line).

Click “Apply”. The MACD oscillator appears below the main chart with its chart title "MACD, 5, 13, 3, close.

4 Run a Strategy (4 minutes)

12

A EURUSD test simulation starts. Many traders use Robots (or Expert Advisors, or EAs) in their trading. EAs are programs developed to follow some trading strategy and execute the trades automatically due to a pre-set algorithm.

At the top of the screen click the “Strategies” tab. Turn the “Strategy Execution” switch to “ON”. Forex Tester 5 has some built-in strategies. Click “List of Strategies” and choose “Awesome EA” advisor setting button (the cog wheel).

14

A parameters tab opens.

Symbol and timeframe. Double click the symbol line and chose EURUSD. Double click “Timeframe” line and choose “1 hr”. The line parameter changes to “60” meaning 60 minutes.
Leave the other parameters on their default settings - they can be changed later in a real strategy run.

The strategy is now enabled. The simulation shows buy/sell signals on the main chart. Next step is to check how the EA works in practice.

Click “Home” tab. Click “restart” to apply the strategy. Click on the “Account History” tab at the foot of the screen. As the EA opens and closes trades, according to its rules, the trades will be added to the Account History. Let the simulation run for a while. It stops at 19 trades showing a remaining balance of 9985.39.

5 Data Centre. (4 minutes)

Downloading / uploading historical data for your projects. Using the historical data feed for the backtesting process.

Create a first project instead of using default strategies.

Download enough historical data.
This opens a “DATA CENTER” icon. Open a Data Center Window. A drop down menu appears with lists of Majors (7), Crosses (9), Crypto (BTCUSD), Exotics, Futures, Indexes, Metals, Stocks (Canada), Stocks (EU), Stocks (UK) and Stocks (US).

Select at least 2 currency pairs from the list.
Click the “update from server” box.
Select “download part of history”
Select “to” and “from” date range (leave these as selected in the simulation)
Click “update” to continue
Click the Exit button.

The historical data is ready to be used for a new project.

6 New Project (4 minutes)

New tutorial launches.
Projects in Forex Tester 5 are like files where information is kept about every testing session.
Create a new project. Click the “Home” tab at the top of page.
Click the +New Project icon. Set Project name (eg EURUSDTEST18OCT21).
Select symbols (eg EURUSD, GBPUSD)
In tutorial, time period is set from 2018:04:01 to 2018:04:30. In testing quality, click “use 1 minute data”, click Next. Click “Create”.
Testing starts right after the project is created.

Summary and Comments

I read through the Quick Start Guide three times. The first time I skim-read the content. The second time I took notes about which sections of the software product each quick guide step covered. The third time I took some print screen / snippets of screens to make the text of my testing more relevant for the reader.

In summary, I think the quick guide is a good balance between speed and detail. I look forward to the next set of tests.

I’m happy to answer any questions on this application test thread.

4 Likes

Dumb question. You need historical data right? Is that included inside, or do you… have to bring your in like a spreadsheet or something? I read section 5. Does download mean, you download it from the app?

1 Like

Hi, there is no such thing as a dumb question. If I get this answer wrong, I will correct it in due course. It is my current understanding that the data imports are provided by the application owner. I know there are limits on the free version. I will be doing some real testing soon, so will be able to qualify that answer including their source of that data.

Thanks for the question.

2 Likes

This is a short post to the thread. It is the first five lessons in the Basic Course offered in the Forex Tester 5 application. The entire basic course intends to make use of the Forex Tester application to explain its relationship with the Forex education market in general, so that the trainer can become familiar with navigation of the screens as they learn about the Forex market.

Go to the link to the free download:

Start the lessons here:

Click the “Start Basic Courses” button in the screenshot below.

Forex Tester 5 – Basic Course – Lessons

image

image

Lesson 1 is denoted as L1 notes, Lesson 2 as L2 notes, etc.

L1 notes

Forex market and the use of Forex Tester 5 software during the 32 lessons. Use of the speed slider and the Pause button on the Forex Tester chart.

L2 notes

There are 10 million Forex traders around the world. (Editor – this amounts to 0.14% of the world’s population, or 1 in 700 people. No wonder Babypips members find it difficult to find anyone with the same interest in Forex in their neighbourhood).

L3 notes

Pairs are defined as three groups – the Majors, Crosses and Exotics

L4 notes

80% of the total value of Forex trades is contained within the major pairs.

There are seven major currencies – all paired with the USD. They are EUR, GBP, JPY, CHF, CAD, AUD, NZD. A total of 7 pairs.

The EURUSD pair is responsible for 24% of total Forex turnover.

They all have nicknames based on historical use.

Finding pairs in Forex Tester 5 – Data>Data Center>Major, Crosses, Exotics lists in drop down box.

Check historical data available from the application owner’s server, or you can import your own datasets from a file.

L5 notes

Crosses are pairs that do NOT include the USD in the pair.

An example of a cross pair is AUD/CHF = AUD/USD+USD/CHF.

Mostly are based on EUR, JPY, GBP. There are a total of 20 crosses.

Crosses are (in the main) more volatile than the majors.

Note that a pop up box appears during study of the lessons. It asks for feedback and asks for your email address, presumably to identify prospective customers for sale of the paid version of the software.

Click on DATA CENTER icon, a major pair, crosses pairs box opens. Crosses available in the demo version are shown. Click the + symbol to expand the crosses. A list of crosses available in the paid data subscription version is shown.

1 Like

Is there a app for this

Yes, go to forextester.com/ft5 as in the picture below and click on “Free Trial” red symbol.

Is this some kind of variation on MetaTrader? UI seem to borrow many elements from MT. Wondering if this is a standalone or some kind of MT mod distro. Cheers!

Hi,
Do you mean MT4 or MT5 or another? It’s years since I fired up a MT4 or 5 screen, so I would have forgotten what they look like.

MT4 (not sure how MT5 looks like as I only used MT4)
It looks very similar and some elements such as fonts, label positioning, even whole activity section looks like quote from MT4, so asking just from curiosity.


Hi @wilczasty,
Thank you for this feedback. In my second post on 18Oct21 I said " Each chart package provider has different layouts but they are very similar to each other". I have added an image below from TradingView, with same pair, daily, and a MACD chart below the main chart. As you may see, this also looks very similar to the MT4 chart layout. I can only assume that as one provider changes their layout and customers approve, then the rest follow. I can compare this with some recent education I have done for myself with different operating systems on computers. I note that over the last decade MacOS, Win10, Raspbian and Ubuntu all seem to get more and more similar in their layout. As you move from one to the other, when the differences get less and less, the customer becomes more and more comfortable and even forgets which operating system he is using. Even looking at Libra Office and MS 365 office suite, there are hardly any differences in screen layout any more.

1 Like

The next set of notes on the Forex Tester 5 (FT5) lessons.

L6 notes

Exotics are pairs consisting of one major currency and one from a smaller or emerging economy. They are MXN, TRY, NOK, DKK, SEK, SGD, HKD, THB, ZAR, INR. Exotic doesn’t necessarily equate to a small economy.

Exotics are typically more volatile and less liquid than majors or crosses, and generally have higher bid/ask spreads.

The Forex Tester 5 simulator (FT5) has a wide range of exotics to test. Data for exotics is only available in the paid version of the software.

L7 Base and quote currencies.

Base is the first currency of the pair and quote is the second currency. For example, in the AUDUSD pair, the AUD is the base and the USD is the quote. The numbers on the right axis of the chart show how many quote currency you get for one base. Eg. If the EURUSD chart shows the buy price is 1.231294, that means you get 1.23194 USD for 1.00000 EUR.

L8 Going long or short.

The lesson shows an example of choosing a pair to trade. To buy (or go long) means the trader expects the base currency to go up (get stronger) or the quote currency to go down (get weaker) or both. To sell (or go short) means the trader expects the base currency to go down (get weaker) or the quote currency to go up (get stronger) or both.

L9 Bid / ask price

Bid price = broker accepts a sell order

Ask price = broker accepts a buy order

Bid = demand, Ask = supply

Bid – Ask = Spread

By default, FT5 shows Bid price on the chart right hand axis. Ask level line can be added in chart settings. Now both ask (higher) and bid (lower) lines display on the chart.

The higher price is the one you pay to buy. The lower price is the one you receive when you sell.

Bid (sell) price is shown in RED text, Ask (buy) price is shown on BLUE text.

The lesson 9 module steps the trainer through a simulated live sell order entry and exit with no stop loss or take profit levels set up, and shows the account history when the trade is exited. Note that the broker has closed the trade at the higher (ask) price because to close a trade the trader must “buy” the contract he opened as a “sell” order.

L10 What is spread?

It is a broker fee built into the bid/ask price quoted. “No commission” means “my broker costs are included in the bid/ask spread. Spread is displayed right next to the bid/ask prices on the screen

Spread (in PIPS) is shown in column headed S next to Bid and Ask in the snippet below.
image

The spread depends on the currency involved, the trading time and the economic conditions.

Currency pair. Higher volume equates to tighter or narrower spreads.

Trading time. Fewer trades outside of normal trading hours means less liquidity, so spreads are wider than during the most active trading times for that pair. Overlapping London and New York trading hours normally result in the narrowest (or tightest) spreads.

Economic conditions. Extreme volatility can occur due to significant geopolitical events causing wider spreads and even gapping. Spreads can become very wide. The wider spread narrows the risk for the broker if he takes trades on his account during such events. Keep an eye on the economic calendar to avoid surprise changes in spreads.

Fixed spreads.

Are available from market makers, the opposite of non-dealer desks. Pros and cons of fixed spreads vs floating spreads are reviewed. Example of calculating spread cost in a live trade by opening and immediately closing a EURUSD trade. Cost was 2.7 pips or $16.20. How is it calculated?

The total cost is the cost per PIP x number of lots x $ cost per lot. 2.7 (spread in PIPs) x 6 mini-lots (10,000 units) x $1 per cost of a mini-lot) = 2.7 x 6 x $1 = $16.20.

2 Likes

Preamble.

Now I am getting into this series of lessons, it occurred to me that this is a good introduction to charting in general for a newcomer to Forex who has not navigated one or more of the broker charting packages. It takes the trainee through simulated events to learn slowly which tabs, icons, buttons or drop down menus to use for each of the most basic (and some of the advanced) functions.

Just over half way through I am enjoying the journey, and it has reminded me of some of the important things about order placement that I have forgotten over the past two years. I’ve been too busy with Crypto exchange platforms to notice the difference.

I have suspended the use of screen snippets in the interests of getting this series of lessons completed early to be able to move on to some practical examples of back testing.
If the content is difficult to follow, please do comment and I will fill in any blanks for the benefit of those following this thread.

L11 What is a PIP?

One PIP is the fourth decimal point of 0.00000 equal to one / 10,000 of the exchange rate. JPY is an exception to this – it is the second decimal place, because there are around 100 JPY to one USD. So the second decimal place is still one ten-thousandth of the exchange rate (0.01 is 100/10,000). The fifth decimal place is called a pipette or more commonly referred to as a “point” by Forex traders. One point is 1/10 of a PIP.

L12 What is rollover?

Rollover is the automatic renewal of an open trade at 5pm EST, 10pm London time or UTC (Coordinated Universal Time). UTC succeeded GMT (Greenwich Mean Time).

L13 What is the PIP’s worth?

FT5 only uses USD as the currency of account denomination.

Lot sizes definitions

  • Lot Size Currency Amount / PIP

  • Standard (100,000) $10.00

  • Mini (10,000) $1.00

  • Micro (1,000) $0.10

FT5 simulates selling two EURUSD orders (a 0.1 lot and a 1.0 lot). The Open Position window at the foot of the screen shows the “points” value (tenths of a PIP) is the same for both trades whilst the profit values differ by an order of magnitude (one is ten times the size of the other).

L14 What is a LOT in Forex?

A LOT is the currency unit quantity required for a trade. Lot sizes are tabulated in L13 above. For each pair, the standard LOT is denominated in the base currency (the one at the start) so:

  • One lot of EURUSD = €100,000

  • One lot of USDCAD = $100,000,. and

  • One lot of GBPUSD = £100,000

In FT5, the lot size appears in, and can be adjusted from, the Symbol properties. Eg. Open “Data” tab > Data Center > Click Symbol (EURUSD) box. Open “change properties” box. The default lot size is 100,000 (a standard lot). Change default size (eg to 10,000), close the Data Center window and click the Exit button.

The lot size represents the amount of risk you are assigning to each trade. (in currency). As price changes are measured in PIPs, their monetary value for each lot size of a particular currency will differ.

If you are a new trader, always start in a demonstration (demo) account using the micro lot. When you make a mistake (and you will make mistakes), their impact will be minimal. This is a good preparation strategy for real world trading.

L15 What is an order?

Orders can be placed over the telephone, though it is rare these days for a retail trader (you and I). It is far more common today for retail traders to place orders with a broker via an online application or “trading platform” that your broker account is set up to use.

Market order – is settled in real time

Pending order – waits for a matching order to become available in the market

L16 What is a market order?

An order from a trader to a broker to buy or sell an asset at the price the broker has provided. Trader buys at asking price and sells at bid price. See L9 for details of bid / ask price and spread.

FT5 simulates a market order.

Go to Home > Market Order >. The market order window opens.

Simulation chooses symbol EURUSD and lot size 0.1 lot. On the chart, at the time of order, a “buy” text box appears with a buy price of 1.23297 shown on the right hand chart axis.

At the foot of the page, ticket #1 shows a EURUSD Buy order for 0.1 lot at 2018.04.02 10:04 hours, Open Price 1.23301, SL 0, TP 0, Market Price 1.23297, swap 0, commission 0, points -4, profit -0.40.

Click “Order” > Close Order.

L17 What is a pending order?

A pending order is one that is created to be executed at a later time at a price you have indicated. The advantage of a pending order over a market order is to protect a trader against significant losses.

If the indicated price is never reached, the order is never fulfilled. There is no order risk (and no reward either) for the trader.

FT5 shows a table of pros and cons of market orders vs pending orders.

There are four types of pending order:

  • Buy limit,

  • Sell limit,

  • Buy stop,

  • Sell stop

L18 Buy Limit and Sell Limit Orders

Limit order – to buy or sell a trading asset at a specified price or better.

  • Buy Limit Order. The ask price must be lower than the current market price.

  • Sell Limit Order. The bid price must be higher than the current market price.

Limit orders are good solutions for thinly traded, or highly volatile assets, or those that have a wide bid/ask spread.

FT5 simulates placing a buy limit order.

Click “pending order”, and choose “symbol”, then “type”. Click the pipette icon (At Price). A dashed red line appears on the chart (GBPUSD, H1). Drag the line to the desired buy limit level (eg 1.42941) just below the open of the previous candle. Note the box (buy limit (-101) on the chart. The buy limit level is 101 PIPS below the current market price.

Click “place order”. Click “pending orders” tab at the foot of the screen. All pending orders are listed. FT5 simulates a buy limit order that is fulfilled. The pending order has moved from Pending Order tab to Open Position tab when the price hit the “buy limit” value of your pending order.

L19 Buy Stop and Sell Stop orders.

A buy stop order is an instruction to buy an asset once the market reaches your minimum specified price or higher. The buy price specified needs to be higher than the current market price. You place a buy stop order when you expect the price to reach a certain level, then to keep rising.

A sell stop order is similarly described in this lesson.

The FT5 simulates a sell stop order.

Choose “pending order” icon. Select the Type drop down menu and choose “Sell Stop” order type.

Click the pipette at the “At Price” box. A dashed red line appears on the chart.

The price should be LOWER than the current price for the sell stop order. Eg. Drag the line to 1.42818 just below the low of the candles 6 and 8 hours ago. Note the line appears as “execute price” at 1.42810.

Click “place order”. The dashed line colour changes from red to green and the order appears in the Pending Order tab at the foot of the chart.

Click the “Resume” icon. FT5 continues the simulation until the price reaches the Sell Stop price. The Pending Order entry moves to the Open Positions tab.

The Pending Order has been turned into a market order at the Sell Stop price. Click “close order” to end the simulation.

L20 What is Stop Loss?

If a market or a pending order is fulfilled, any stop loss that has been specified in the order setup is attached to the open position automatically by the broker. For long (buy) position, the stop loss is always set below the current Ask price. For short (sell) positions, the stop loss is always set above the current Bid price.

FT5 simulates adding a stop loss (SL) to a market order.

Note: Don’t type anything into the Stop Loss box (9 of 21).

Click “Sell” at next tutorial prompt. FT5 reports: “The current bid price is 1.40313” Change the stop loss from 30 pips (default setting) to 100 pips in the drop down menu. Click “Next”. The click the green button to the left of the 100 pips box that has been greyed out. The SL value is calculated by the simulator to be 1.40413 – or 100 pips higher than the current price.

Click the Sell button. The chart shows a dashed red line at 1.40413 (stop loss) and a dashed green line at 1.40313 (the market order price).

The order appears as a line entry (ticket #1) in the Open Positions tab at the foot of the screen.

The position remains open until it is liquidated (reaches the stop loss value) or until you cancel the order.

1 Like