Armada Quant FX Portfolio Trader MT5
- Experts
-
Sable Pacific LLC
Algorithmic trading systems developer for 20+ years.
We design and build automated trading systems for forex, futures and stocks. Here on MQL5 we publish Expert Advisors for MetaTrader 5. - Version: 2.1
- Activations: 10
One Expert Advisor (EA) trades 11 forex pairs from one MetaTrader 5 chart, as one portfolio in one account, with a Drawdown Filter on each pair: it exits a falling pair while the other ten keep trading, and re-enters it once the fall shrinks and the trend turns up. In a simulated 17+ year test, the worst drop was 30.9% with the filter ON and would have been 87.7% with it OFF (see the statement below).
Try it first with the free demo version, which runs in the MetaTrader 5 Strategy Tester.
It is a multicurrency EA: it adds the 11 pairs to Market Watch itself, under your broker's own symbol names: EURUSD, GBPUSD, AUDUSD, USDCAD, USDCHF, EURGBP, AUDCHF, AUDCAD, CADCHF, GBPCHF and EURCHF.
What makes it different
Armada Quant is built to trade eleven pairs as one disciplined portfolio.
- One EA, one chart, 11 pairs: attach it to one chart and it trades all eleven from there, in one account. No eleven charts, no eleven setups, no eleven things to get wrong.
- No lot sizes to work out: type the money you want it to trade with in Capital, or leave it at 0 to use the account's own balance. No percent per trade to pick and no set file to load. The panel on your chart shows the smallest account your broker allows at the tested proportions.
- A Drawdown Filter on each pair: one example… in the simulated test, during the 2020 COVID crash, it exited AUDUSD on March 16 while the other ten pairs kept trading, and re-entered it on April 9 (see the statement under Test results).
- Compounding you control: at the default 100%, every closed result, win or loss, goes into the money new positions are sized from, so sizes grow after gains and shrink after losses. You choose how much compounds, from 0% to 100%.
- A loss limit, if you want one: one stop for the whole portfolio, in percent of Capital, plus the profits that compounding has added. Off by default, and off in every result shown here, but we wanted to give you the option.
- Built for real accounts: before every decision it re-reads its positions from your account, and it retries an order if your broker briefly refuses, for the purpose of keeping the live account in sync with the EA. If a second copy with the same magic number runs on the account, both stop opening and adding until you remove one and restart the other. A status panel shows what it is doing, with optional phone notifications through MetaTrader's own push service.
The usual problems, and our answer to each
"It worked in the tester, then failed on my broker." Many forex traders have seen this, and it happens to every system, not just one: each broker has its own price feed, spreads, swap rates and server clock, so the same EA never trades exactly alike on two brokers. That is why we name the data our test ran on, MetaQuotes, and ran the same EA on two other brokers' price data, Alpari and FXTM, with their lower results, swap gap included, shown beside ours. Your broker will differ too, so run the free demo on your own broker's data before you pay anything.
"It kept adding to a losing position until the account was gone." Many traders have lived through that one. Armada Quant adds to a position only when price has moved far enough against it and its entry signal fires again, a sign the move may be ready to turn, and only up to a fixed limit. On top of that, every pair has its own Drawdown Filter, and you can set one loss limit for the whole portfolio if you choose.
Dozens of inputs, and no idea which ones were tested? One input to set, Capital, and you can leave it at 0, if you want the EA to automatically use your entire account balance. Every other input comes preset at the tested values, and the rules that decide when it buys, sells and closes are fixed inside the EA. What you test in the Strategy Tester is what you run.
None of this gets settled by reading more reviews. It gets settled by running the EA on your own broker's data and watching what it does. That is why there is a free demo.
The Drawdown Filter
Every buyer of an EA that adds to losing positions fears one thing: a pair that keeps adding into a crash. Here is what Armada Quant does instead:
The Drawdown Filter watches each pair's result on its own, open positions included, and decides once a day. A pair is exited when two things are true: its result has fallen about 17.6% of Capital below its high (at the default setting), and that result is still going against you. It makes no difference whether the pair holds buy or sell positions, because the filter watches the pair's result, not the direction of the price. The EA then closes that pair's positions at the next hourly open and stops trading it, while the other pairs keep trading as usual. While the pair is out, the EA keeps tracking the positions it would have held, including the adds it would have made. Once that tracked result has recovered to within about 8.8% of Capital of its high (half the exit amount) and its trend has turned in your favor, the EA re-enters and takes on the positions it would be holding at that moment, the ones it kept track of while it was out. It all happens automatically, so you don't need to follow every detail.
It is not a stop loss on each trade and not a stop on the whole account: Each pair gets its own individual Drawdown Filter, running automatically inside the portfolio.
In the 17+ year test on MetaQuotes data the Drawdown Filter acted three times: AUDUSD was out from July 2009 to September 2012, USDCAD from July 2015 to March 2016, and AUDUSD from March 16 to April 9, 2020. The other nine pairs were never exited.
The Drawdown Filter costs some return, and here is how much: in the test the average yearly return was +27.3% with it ON and +30.4% with it OFF (2009–2025). That is the trade-off: some return given up for a much smaller worst drop, 30.9% instead of 87.7%. Put another way: at a fixed size, an account that wanted to keep its worst drop near 31% without the filter would have had to trade at about a third of the size, and give up about two thirds of its return.
On Alpari and FXTM price data, for an account started in January 2011, it also acted twice, on other pairs: EURCHF in May 2013 and EURUSD in January 2015. The worst drop with it ON was 27.5% of the value at the high on Alpari data and 22.8% on FXTM data, and 70.7% on FXTM data with it OFF.
These figures are simulated; the hypothetical-performance statement under Test results applies to them. As mentioned above, as with any Forex trading, results can differ from broker to broker.
How it trades
For each pair, the EA decides once an hour, at the close of each H1 bar, and acts at the open of the next bar. It trades both long and short. It opens a position only when its entry conditions line up on that pair, so the first trades can take hours or, at times, a few days to appear after you attach it (it waits for its signals rather than forcing trades). After that, with eleven pairs working at once, it stays busy: in the simulated test it averaged about 78 positions a month across the eleven pairs.
Most positions are a single entry. When price moves against an open position and its entry signal fires again, the EA adds a further position, up to a fixed limit. Each add is normally larger than the one before, so the position and the margin it uses grow while it shows a loss. In the 17+ year simulated test the deepest position used 15 adds after its first entry (19 on Alpari data).
The whole position closes at once, at an hourly close where it shows a profit and its exit signal fires; spread, swap, commission and price gaps can still make a closed position end at a loss. The other ways out are the Drawdown Filter's exit, the stop after 100 entries (MaxEntryStopLoss, which never fired in the test) and, if you set one, the loss limit (off by default and not part of the tested results).
There is no stop loss on each trade, by design: until its exit comes, the EA holds a position and may add to it, so the open drawdown can grow and the account can fall far below its high meanwhile. Capital is the key lever: above the minimum account size, a smaller Capital means smaller positions and smaller drawdowns in money.
Test results
All results are simulated: the MetaTrader 5 Strategy Tester on MetaQuotes demo data, January 1, 2009 to September 25, 2026. All 11 currency pairs traded together from one chart in one account, with compounding at its default, 100%, and the Drawdown Filter ON at its default level, 10. Returns are in percent of the account's value at the start of each year, drops in percent of the value at the high.
Average yearly return: +27.3% of the account's value at the start of each year (full calendar years 2009–2025). Run the same way from January 2011, it averaged 26.2% a year over 2011–2025 on MetaQuotes data, 22.9% on Alpari data and 20.7% on FXTM data, in large part because those brokers charge far more swap (overnight interest).
No full calendar year lost money in the test (2009–2025). That did not hold on every broker's data: from January 2011, FXTM data lost 2.6% in 2023. Your own results will also depend on when you start, on your broker and on the settings you choose.
The COVID drop was the largest drop in the test: the account fell for 43 days and made a new high on May 12, 2020, 54 days after the low.
Activity in the test: 16,668 positions, about 78 a month; average hold 3.1 days, median 10 hours; 84% of positions were a single entry.
The worst drop depends on when you start. In test runs started on eight dates from January 2010 to February 2020, the COVID drop was 10.0% to 33.2% of the account's value at its high on MetaQuotes data, largest for an account started on November 1, 2019. On FXTM data, for accounts started between November 2019 and February 2020, it was 12.1% to 34.3%. All eight runs on MetaQuotes data ended 2020 above their starting balance.
These results are based on simulated or hypothetical performance results that have certain inherent limitations. Unlike the results shown in an actual performance record, these results do not represent actual trading. Also, because these trades have not actually been executed, these results may have under-or over-compensated for the impact, if any, of certain market factors, such as lack of liquidity. Simulated or hypothetical trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to these being shown.
How to test the free demo
The free demo version runs only in your own MetaTrader 5 Strategy Tester; one test on one chart runs all the pairs, like the test above. It is the same EA you buy, not a cut-down version.
To run the test above yourself:
- Download the free demo version from this product page.
- In MetaTrader 5, add the 11 pairs to Market Watch first.
- Sign in to a MetaQuotes-Demo account, so the tester uses MetaQuotes data like the test.
- In the Strategy Tester choose this EA, the symbol EURUSD, the period H1, the model "Open prices only", leverage 1:100 and a deposit of $175,000. That deposit repeats the test; it is not a suggestion for your account.
- Set the dates from January 1, 2009 to September 26, 2026 (the day after the data ends), leave Capital at 0 and start the test.
The first run is slow while the history downloads. Then run it again signed in to your own broker's account: that is the test that matters most for you.
Risk
Most positions in the simulated test closed with a gain, but a high share of winning positions says nothing about the size of the losses. The largest losses came when the Drawdown Filter exited a pair, and a position can stay open for months while it waits for its exit.
Because the Drawdown Filter decides once a day, a sudden price gap, or several pairs falling together, can still cause a large drop. Other periods, including ones not tested here, can produce a much larger drawdown than shown.
Trading foreign exchange on margin carries a high level of risk and is not suitable for every investor. You can lose part or all of your deposit, so run it only with money you can afford to lose. Past results, simulated or real, are not a reliable indicator of future results.
Account size
The minimum account depends on the account type your broker offers:
- Cent account (contract size 100,000): $577.50
- Micro account (contract size 1,000): $577.50
- Contract size 10,000: $5,775
- Standard account (contract size 100,000): $57,750
The panel on your chart shows the exact figure for your broker. Below that figure, positions use your broker's smallest size, so the account can lose far more than in the test; if the margin level then falls below 90%, the EA closes the pair with the largest open loss, though a price gap can jump past that level. Cent accounts are offered mostly by brokers outside the EU, the UK, Australia and the US, and the EA has not yet run on a real cent account. The test ran at leverage 1:100; if your broker allows less, run the free demo at your own leverage first.
Inputs
Everything except Capital comes preset at the tested values. The ones worth knowing:
- Compounding: how much of each closed result feeds the size of new positions (100% by default).
- Drawdown Filter ("Drawdown filter level (0 = off)"): 10 by default, the level tested here.
- Loss limit: one optional stop for the whole portfolio, off by default and not part of the tested results; it closes at market prices, so a gap can take the loss past it.
- Open new positions: set it to No to wind down; it opens nothing new and lets open positions finish.
- Phone notifications: an alert on your phone when the Drawdown Filter or the loss limit acts.
Phone notifications use MetaTrader's own service and are off by default. The advanced inputs stay as tested, and the setup manual on our MQL5 blog explains every input.
Requirements and support
- MetaTrader 5, on a netting or a hedging account.
- One chart, of any symbol and timeframe.
- A VPS, or a computer that keeps the terminal running at all times.
- Algo Trading enabled in the terminal and in the Expert Advisor's Common tab.
It is built and tested for these eleven pairs and is not recommended on other symbols. It has not yet run on US accounts. On large accounts, above about $450,000, check your broker's maximum order size. On a netting account, positions on the same pair merge, so run other EAs on other pairs. Start it where it will keep running; move it to another computer or VPS only when no position is open (the setup manual shows how).
It is for traders who want a patient, rules-based portfolio across eleven pairs and who expect drops along the way. It is not for anyone who wants to scalp a few pips a day or step in on every trade.
Built by a trader and trading-system developer with more than twenty years of experience building fully automated trading strategies for forex, futures and stocks.
There is no outside group or private channel to join. A step-by-step setup manual is published on our MQL5 blog. Questions and support go through this product page's Comments, in the open, or through MQL5 messages; we aim to reply within 24 hours.
You don't have to take any of this on faith. Run the free demo on your own broker's data, watch what it does trade by trade, then decide.
