The reason that I've spent so long on the review is that, despite the fact FxPromax appears to be a long term profitable Expert Advisor, all of my analysis points towards it being a somewhat unappealing EA. That doesn't mean that it's a bad robot in any way, on the contrary, but I do believe that it will only suit a relatively small minority of Expert Advisor users.
The only thing I can do is to try and explain more about my reasoning later within this review.
First things first though, and the developer's website consists of several pages, and includes information on recommended brokers and VPS services, although there isn't much information on FxPromax itself by way of an explanation about the type of EA it is or how it works. Let's see if I can fill in some of the blank spaces.
About the EA
FxPromax is a scalping EA which works round the clock primarily on the EURUSD symbol on the 1-minute timeframe. I say primarily, because there is a link on the developer's website to a MyFxBook page which includes several trades on a couple of other symbols, but more about that later.
The EA relies upon a combination of several different indicators to work their mojo and deliver trade entries. Having decided that it would like to trade, FxPromax then places a limit order with a 20 minute expiry to enter the market only if the the price retraces to the level of the limit order.
The result is that just fewer than 50% of the limit orders get a fill and the majority of them end up being deleted after 20 minutes.
Having entered a trade with a filled order, FxPromax then sets a fixed stop-loss and take profit (the default values are 9 pips SL and 120 pips TP). Because it doesn't set the TP and SL until after the trade is open, the FxPromax EA works fine with ECN and STP type brokers. There is no stealth system within the EA to close trades ahead of these values, so all trades either run to a TP or to a full SL.
FxPromax will only allow one trade at a time and, as such, it is fully NFA hedging and FIFO compliant.
The fact that FxPromax only uses the fixed TP of 9 pips and a SL of 120 pips makes understanding the performance of the EA a straightforward exercise in mathematics. It's very easy to calculate that the percentage of winning trades which is required for the EA to breakeven is 93.02%. If FxPromax wins more than 93.02% of its trades, it will be profitable. If it wins less than 93.02%, it will lose money.
Easy innit! Well no, this scenario is really only applicable if constant lot sizes are being employed, but it's made a little messier because FxPromax includes an option to apply a form of Martingale to attempt a quick recovery after a losing trade by increasing the trade sizes of the following batch of trades.
I'll discuss the Martingale aspect of FxPromax in greater detail a bit later on. For the moment though, the developer's website claims that FxPromax enjoys a 95% rate of winning trades. The expectation, therefore, is for it to win 255 pips on average for every 100 trades.
Setting FxPromax up
The EA is downloaded from the developer's website after purchase in the form of a zipped folder which contains the EX4 and DLL. FxPromax isn't wrapped in its own installer, so it is necessary to copy the files across to the relevant MetaTrader installation folder. There is also an 8 page PDF manual together with a number of preset files available for download, with the preset names ranging from "conservative" to "very aggressive".
Following installation, users are invited to submit a form to the FxPromax developer containing the account numbers on which they intend to use the EA, so that the EA can be activated for use. Each licensed copy can be used on one live account and up to four demo accounts.
The EA contains 15 parameters which users can adjust as part of its operation. These parameters control whether the EA is to trade fixed lot sizes or if it is to risk a fixed percentage of the account balance. In addition, users can decide whether or not they want to trade on a Monday and/or Friday, and the SL and TP distance can also be adjusted, as can the length of time before limit orders expire. There are also parameters to control if or how Martingale is to be used to effect a loss recovery, plus a mysteriously sounding strategy parameter called "DeltaPips".
The DeltaPips parameter is dimissed within the instructions which simply say to leave it at its default value which is 5, yet all the preset files had it set to 3 which only served to heighten the mystery.
With temptation having got the better of me, I looked in closer detail and figured that the DeltaPips are the distance away from the current price at which the limit order is placed to enter a trade. One potential issue is that the value for DeltaPips must be equal to or greater than the broker's stops level, and users are likely to see the EA take fewer trades if a broker has a relatively high stops level because the price is less likely to retrace sufficiently to fill the limit order.
Finally, there are a couple of parameters that seemed to me to serve no real purpose. Firstly, there's a slippage parameter. If limit orders are being used for market entries, I don't see the point in allowing a broker to help himself to a few pips of slippage at my expense. Secondly there's a parameter to lock in 1 pip of profit for every 10 pips of open profit that the EA makes. Seeing as the default TP of FxPromax is only 9 pips, I struggled to see how this parameter would be of any practical use.
The Strategy Tests
Readers of my previous articles will know by now that I'm no fan of Martingale so, for my first strategy test on the EURUSD symbol, I opted to use Tadawul as a broker with the Martingale element of the EA turned off. Tadawul are an older style 4-digit broker who have a fixed 2.0 pip EURUSD spread and their stops level is 5.0 pips. This meant that I had to leave the DeltaPips parameter at its default level, as setting it any lower than the stops level would have no effect whatsoever.
Readers will also know by now that I'm not one to take excessive risks, so I set the EA to risk no more than 5.0% of the account balance on any single trade.
I left the EA's other parameters at their default values, which also meant that FxPromax would take trades on Fridays but not on Mondays. I presume that the developer opted for these settings as he had carried out his own tests and found those settings to be best.
Tadawul - EURUSD - 2.0 pip spread - 5.0 pip stops level - without Loss Recovery
Anybody who looks closely at the above image should not be concerned that the equity curve only shows a 25% modelling quality. This is a standard aspect of any MetaTrader strategy tests which are being run on the 1-minute timeframe.
Before considering the above results in any detail, I decided to run the same test with the Martingale loss recovery feature turned on. To explain a little bit about how FxPromax uses Martingale, I'd like to explain first that the EA has a very high risk/reward ratio of 13.33. This value is obtained by dividing the stop-loss of 120 pips by the take profit of 9 pips.
In order, therefore, to recover a loss within one trade, the EA would need to multiply the lot size of the losing trade by a factor of 13.33 simply to claw back the loss and break even over two trades. The problem with this approach is that, assuming your first trade risked and lost 5% of the account balance, you would need to risk 66.7% of your account balance on the second trade just to get back to where you started. If the second trade went wrong, you'd be down nearly 3/4 of your account!!!
The approach that FxPromax uses towards Martingale is that it attempts to recover a loss over a number of trades which the user can determine himself. The default seems to be to multiply the losing lot size by a factor of 2.5 for the next 5 trades. Assuming that all five trades were to win, you'd have recovered nearly 94% of the loss over those 5 trades. Please bear in mind that this figure is dependent upon the particular lot sizes that your broker allows you to trade.
In addition, it's also important to remember that recovery is dependent upon the next five trades in the sequence all being winners and that, if any of them lose, you'll have lost a further 12.5% of your account balance on each losing trade (assuming you use the defaults).
Anyway, that's the theory. Here are the backtest results with the default Martingale being applied. Note the relative drawdown level which is nearly 50%.
Tadawul - EURUSD - 2.0 pip spread - 5.0 pip stops level - with Loss Recovery
I wouldn't want to be risking as much as 12.5% of my account balance on any one trade, and I certainly don't want to incur drawdowns of nearly 50%, so I'm going to dismiss the Martingale feature of FxPromax within this article right here and now.
Having carried out these two tests with Tadawul, there were a number of things that occurred to me leading me to suspect that a broker like Tadawul might not be the best for this EA. Firstly, Tadawul's stops level meant that I couldn't test the DeltaPips setting properly. Secondly, I wondered if Tadawul's lot step and the fact they do not use 5th digit pricing may be encumbering performance.
I therefore decided to repeat my first test (i.e. without Martingale) using an Alpari demo account featuring a 0.8 pip spread, microlot sizing and a 2.0 pip stops level.
I ran my first Alpari test with DeltaPips set to its default of 5.0 pips. Clearly, the combination of tighter spreads, microlot sizes and 5th digit pricing improves overall performance, although the drawdown remained at a similar level to the earlier Tadawul drawdown.
Alpari - EURUSD - 0.8 pip spread - 2.0 pip stops level - without Loss Recovery - DeltaPips 5.0 pips
I then ran the test once more with DeltaPips set to 3.0 which is the value used within the developers various preset files. This resulted in about 40% more trades being taken, but the quality of those extra trades looks to be poorer, as the net profit only sees a minimal increase which is accompanied by a significant increase in the relative drawdown and a slight drop in the rate of winning trades.
Alpari - EURUSD - 0.8 pip spread - 2.0 pip stops level - without Loss Recovery - DeltaPips 3.0 pips
Finally, readers may have noted at the beginning of the article that I commented on a MyFxBook account of the developer's which showed FxPromax being used on other symbols. I therefore decided to run a test on the GBPUSD symbol with Tadawul using default settings to see how it performed.
Tadawul - GBPUSD - 3.0 pip spread - 5.0 pip stops level - without Loss Recovery
The poor default performance on the GBPUSD symbol discouraged me from carrying out further tests on other symbols.
Firstly, it is clear that if FxPromax is to work with any currency symbol other than EURUSD, the vendor will need to provide a different set of TP and SL values for those symbols which will actually be profitable.
Secondly, it is my firm opinion that the EA shouldn't be used with Martingale turned on, and that FxPromax shouldn't be used with a risk level greater than 5%. I say this simply because the higher drawdowns which will be incurred from using a higher risk setting will almost certainly spook users into removing the EA from their account completely.
That said, with a long term strategy test win rate in excess of 95%, the EA certainly seems like it will be profitable over a sustained period of time and therefore is deserving of a place as part of a portfolio of robots. FxPromax also seems to be broker dependent, and it looks far better suited to ECN style brokers than to older style, fixed spread brokers.
As seen above, my best strategy test results were obtained from Alpari using the EA's default settings including a DeltaPips value of 5.0 pips, so I carried out a risk simulation on those results.
The risk simulation in itself suggests a reasonable level of satisfaction amongst users, with around 45% of users unlikely to see their account balance drop below the initial deposit. I would, however, view the minimum number of 26 trades merely as a likely indication of outcome, and wouldn't rely upon that figure. The figure was obtained from 50,000 random passes over 10 years, but it may be that more random passes were needed with this particular system because of its combination of very high win rate and very high risk/reward ratio.
So what's the catch?
Well, the biggest problem the EA has is its very high risk/reward ratio followed, a close second, by the fact that it's an infrequent trader. After FxPromax has a losing trade, the high risk/reward ratio means that it is going to take a further 14 trades to recover the drawdown. And that's assuming those 14 trades are all winners - if one of them loses, it's going to take longer! But, even if you use an ECN broker who can replicate the Alpari demo strategy test results going forwards, this EA only trades between 90 and 100 times a year. So, best case scenario, it's going to take nearly two months to recover a drawdown.
In actual fact, if you look closely at the backtest results, you can see that the EA wouldn't have recovered from the drawdown which started in November 2007 when the backtest account balance peaked at $11,036 until October 2009 when the balance returned to its former level. Users would certainly need a high pain threshold and considerable patience!
Of course, there is also a potential upside to this. Studying the strategy test results some more shows that the longest winning streak was 116 trades. In other words, the EA could easily go for a whole year without seeing a single losing trade!
The other thing to note is that, to use the EA safely with only a 5.0% risk per trade, the average annual return is only around 11%. Against that return, there is a possibility of a 20% drawdown at some stage.
Finally, use of the EA involves a one-off payment of $149.00 plus a monthly licence payment which is currently $39.95. Assuming an average annual return of 11% at 5% risk, users would need to deposit a minimum amount of over $4,300 just to cover the annual $480 licence fee. This doesn't take into account the initial payment either.
That's what I meant in my opening paragraph when I said that FxPromax wouldn't suit everyone. That aside, the EA looks to be profitable, and I certainly believe that it should form part of a portfolio of EAs to be used by serious, long-term hardened investors who understand that markets can, at times, be irrational and are prepared to accept this EA for what it is.
As part of my testing, I've set the FxPromax EA up on a $5k FXCC demo account trading the EURUSD symbol on the 1 minute timeframe.
I'm using the EA's default settings with the exception that I have set the slippage to zero and have adjusted the TP to 10 pips and the SL to 119 pips.
FXCC are a raw spread ECN broker who charge a 1.0 pip round trip commission per trade. I believe that they are well suited to being able to replicate the Alpari strategy test results, and my adjustments to the TP and SL will compensate for the commission they charge.
You can monitor FxPromax's performance at MellyForex by clicking here and there is a thread on the MellyForex forum here where people are welcome to discuss FxPromax.