Have you ever wonder how all the Forex robots are created? There are so many Forex robots online, but not so many actually work and generate profits. There are many ways to create profitable trading strategies, automated and manual, but most of these methods are incorrect. Over the last few years, I have created thousands of Forex bots and quite many of them actually make money on live accounts. If you are into creating your own automated trading systems then you are on the right page. Today, I will give you 5 untold tricks to creating better and profitable Forex robots (a.k.a. Expert Advisors).
What is Forex Robot or Expert Advisor?
A forex robot is simply a software which is programmed to scan the market, follow exact trading rules and make trade entries and exits automatically. Forex robot is an automated trading system. It has a set of algorithmic rules and follows them precisely to trade the market day and night. Most Forex bots are created for the MetaTrader 4 and MetaTrader 5 platforms. On these platforms, Forex robots are also called an Expert Advisor (EA).
Forex robots can be many things, but their main job is to initiating trades, manage opened positions and exiting them.
Forex EA can do other tasks too, like for example sending trading signals to other people or copying trades to other MT4 trading platforms. But today we are talking about the trading robots and how to create them.
How To Create Better And Profitable Forex Robots
Now when you know what a Forex robot is let’s continue to the untold tricks I promised you. Let me give you advise how to create better and profitable Forex EA.
I will start with least important and end with the most important thing. Make sure you read till the end and apply all of these tricks when creating Forex robots. Your automated trading success depends on it.
1) Use historical data from your broker
When traders or MQL programmers create Expert Advisors they usually test them on a free historical data from Dukascopy. It’s a good thing to test all Forex EAs, actually, it’s a must. But unless you are going to use that automated trading strategy on Dukascopy it won’t be accurate enough. I am not saying it won’t work, only forward testing and time will tell that.
But if you’ll create and test Forex robots on the historical data from the same broker account where it will actually be trading then your chances to create a winner are much higher. If you backtest Expert Advisors against historical data from multiple sources that would be even better.
Different brokers have different price feeds and spreads and for this reason live trading results and backtest results are usually different at different brokers.
Look at this backtest of the same trading bot on two different brokers:
In the image above you see backtest results of exactly the same automated trading system performed on historical data from 2 different brokers. As you can see results on ADS Securities are more than 2 times worse than on FxOpen. The difference is huge yet both strategies generated almost 100 trades. Net profit on ADS Securities is reported to be $358 USD while on FxOpen it is $887 USD. That’s 2.47 times more!
This test tells us that this particular strategy should be traded on FxOpen rather than on ADS Securities. But it does not mean that there’s something wrong with ADS Securities. For other trading systems, it could be the other way around.
So now when you see this simple proof don’t expect that EA created and tested against free Dukascopy data will be a great winner right away on another broker. Yes, it’s possible (I have done that), but you have way bigger chances to have a profitable EA if you’ll create and backtest it on a history data from your broker. If your EA does not show backtest results good enough then you should move on to creating a new trading system.
2) Set proper stops for a good risk to reward ratio
It’s obvious that a good trading strategy should have at least 1:2 risk/reward ratio. But I encourage you to try and go beyond that. A risk to reward of 1:5 or even 1:10 is possible too and that might give you great long-term strategies.
Of course, it makes it more difficult to create automated trading systems with a high ROI but such systems can have a smaller winning ratio to be on the profitable side.
Here’s an example of a bad risk/return ratio 2:1 trade on GBPUSD:
This simply means you are risking 2 times more than you can win on such trade. Imagine you have a trading system which uses 100 pips stop loss and 50 pips take profit. While it’s possible for such strategy to work it would be much more difficult. One loss needs minimum 2 winners to just get back to a break-even point.
Such trading strategy needs to win 67% of the trades minimum to barely get to a break-even point. If your broker charges commissions and swaps it means your winning rate would need to be minimum 70% or so. In other words, if after 100 trades you see the strategy’s winning ratio is below 70% it means you are not winning and it’s about time to consider a new strategy.
Now here’s an example of a good risk/return ratio:
Imagine your strategy uses 50 pips stop loss and 250 pips take profit. Such trading system needs just a single winner hitting take profit to recover from the last 5 losing trades. This trading strategy needs to win 16% of the trades minimum to get to a break-even point. Anything above means you are on a profitable side.
Of course, it might be more difficult for the strategy to hit 250 pip take profit often on many currency pairs. So it’s natural to have more losing trades here. You need to consider this and the size of the stops when choosing an instrument. 250 pips might be quite a target on EURUSD but it’s not a big deal for the GBPJPY currency pair.
3) Pass the robustness tests
Every Forex robot you create should be stress tested. This is also called a robustness test. Forex Expert Advisors that pass at least one robustness test is considered to have higher chances to win and withstand market changes for longer periods of time. The more robustness tests EA pass the higher chances it has to win.
Robustness test means repeating a backtest of the same strategy many times where each test is slightly different. For example, if a strategy is tested 1000 times and each time history price data was randomly changed by 20% it gives us confidence that such trading system will likely work on different brokers.
Here’s how robustness test of 100 simulations looks like:
We can see that each test produce different results. The more all of these results look different the weaker the strategy. The more of the tests look similar the better the strategy. In this example it does not look like this strategy is robust when prices differ for each test. This also proves our earlier tests on different brokers (ADS Securities vs FxOpen). This is the same strategy. It fails “Randomize history data” robustness test and for such strategy, it is common to fail on different brokers.
While we cannot apply this as a rule of a thumb and it still does not give us 100% guarantee the EA will make the money, it sure gives more confidence and more trust in the automated trading system if it is robust.
Example of a good robust algorithm
Think Google Maps. When you ask for directions from point A to B there are usually several routes to get there. Google Maps will choose the best one according to its algorithm. If the road is suddenly closed or you make a wrong turn the app will recalculate immediately and give you a new route. Basically, you could be taking wrong turns all the time and the app will still be able to show you the most optimal route to get to your point of destination.
This is what we can call a robust navigation system. A robust algorithm which always finds a way to get the job done.
The same is with algorithmic trading which is another name for automated trading systems or Forex Robots.
Like a closed road or a wrong turn, there are many things that can affect every trading strategy.
What makes a Forex robot to stop working?
Here is a list of conditions which break Forex trading strategies:
- Market conditions changes and it happens very often. This breaks most of the strategies and algorithms.
- Spread changes all the time, especially during high-impact economical news releases. That’s extra cost and also a reason why different trades can be taken on different broker accounts.
- There can be slippage on each trade during the entry and then again during the exit. That’s another additional cost which affects the end result.
- A trade might be missed for many reasons which might break the consistency of trading sequence.
- Different brokers (in many cases even different account types) have different price data. This makes the same trading strategy generate different entry/exit signals on different accounts.
There’s a robustness test for each of these problems and I believe that every Forex trader needs to learn about them and be aware.
If you are a Forex robot trader then these things are a must for you. Robot trading without knowing robustness test results of your automated trading system is like driving a car with your eyes closed.
Make sure your Forex robot passes multiple robustness tests so it has a better chance to withstand the market changes and operate profitably for longer.
All strategies fail sooner or later, but if you do not know when to stop you might be simply wasting the money.
4) Demo test every Forex robot long enough
Okay, I know how exciting it is to see 5 winners in a row that grow your account by 50% in a couple of days. We all been there. But this is no indication that you are ready to throw in more money or move that strategy from a demo account to a real live trading account.
Give it at least 100 trades and/or 6 months. We call it the incubation period. If you like the results after the incubation period you might move your trading strategy to a live account. But don’t bet all you got on this. Start small and increase position sizes gradually over time.
When testing any Forex EA on a live or demo account give it enough time to prove it’s good or bad.
Here are the most important metrics to monitor closely any algorithmic trading system:
- Maximum drawdown
- Winning ratio
- Consecutive loses
- Number of trades
- Return/Drawdown ratio
- Profit Factor
- Consistency of trades
Don’t fall into the traps of strategies that make 100 trades during its first month and then do nothing for the rest 5 months. If you won’t analyze your trading results careful enough you might end up picking wrong strategies.
I use MyMT4Book Analyzer to monitor all the Expert Advisors running on the same MT4. Very useful app for MT4 if you are using any type of Forex trading strategy. And if you are using more than one strategy on the same MT4 then MyMT4Book is a MUST!
Here’s how MyMT4Book looks like analyzing one of my MetaTrader accounts with multiple robots trading:
Look how each trading system has its own stats. MyMT4Book shows these statistics for each trading bot:
- Number of trades
- Net profit in pips
- Net profit in account’s deposit currency
- Total swap fees and commissions
- Winning ratio (%)
- Maximum drawdown (%)
- Return/Drawdown ratio
- Profit Factor
- and a few more that could not fit here on the screen 🙂
For me, as a robot trader, MyMT4Book allows analyzing hundreds of Forex robots. Each MT4 allows running 100 Forex robots which makes it very convenient to test lots of automated trading systems at the same time.
I simply install lots of Expert Advisors on the same MetaTrader 4 terminal and then monitor their individual performance.
The trick here is that each Forex EA uses a unique magic number – a special identifier that is set for each of the trades on the account. This way any EA and MyMT4Book itself can easily group thousands of trades and show individual stats for each group.
If you are into testing Forex robots then it is time to move to the next level and start testing hundreds of them.
5) One for all, and all for one
Or should I say One Forex Robot for all and all Forex Robots for one!
Don’t just create one EA and expect it to make you tons of money. Chances you’ll hit the jackpot with one EA are the same of you winning a jackpot in a casino. Create new EAs every day or week until you have 10, 20, 50 or even 100 EAs running. And I even encourage you not to stop at 100 Forex EAs. Go even further.
Try to create lots of EA variations, make them trade on different time frames and instruments. Portfolios like that will give you a high chance to win and make money in Forex trading.
It’s hard to tell what’s the exact percentage of Forex robots that turn out to be successful winners, but I’ve seen from 0.5% to 60% rate. This means if you test 200 robots then it could be that only 0.5% of them will be winners after 6 months, which is simply one single Forex robot. But it also means that there might be 120 winner robots after 6 months.
I’m improving my Forex robot creation methods every week and after all the years I can say that now sometimes I see 60% win rate of all the robots in specific portfolios after the 6-month incubation period.
And if you are wondering how the hell will you install and then later measure the performance of so many robots then I can tell that we have all the necessary tools and methods for that at Forex Robot Factory. We’ve been doing this for years already.
Here’s how inside of one of my dedicated Windows servers looks like:
As you can see I have dozens of real-money and demo MT4 terminals running with hundreds of Forex robots trading multiple instruments. And that’s just one of my servers.
And here’s a screenshot of one of my successful automated trading systems:
I believe this is the only way to succeed in mechanical or automated Forex trading. You need to create thousands of trading strategies and test them well. Let me recommend you a good webclass if you want to learn more about how profitable Forex robots are created nowadays. It does not require programming and you don’t have to be a geek or math genius 🙂
There you can also try the Forex Robot Factory online EA builder/generator for free. Forex Robot Factory can build you thousands of robots daily and it’s really easy to use it without installing anything on your computer. A great thing about it is that I DO NOT need to download, prepare and import gigabytes of history data. Other software requires 10’s of gigabytes of data. Insane!