Testing & Optimization in MetaTrader 4
Are you taking the Forex-Robots course? If you are, then you’ve come to the right place!
On this page you will be able to download the Simple System v8.9 (and all previous versions) expert advisor and all later versions of this Forex Robot.
Originally this Forex Robot was developed in the Algorithmic Trading for Beginners course. Later in the same course it was enhanced to create Simple System v2.0. Today you are able to download a much more robust Forex System – Simple System v8.9.
Make sure you read the Disclaimer below. If you agree to it, then go ahead and download the system!
See you in class,
I am making you aware that this Expert Advisor and any other code you download and/or copy from this website is being provided exclusively for educational and entertainment purposes. This Forex Robot is intended for use in the Testing & Optimization course, which is designed to help you learn how to use the MT4 strategy tester effectively. Any information is provided ‘as is’ solely for informational purposes and is not intended for trading purposes or advice. Past performance is no guarantee of future results. If you choose to use this system on any trading accounts, you are doing so at your own risk.
Simple System v9.0
This version has an optimized OrderModify function which will make the system give less errors when it modifies the trades in the market. Also for users who use ECN execution if the modification of the order is unsuccessful you will only receive one error message instead of 2.
Simple System v8.9
AutoHandle5Digits: In version 8.9 you will find a new module that will make your life easier if you are trading with a 5-digit account. The auto-adjust module will automatically assess if your account is 4-digits or 5-digits and in the latter case the module will automatically make necessary adjustments to your input parameters.
This means that with this module ON (AutoHandle5Digits = true) even for a 5-digits broker you enter your parameters in pips – i.e. just like you would for a 4-digit broker.
For example, if the AutoHandle5Digits module is on then:
- StopLoss = 40 for a 4-digit account will be treated as 40 points
- StopLoss = 40 for 5-digit account will be treated as 400 points
IMPORTANT: Make sure NOT TO DOUBLE-UP. By default this module is switched ON. This means that if you have been using the expert advisor with a 5-digit account previously and have a saved *.set of parameters which you decide to load into the new expert advisor, then you will now need to readjust your parameters back to 4-digit mode OR you can simply switch this module off.
- MarketExecution has been renamed to ECNExecution (see v6.0 for details on MarketExecution)
- Comments have been changed to avoid confusion. The following messages are NOT errors of the EA, they are simply indicating why an order was not opened at the set time:
- Reason Order Not Opened: MA Filter Not Passed
- Reason Order Not Opened: MinPipLimit Filter Not Passed
- Added an internal ND() module to increase stability of the EA with some brokers. This is a programmatic enhancement, which, in short, helps pre-empt errors related to excessive decimals in calculated prices
Simple System v7.0
Version 7.0 has an important new addition – a Trailing StopLoss module. Using this module you can tell the Simple System Expert Advisor to trail the StopLoss levels of its orders. What this means is that throughout the life of any given order the following will happen:
- if the price goes in your favour then the StopLoss will be maintained at a given distance
- if the price goes against your order the StopLoss will not move
Thus, if you set a trailing stop at 40 pips, then the Forex Robot will make sure* that the StopLoss is never more than 40 pips away from the current market price.
*Provided normal market conditions
There are 2 new parameters in Simple System v7.0:
- UseTrailingSL; and
By default UseTrailingSL is equal to false, meaning that the new module is not active. If you want to activate it then you simply set UseTrailingSL to true.
TrailValue represents the distance at which you want the StopLoss to be maintained when the market is moving in your favour. Default value is 40 pips.
Finally, if you are enrolled in the Forex Robots course, then check out the new video I posted there. It explains exactly how the Trailing StopLoss works and how to use it to your advantage!
Note: if you are using a 5-digits broker, you need to specify TrailValue in 5-digit mode just like you would specify the TakeProfit and StopLoss parameters. E.g. 40 pips in 4-digit mode is equivalent to 400 points in 5-digit mode.
Simple System v6.0
In version 6.0 of the Simple System Forex Robot there are two new updates. First of all, as illustrated above, I have added a status display to the Expert Advisor. Every day Simple System will update you on what happened at the designated hour. If a trade was successfully created – you will see this, but more importantly, if a trade was not created – you will be told why.
For example, the message may say “MinPipLimit Check Not Passed” or “MA Check Not Passed”. This will allow you to know right away that everything is going as planned, and your trade has not been set NOT because of an error, but rather because of a filter within the Trading Strategy.
The second update is that I added a MarketExecution parameter. If you intend on using this expert advisor on a ECN account (or any other account with Market Execution), then you need to set this variable to TRUE (default value is FALSE).
The reason behind this is that on ECN and other accounts with Market Execution you are not able to specify a StopLoss and TakeProfit at the time of creating an order. You have to do this separately after the order has been created. In Simple System v6.0 I added a module that does exactly this.
Simple System v5.1
As you can see from the image, I have added one new parameter – the Magic number. This is an identifier of your trades and allows you to use multiple expert advisors in the same terminal. The rest of the logic is the same.
If you want to have more than 1 Simple System expert advisor running in a single MetaTrader 4 platform, then you need to use v5.1 and specify different Magic Numbers (at random) for each of the instances of this Forex Robot. This will allow each expert advisor to identify its own trades, therefore preventing them from interfering with each other.
Simple System v5.0
Simple System v5.0 – original version. Disregard the parameters specified in the image – you will have to find parameters your own parameters. I have shown how to do it in the Testing & Optimization for Success course.
- StartHour – in which hour of the day to look for the pattern
- MinPipLimit – minimum distance in pips that the price has to travel from the day’s open to trigger a trade signal, for 5-digit brokers multiply by 10
- TakeProfit – takeprofit distance in pips, for 5-digit brokers multiply by 10
- StopLoss – stoploss distance in pips, for 5-digit brokers multiply by 10
- Lots – volume of the EA’s transactions. Don’t be greedy 🙂
- UseMAFilter – Yes/No flag telling the EA to use/not use the moving average filter
- MA_Period – period of the moving average to be used by Simple System
When newer version become available, they will be posted here.