Forex testing on historical prices – is one week data enough?

We receive questions from time to time on why our Forex testing tools only support one month of data. These questions obviously arise because Smart Forex Tester and Simulator GUI has a tab with one month calendar.

Forex testing on historical data
Forex testing on historical data

As a matter of fact, both Tester and Simulator can work with unlimited data.

A monthly calendar view was added to provide an easy way to select when to start the test (stopping the test can be obviously done any time).

But on this occasion, it would be good to discuss here whether we really need big data files in Forex testing.

The only argument in favor that we can imagine is the need to test strategies that use long time frames.

But if we really wanted to use such strategy, does it make sense? Do we have enough time for that? And even if we do, we need to have a lot of money invested to satisfy margin requirements. Unless you trade with large sums without any leverage.

And even more questionable are the benefits of testing on the long intervals for the most commonly used optimization methods, when a given set of strategy parameters are permutated to make the strategy work best on the historical data.

Unfortunately, it doesn’t guarantee the strategy will win when used the very next day – whatever long interval you tested it on. This is the reason we use a principally different approach.

We are developing the mechanism to adjust the strategies to the current market automatically on the fly. So, we test our automated trading strategies on 1 week long test data.

There are several reasons behind this testing interval selection. The primary one is continuity in the price quotes. If you leave a position open over weekend, you always risk hitting a price gap. If something happens during the weekend, the gap can easily be several hundred pips. And stops sometimes can not be even triggered.

Next, it takes reasonably short time to run a test on one week of quotes. is not too long to run.

Of course, big price moves can happen during the trading week, as well. However, it’s not a gap – but a very fast moving market. So you might be able to do something yourself and stops might work.

In addition, quite often such turbulence is news related and so can be predicted, as the major news releases are mostly scheduled.

Our approach is to use one week as a standard interval that is easy and quick to run and analyze. Based on the analysis, we select certain data intervals that are worth using later. Mainly, those where the strategies loses systematically.

Only these intervals are worth testing on. Markets quite often just treading water. Testing on such data is just wasting time.

So we prefer to collect a set of test cases that represent the market conditions that are difficult for the strategies to handle. Running the set is an efficient “smoke test” – if the strategy is failing, there is no need to go deeper and run longer tests.

Based on weekly test results, we can select most important parts of the data and us them later as test scenarios. They can be as short as one trading session. Often the market behavior is the same during one session, but the next session might not continue the pattern.

Best is to test overlapping new York and London sessions when the moves are most powerful.

You can use our free Forex Data Manager to slice a month long .csv data files into one week (or smaller) ones.

Smart Forex Tester Free Version At SmartForexTester.com

SmartForexTester.com is our new site that we started to host a free version of our new Smart Forex Tester product.

We already released paid version in the end of 2016. It is built on the new framework – the same we used to develop our Forex Simulator.

The new free Tester version will replace the currently available 0.9.5 software which was developed on the old framework and will be phased out.

Smart Forex Tester Free
Smart Forex Tester free version is released

As the old Tester, the new free version also uses tick-by-tick data only and can test on both historical price quotes and using inbuilt live market data feed.

Considerable improvement is added C++ support – as a means of trading strategy definition.

Also, you can use C++ environment to test EA if you have a source code. After some modifications, MQ code can be compiled in the Tester, and the interfaces are provided similar to MT to support trading operations.

Free download at SmartForexTester.com.

Smart Forex Simulator To Include The C++ Strategy Tester

Smart Forex Simulator will be a new product built by merging current Forex Simulator and Smart Forex Tester.

One rationale behind this change is to improve user experience.

Merging will also make the tool development more efficient, because both current tools share a lot of the same code.

After this change, the tool will no longer be usable without a license.

However, the basic functionality will still be free. So the current users can claim their free licence. Or upgrade to get the premium features.

The following licences will be available:

Online Simulator – free. Offline Simulation and Timeshift in Real Time – paid.

Strategy Tester – free. Max test speed and manual trading operations – paid.

Online Simulator AND Strategy Tester – paid.

 

Forex trading automation: replacement or assistance to manual trading?

Forex trading automation is an attractive option.

The benefits of automation are obvious – you are not chained to your computer and it gives you much less stress. To say nothing of the fact that a computer reacts to opportunities and executes trades way faster and better than you.

The downside of trading automation is also obvious. It is not that easy to develop an algorithm that fully replaces you in all sitiuations.

A question: why can’t we take the best of both worlds?

We tried it with our latest Smart Forex Tester 1.0 software. It has an option to manually override when an automated trading strategy is being run.

