The key to successful automated currency trading is testing. If a trader is going to entrust her trading capital to a computer program, she should be sure the program’s assumptions are correct even before she begins an extensive testing campaign. In particular, the assumptions made about entry prices and exit prices need to be checked carefully.
If the automated currency trading system the trader is testing buys at the bid and sells at the ask, it should always test as being profitable, but will almost certainly go broke in the real world. By definition, a currency trading system cannot buy at a price where there are no sellers or sell at a price where there are no buyers, and will therefore likely go broke. The impossibility of buying the bid and selling the ask means any automated currency trading system that returns results using those numbers is producing seriously flawed profitability numbers.
Once the trader has hand-checked her automated currency trading system to be certain that the trades are reported as buying at the ask or selling at the bid, she then should test the system itself. The system should be backtested using bootstrap and Monte Carlo methods, maintaining bid-ask vigilance. From the backtesting numbers, the trader will focus on two particular things: trader’s edge and drawdown.
Needed data to calculate the trader’s edge are the percentage of wins (%W), the average win (AvgW), and the average loss (AvgL). The trading edge equals %W*AvgW – (1-%W)*AvgL. The term for that equation is “mathematical expectation.”
The distance from any peak down to the bottom of an adjacent valley in the equity curve is the drawdown. Drawdowns on the order of 50% are common with automated currency trading systems. The trader will need the finances and a high risk tolerance to tolerate a drawdown of that magnitude. Trader’s edge size is also important, and if the automated currency trading system has an edge of only $5 US Dollars (USD) or $10 USD per trade on $100,000 USD of face value, many trades will be needed daily to generate a decent income. An additional risk with a small edge is that if something completely unexpected happens, the system could give back all its winnings in one unexpected loss.
Finally, the system must be tested using real time data. Here, too, the trader will need to hand check the entries and exits to be certain that the trades could have been executed. Unless the trader has written the program herself, she will need to sit in front of a trading screen to check the actual prices available at the time the automated currency trading system produces an order to buy or sell. These are all things a trader must do to give herself a good chance to trade profitably.