Forex robots portfolio

Forex robots portfolio

Dear friends, this is going to be another long post, please bear with me because it contains all the details of an exciting challenge: long term forex profitability. I’m not talking about huge quick profits followed by fast droppings, I’m talking about consistent and realistic monthly earnings. This post represents my way of thinking and my actual model of forex trading. This may change in the future, but for now I stick to it. And since I don’t like empty words, I’ll show you one of my live accounts on which this portfolio runs. One more thing: I’m not trying to sell you anything or convince you of anything so please keep the criticism for those unscrupulous sellers who can’t back up their claims of becoming billionaires (if that’s the way things are, why do they sell you those $299 webminars/courses/guides/EAs without showing you a live account instead?). Of course, I’m not talking about those few honest vendors, you know who they are.

My approach
My current approach can be summarized in a few words. They are not my words, they belong to a russian trader.

“The system itself is actually a reflection of the outworld. The harmoniously developing life dictates its laws. When children, we all observed the following scene: ants hold a straw from different sides and pull it into an ant-hill. And each ant pulls the straw its own way. Nevertheless, finally the stray is carried in the direction of the ant-hill!”

How does this translates in actual trading? I’m going to use different strategies in a single portfolio: trend follower, pullback, swing, scalper, volatility breakout. All these are profitable on backtest in the long haul, their drawdown periods are not correlated therefore strategies are different but profits are summed up. I’m using a forex robot for each strategy.

My rules that all forex robots from my portfolio must obey

1. Entries are taken at the beginning of a new bar only.

2. Stop Loss and Take Profit are sent to broker server for protection in case of disconnects.

3. Entry and exit rules must be as simple as possible. One extra rule = one more step toward curve fitting and I don’t want that. Money is made on the future, not on backtest.

4. I have my strict optimization rules and all my robots must obey them.

My optimization rules

Just optimizing the robot from 2000 to 2013 and choosing the best performing parameters doesn’t work properly. Here are my methods of optimization:

1. At first, the robot must survive without any optimization! I only code the entry and exit rules and hit the Start button in MT4 backtester. If the strategy is valid, then it should survive, please note I’m talking about survival not profit. But it must survive. If it doesn’t, I don’t waste my time on it.

2. To a certain extent, every EA is curve fitted, a rule is a form of curve fitting when we talk about non-deterministic systems, please read the rest of my articles to get a grasp of the concept. But money are made in the future, not in the past, so the present must be adjusted and prepared to face the future, not the past. Therefore, I optimize the forex robot from 2007 to 2013 then test the resulted parameters against the past period 2000-2007. If the drawdown remains almost the same, the profit almost doubles and the number of trades is large enough for the chosen timeframe, then the parameters are valid and should be written down for further use.

3. The forex robot must survive and be profitable on a correlated pair without any kind of optimization for the test pair, I’m just using the best selected parameters for the main pair. For example the best performing parameters resulted from backtesting the forex robot on EURUSD must be profitable on USDCHF also.

4. The following criteria should be met:

(Total profit in pips / number of years to backtest) / maximum historical drawdown in pips > 1

The last selection criteria

This should give us a clue about how the forex robot behaves under real live trading conditions. Please note that this formula is made by me, it’s my personal criteria, don’t be surprised if you can’t find it anywhere else.

Real Profit Ratio (RPR) = ((WFER * Total profit in pips) / number of years to backtest) / MCWCS


WFER = Walk Forward Efficiency Ratio

MCWCS = Monte Carlo Worst Case Scenario (MC analysis is performed having the best selected parameters as a starting base)

If RPR<0.5, the EA should be discarded.
If RPR>0.5 AND RPR<0.6 – modest performance
if RPR>0.6 AND RPR<0.8 – good performance
if RPR>0.8 – an excellent EA!

Forex robots from my portfolio and their characteristics

All backtests were conducted with spread=2, starting balance of $10,000, fixed lot of 0.1, Alpari UK no holes data. Period 2000-2013

1. Trend follower, EURUSD, M30
Total profit in pips: 21,397
Maximum drawdown in pips: 978
RPR: 0.7

2. Pullback, EURUSD, M30
Total profit in pips: 17,780
Maximum drawdown in pips: 700
RPR: 0.8

3. Pullback, USDCHF, M30
Total profit in pips: 16,127
Maximum drawdown in pips: 750
RPR: 0.65

4. Scalper, EURUSD, M30
Total profit in pips: 5,367
Maximum drawdown in pips: 260
RPR: 0.9

5. Swing (Forex Cleaner), EURUSD, M30
Total profit in pips: 12,878
Maximum drawdown in pips: 1000
RPR: 0.5 (oops)

6. Countertrend, EURUSD, H4
Total profit in pips: 15,387
Maximum drawdown in pips: 800
RPR: 0.55

7. Volatility breakout (Forex Fancy Bot reoptimized), EURUSD, M15
Total profit in pips: 13,000
Maximum drawdown in pips: 600
RPR: 0.6

* The robots marked with red are publicly available commercial EAs, the rest are my private EAs.

Here is how my portfolio looks like:

Forex Robots Portfolio

Forex Robots Portfolio

Portfolio Stagnation

Portfolio Stagnation

Portfolio monthly profits

Portfolio monthly profits


Overall portfolio performance
Total profit in pips: ~ 107,000
Maximum historical drawdown in pips: ~1800
Maximum number of days without profit (drawdown length): 111

8,200 pips per year on average for a maximum historical drawdown of 1,800 pips.

The worst case ever we should expect is half the average profit and double the maximum historical drawdown. (~WFER = 0.5, ~MCWCS = 1800 * 2). Even in the worst case we should still have a positive profit ratio: (8,200 / 2) / (1800 * 2) = 4100 / 3600 = 1.13

This means I should prepare to suffer without a blink of an eye a drawdown of 3,600 pips and a drawdown length of 4 months in the worst case scenario. I’m trading $500 with 0.01 lots so the maximum drawdown I can experiment is 360 pips ($360).
But the reward is very appealing: ~8,000 pips per year ($800) for a maximum drawdown of 1,800 pips ($180).

In the next article I’ll give details about the strategies I’m using and about my private EAs. Forex Cleaner and FFB (Forex Fancy Bot won’t be much discussed, they were publicly available commercial EAs). Forex Fancy Bot will be updated at the end of this month and all members will receive a notification email.

And keep in mind: don’t invest what you can’t afford to lose and don’t keep your eggs on the same basket. I have a large number of live accounts spread across multiple brokers. And I don’t invest what I can’t afford to lose, I keep adding $500 to my account every month. For this account, I can only lose $360 so I’m very relaxed. I hope for your sake you got the point. There are no guaranteed profits in forex, forex is an art, not a science, otherwise we all would have been billionaires by now.

If you want to receive news from me in real time just Like my facebook page.