What are forex robots?
Forex robots are trading systems that run automatically according to a built-in trading algorithm. They can analyse different currency pairs on the forex market for potential trading signals and then place trades on behalf of the user when they find a trade that meets the robot’s criteria. The robot can also manage trades, placing stop losses, take profits, trailing stops, break-evens and close the trade on behalf of the user.
There are thousands of free and paid forex robots available online. You can download from various sources such as blogs, forums, commercial sites, brokers and more. These will usually come with recommended currency pairs, timeframes and settings. However, you are free to experiment as you wish the robot settings. You can also create a forex robot based on your own trading system idea.
How do forex robots work?
Forex robots run in trading platforms, scanning the charts that they are attached to for trading signals. When they find a signal that matches the parameters set, they place a trade and manage it according to the money management settings. Forex robots can be setup on multiple charts and timeframes, running either 24 hours a day or during fixed hours. It is important to note that forex robots are rigid and trade according to what they are told to do within the code. Whilst this can take some of the emotion away from trading manually, it also means they may not be able to account for some market conditions that the human eye can see.
What to look for in a forex robot?
Forex robots can be designed to use different trading systems. Some may follow trend trading systems; some may follow reversal trading systems and others may use a combination of both. Then you have robots that use grids and martingale money management which I personally find too dangerous for my tastes. It is important to consider your trading style and goals when analysing available forex robots. Some of the things to look for are:
- Currency pairs & timeframes
- Verified historical results & years in operation
- Back testing results & quality
- Total profit/loss
- Profit factor
- Win rate
- Average win vs average loss
- Broker sensitivity
- Money management
- Trading days & hours
What do you need to use a forex robot?
In order to run a forex robot, you will need a forex trading platform such as MetaTrader and a trading account with a forex broker. Forex robots can be developed within the trading platforms programming interface or by using a third-party robot development application. You can also purchase and download forex robots from many online sources.
Forex robots can run on trading platforms on your local machine or on a Forex VPS. A virtual private server (VPS) allows you to run a trading platform remotely 24/7 and can therefore be useful if it is not always practical to keep your computer or laptop up and running all of the time. This may depend on if there are any specific trading hours the forex robot needs to be running. Some may trade fixed hours and therefore you may not always need the platform running whereas others may analyse the markets 24 hours a day for trading signals. It is worth noting that even if a forex robot trades fixed hours, it may still need to manage trades outside these hours.
Another thing worth considering is the performance of the machine the forex robot is running on. Internet connection speeds, latency, memory and other factors can have an impact on the robot’s performance, especially with scalping systems that rely on quick entry and exits into the market.
Do forex robots work?
Forex robots can only do what they are coded to do. The success rate of using a forex robot can depend on many variable factors. This includes the input settings, broker conditions and current market. The same forex robot may perform well one month at a particular broker with specific settings but may perform badly during the same period at another broker using different settings.
I think it is important to be aware of the fact that nothing is guaranteed in trading and there will always be good and bad spells. Some large funds and other investments go through months and even years of drawdowns, this can be normal. If a robot has a bad period, it does not necessarily mean that it is a bad robot. Even the best forex robots can go through periods of stagnation and drawdowns. That being said, there are forex robots that are just poorly coded with no real thought put into them. These tend to give the industry a very bad name and have made most people be extremely cautious with forex robots and rightly so. You may wish to read my piece on how to avoid forex scams.
It is important to consider what you want to achieve with a forex robot. If you are expecting a million dollars over night then for sure, you will be disappointed. If you are prepared to take the risk and make a modest return fully automated, then you may wish to explore forex robots further.
How are forex robots created?
Forex robots are created by programmers who will usually have an idea for a trading system that they have developed themselves and want to automate or they may be working on behalf of a client who has a trading strategy that they would like to be automated. The process of developing a forex robot usually goes something like this:
Choose a trading system
The first step to creating a forex robot is to think of an idea for the trading system that it will use. This could be a basic moving average crossover system or something more complex that combines multiple indicators along with candlestick patterns, built-in news calendar and more. Forex robots are capable of automating nearly any forex trading system that you can think of.
Some developers may even create a mammoth forex robot that combines multiple different trading system in one. This allows the user to customise the robot to their own individual needs whilst it can also be a useful way to back test multiple different systems all at once. You may wish to check out my free forex robot that has over 40 technical indicators and 11 candlestick patterns built in.
Develop the forex robot
Now that you have an idea of the trading system that you want to automate into a forex robot, this is when the fun part starts, the programming! Either you or the developer that you have hired, will start to put the code together using the required programming language depending on the trading platform being used.
Forex robots are commonly developed in the MQL MetaQuotes Language 4 (MQL4) which is an object-oriented high-level programming language intended for writing automated trading strategies, custom technical indicators for the analysis of various financial markets. It allows not only to write a variety of expert systems, designed to operate in real time, but also create their own graphical tools to help you make trade decisions.
MQL forex robots run in the ever popular MetaTrader platform which is available from most online forex brokers. The platform also has a few robots included by default and a marketplace where you can download hundreds and thousands of forex robots, both free and paid. Some will have historical results for you to check past performance although this is of course no guarantee of future performance. You can also check out my best forex brokers for some commercially available robots to see how they are performing.
Optimizing a forex robot
Now that you have automated your trading system into a forex robot, it is time to optimise the robot in order to try and find some suitable settings according to your own trading style and individual goals. Optimisation involves running the robot with a combination of different settings over historical data from various currency pairs and timeframes. The purpose of this task is to try and identify which combination of settings work best together. It can also be a way to determine if the forex robot is actually worth pursuing or if the implemented trading system needs to be amended in the case there are no good results from the optimisation.
The MetaTrader platform which is one of the most popular trading platforms for forex robots, has a built-in strategy tester which allows you to back test a robot’s settings over many years of data. By default, the strategy tester is limited to 90% modelling quality and the default historical data. This is not considered to be the best way to back test as the results can be far from accurate. To improve on the strategy tester as much as possible, you could use a third-party software tool such as Birts Tick Data Suite which can enable you to back test in MetaTrader with tick data, variable spreads, commissions, slippage and 99% modelling quality.
Whilst it is impossible to get 100% accurate back tests, this in my opinion is the closest it gets. That being said, even if we had 100% back testing capabilities, it does not take away from the fact that anything can happen in trading. Thus, all historical results should be taken with a pinch of salt and used only as a rough guide. We also need to consider over optimisation which basically means the settings are just “perfected” for the data that they are being used on rather than logically sound.
Once the optimisation process has finished, you will either have a good selection of set files to choose from or you will need to go back to the drawing board and come up with a new trading system to automate.
Testing the forex robot
The next step once you have a collection of set files for your chosen currency pairs and timeframes, is to test the forex robot. I would always run a forex robot on a demo account to begin with. This will allow me to evaluate its performance risk free and familiarise myself with how it works. It can also be a good way to identify and iron out any bugs.
One thing I would try to avoid is giving up too early. I see traders all the time who have 1 or 2 losing trades and believe that means the forex robot must be a scam and does not work. This can be due to timing, incorrect settings, market or broker conditions and many other factors. All trading is risky and carries an element of risk. No system is 100% profitable all of the time. If you do know of one, please share it with me!
That being said, there are forex robots that are poorly coded and use bad money management. It is imperative to research as much as possible and check any available statistics to ensure the forex robot meets your goals and that you are happy with it. From my experience, any manual or automated forex trading system, will always have losing days, weeks and months! That is trading.
Evaluate the forex robot
Once enough time has passed, you can take a look at how the forex robot has performed. You may wish to take into account the win rate, profit factor, drawdown, average win vs average loss, total profit, total loss, etc. From here you could decide if it is a forex robot you would like to keep running or would prefer to set aside for an alternative automated solution. Forex robots can also be set to send you an alert which will allow you to double check the signal before taking the trade. These are known as semi-automated forex robots and give some control back to the user. After all, there are some external factors that robots cannot account for such as black swan events, market crashes, etc.
Forex robot conclusion
Hopefully you now have a clearer understanding of what forex robots are, how forex robots work and how to develop a forex robot. Whilst there are many poorly coded robots out there, if you do enough research and due diligence, you may find the odd gem. You may even have a trading system that you have been successfully using manually and want to automate to help make things easier for you. Just go careful and keep in mind the risks involved with trading, never risk more than you can afford to lose. Past performance is by no means any guarantee of future results.
Please feel free to compare some commercial forex robots on my best forex robot page. If you would like to practice trading with a forex robot, you can open an account with a forex broker and download a trading platform. If you are looking for a forex broker, you may wish to view my best forex brokers for some inspiration.