Trading automation was represented by a simple strategy that uses 3 RSI of different time frames to enter or exit the market, This strategy obviously only works well when the market is not trending.

For the calm markets, a typical situation where manual control was needed was around the peaks. There was usually a great deal of see-sawing there. And it was not clear whether a peak will hold.

Even such simple algorithm as we used could enter the market well. But fixing the profit was more efficient and easier manually. You could take less risk and if it was not sure the market goes where expected, you usually had a chance to close the trade with a small profit during the see-sawing. Or even small loss was a better option in an uncertain case than relying on a fixed automated stop-loss.

However, the main benefit of the manual control was during the beginning of the trends. Our simple 3 RSI algorithm works very badly on trending market. It will persistently try to enter the market in the direction opposite to the trend and will be stopped out a lot of times.

But even with such a simple system, you can still be successful. Once you notice a trend starting, you can disable the automated strategy and manually take a position in the direction of the trend and just hold it. When the trend is exhausted, you can return the control to the trading atomation.

 

EA Testing with Smart Forex Tester

This page is deprecated. Check out here.

UPDATE 12/27/2016: Smart Forex Tester 1.0 is available!

This article is deprecated! Expert Advisor (EA) testing as the source (MQ4) code is now possible with Smart Forex Tester – both on historical data and on live streaming prices.

============== OLD CONTENT ======================

Expert Advisor (EA) testing is possible with Smart Forex Tester, which is planned to be published between Christmas and New Year.

The release 1.0 will use a new platform (similar to that used by the Forex Simulator). The EA testing will be possible both on historical data and on live streaming prices.

The release will be of a prototype level; the main focus of it will be on the integration of EA testing functionality to the new tester framework. Therefore it will support a limited number of indicators and trading functions, and the GUI functionality will be limited as well.

Expert advisors will be tested as the source (MQ4) code. In the initial releases, the main focus in the EA testing will be on the feasibility of Forex trading strategies. Meaning that the highest development priority will get the EA functionality that is responsible for programming the market entry and exit decisions.

The trading features will be implemented reusing the same state machine mechanizm currently supported in the Tester. But this will be made transparent for the EA testing module – by middleware. This layer will be receiving new ticks from the Tester engine and translating trading commands rom EA into the states of the tradiing state machine.

In the next releases, when the core features in the new framework are ready and software is stable enough, more EA functions will be supported. Also the GUI functionality will be brought to the level currently available in the Tester (zoom, mouse operations, etc).

Subscribe and download current release of Smart Forex Tester to be updated automatically.

More information will be posted on  www.expertadvisortest.com.

Forex Trading practice is efficient with the Simulator that supporst Offline mode and Timeshift

Forex trading practice with specialized simulation software is much more efficient than using a regular demo account.

The most important advantage of the Simulator is that it saves you a lot of time.

Why it is possible. There is internal redundancy in the markets: not all the time you spend there is equally valuable. The periods of “dead” markets can take a substantial share of time, but they add very little value (if any!) to your practice.

The Simulator can reduce this redundancy. You can choose to skip the useless time and only practice when there is action! Which is impossible on a demo account: you have to always spend all the time.

Forex Trading Practice Offline with the Simulator
Offline Forex Trading Practice  

How it is working. In Offline mode (principally unavailable on a demo account), the Simulator has pause/resume functionality and provides the data feed speed controls. The same is possible in Online mode, with the Timeshift feature – the Simulator lets you pause the live data stream.

When you resume, you can increase the data speed if the market situation justifies that. In a way, you can “squeeze the air out” of the slow moving markets. Which is nothing else than time saving.

Get free online Forex Simulator.

Online trading practice with Forex Simulator saves your time

During your online trading practice on Forex (e.g. with a Demo-account), you need to be careful about how efficiently you use your time. Unfortunately, it is very easy to waste a lot of time in the market.

One of the reasons for that is that the market might be moving really slow. E.g. in Asian sessions, it is not uncommon for the price quotes to come more than 1 min after each other. But even if this is not the case, still the markets can tread water for quite a while.

The example on the below graph shows a market movement of less than 30 pips in EURUSD. This rather unimpressive action took more than 2.5 hours and well over 15,000 ticks to develop.

online trading practice with forex simulator saves lot of time
Online trading practice can waste much time

And if you look at the picture more closely, you can notice that you would practically have wasted the second half of this time.

The Forex Simulator will help you use your time much more  efficiently – and save a lot of it!

First of all, the Simulator overcomes the main problem of online trading practice with a Demo account. Namely, it can only be used when trading is active.  But live data feed is not available when we would like to practice the most: during the weekends.

With the Simulator, you can practice any time you like. Using offline simulation mode, you get your own “24/7 demo account”.

With offline simulation being an obvious efficiency improvement factor, even more efficiency results from online and offline functionality complementing each other.

And last but not least – quite unexpectedly – the Simulator can offer great time savings in online trading practice, as well! With the latest and the most innovative functionality – Timeshift – you can pause the data feed in real-time and later playback at the most adequate speed and squeeze the slow moving market many fold.

Forex Online Simulation Benefits From Timeshift

Our Forex Simulator development is continuing at full speed. The major new feature of the next release will be Timeshift, which makes it possible to pause/resume online simulation.

This simple example shows you how Timeshift saves your time.

You are at the airport waiting for your flight. You don’t want this time wasted, so  you are practing with the online simulation. Now your flight is boarding. While you know it will take some time, still you can’t concentrate properly. Or your colleague invites you to have a drink while waiting.

Here is where the Timeshift comes in. You don’t stop your practice – you just pause it.  It might take a while before you will have to eventually turn off your Internet connection. All this time the Simulator will continue receiving the market data.

Later, during the flight, when you have time, you will resume your  practice. The Simulator will use the recorded price data.  This way, you will get back the time that would have been wasted if you didn’t have the Timeshift.

There is more in our development queue. E.g. the market data collection can not only be used for Timeshift.  You can record a trading session while you are at work during daytime. And then use the recording and practice on it while commuting home.

We are also designing trade recorder/player for you to analyze your practice, multiuser mode to practice together with your friends and other cool features.

To make the Simulator that meets your needs, we need your feedback!

Please do take a look on our roadmap and vote – this way we will implement the most needed features first. And if you want to suggest a feature – don’t hesitate to leave a comment!

 

Trading Server Delay Practicing by Simulation

Trading server delay is always present if your trading terminal, e.g. MetaTrader, communicates to the trading server over the Internet. This data exchange channel has an inherent delay, caused both by the physical distance to the server and by the delays in processing of the signal by the numerous switches on the way.

Due to the delay, you can not always expect to place an order at the price that you see on your computer. This price was in effect at least a RTT ago. RTT, or Round Trip Time, is the time needed for your trading terminal to send a request for the current price to the trading server, and get the response back.

What are the delays? For very good network conditions, the delay can be less than 100 ms. In most cases, the delay is measured in several hundred milliseconds, but sometimes it can exceed 1 s.

You can estimate the delay yourself.  On the screenshot below, you can see how to do it in your Windows computer. The command for that is: ping <IP-address>

trading server delay
Trading server delay (example)

In this example, we are measuring the delay to our WiFi access point (192.168.254.254). This is the best posssible situation and the delay is very small.

If you uses the IP-address of your trading server, you can see your delay.

So when you see the price that is at least RTT is delayed by at least the same time. So the price you target when you click the order button, and the price in effect when your order reaches the trading server, will most probably differ. And on fast moving markets, the difference can be considerable.

This is taken into account in the Forex Simulator. You can configure the delay randomly varying between min and max values. And try how the trading feels for different delay values.

Download the Forex Simulator.

Smart Strategy Builder

This page is deprecated.  We switched to C++ strategies.
Download new Smart Forex Tester. (requires FREE subscription)

We have developed the first version of Smart Strategy Builder.

Smart Strategy Builder
Smart Strategy Builder GUI

Currently we are testing the prototype and will make it available to our subscribers soon.

The Builder reads a trading strategy file and makes it all the strategy parameters visible and editable in the Builder GUI. There you can also edit and save the strategy file itself.

Smart Strategy Builder seamlessly works with our Smart Forex Tester.

You can test the changes in the strategy or its parameters by clicking a “Run” – button. The Strategy Builder launches the Tester and executes the strategy test on the previously selected test data. The results are returned to the Builder and shown in the GUI.

The Tester GUI is also shown during the test and also some configurable time after its completion. All Tester functionality is available. You can analyze the trades in the GUI and also in the log, as usual.

The current values of the parameters are saved in a temporary file. So the Builder can restore them on the next start-up.

Smart Strategy Builder Development

When completed, this tool will take our automated trading strategies development to the next level.

Later releases of the Builder will extend our strategy format. While still using the standard state machine for routine trading operations, the Bulider will support the arbitrary code for market signals.

This way, the Builder will make the first steps to support the EA syntax as a strategy definition.

Download Smart Strategy Builder.