Terra Stride Portfolio
- Experts
- Version: 1.11
- Activations: 15
Terra Stride Portfolio
WE DON'T SELL DREAMS. WE SHOW THE RISKS.
Not promises of profit, but the information you need to decide for yourself.
Every EA can lose money. No filter, stop-loss or mix of strategies removes that risk. This page explains what the EA does, how much it risks and what the tests actually showed, including the parts that do not look good.
What it is
Terra Stride Portfolio is a multi-strategy Expert Advisor for MetaTrader 5. One EA on one chart runs four independent modules. Each module has its own magic number and its own risk setting.
| Module | Market | Logic | Default risk |
|---|---|---|---|
| Terra | Gold (chart symbol), M5 | Breakout of the recent range followed by a retest, with trend and trend-strength filters. Entry attempts only at fixed 30-minute time slots: one attempt per slot, one open position at a time. Stop-loss and take-profit scale with volatility. Everything is closed at 23:50 server time. | 1% of equity per trade |
| S12 | Gold, H1 | Supertrend trend-following (ATR period 10, multiplier 3.0), long and short. Enters when the Supertrend flips and exits when it flips back or at the stop-loss (3 × ATR). | 0.7% of balance per trade |
| S5 | USDJPY, H1 | Daily-open breakout: buys or sells when the price closes beyond the daily open by 0.4 × the previous day's range. Entry window 08:00–20:00, one entry per day, stop-loss 2 × ATR, closed at 22:00 (server time). | 0.7% of balance per trade |
| S7 | Gold, H1 | Overnight long: buys at 21:00 and closes at about 09:00 (server time). Stop-loss 4 × ATR. One entry per day. | 0.7% of balance per trade |
| S5b (optional) | EURJPY, H1 | The S5 logic on a second symbol. Off by default. | 0.7% of balance per trade (when on) |
The modules do not coordinate with each other. For example, S12 can be short on gold while S7 is long. This is why a hedging account is required. The Terra module uses the same trading engine as the free EA Terra Gold Stride, which you can use to test Terra on its own. Their default risk settings differ (Terra Gold Stride: 6.5% per trade; here: 1%).
How risk is controlled, and where it is not
- Every position is protected by a stop-loss.
- No grid and no averaging down. Each module holds at most one position at a time.
- Loss-streak risk scaling (S12, S5, S5b and S7 only, not Terra): after each consecutive losing trade of a module, the risk of its next position is multiplied by 1.25, for at most 2 steps (maximum ×1.56). This is a mild martingale-style size increase, and the test results below include it. Set PF_MartinMax to 0 to switch it off.
- Terra protections: daily loss stop (5%, including floating P/L), permanent drawdown halt (35%), pause after a losing streak, early profit-taking after a new equity high, spread filter, and entries are skipped when the risk budget cannot buy the minimum lot.
- Account drawdown guard (S12, S5, S5b and S7): if equity falls 35% from its peak, the positions of these modules are closed and they pause for 48 hours.
- Planned risk if every module is stopped out at the same time: about 3.1% of the account with the default settings, and up to about 4.3% while the loss-streak scaling is at its maximum. Three modules trade gold, so their losses can happen together.
- Slippage, gaps and trading costs can make real losses larger than planned. No maximum loss is guaranteed.
Test results (real ticks)
We do not publish only the favorable numbers. The following results come from the MT5 Strategy Tester with the default settings. They are simulations on historical data, not live-account results.
| Symbol / chart | GOLD# M5 (also trades USDJPY#) |
| Broker server | XMTrading-MT5 3 |
| Test period | 2025.01.02 – 2026.11.04 |
| Deposit / leverage | 10,000 USD / 1:100 |
| Settings | Default settings (S5b off) |
| History quality | 100% real ticks |
| Net profit | 25,194.40 USD (+251.9%) |
| Profit factor | 1.29 |
| Total trades | 1,273 |
| Win rate | 46.11% (long 50.16%, short 34.73%) |
| Average win / average loss | 188.47 / -124.55 USD |
| Longest losing streak | 10 trades |
| Relative equity drawdown | 19.59% (balance: 18.18%) |
| Average holding time | about 15.5 hours |
Please read these figures in context:
- The period is only 22 months. Full-quality real-tick history for this symbol was available from 2025 only in my test environment, so this is a short sample.
- The long side did much better than the short side (win rate 50.16% vs 34.73%). The result probably depends on how gold behaved during this period.
- A longer check on 1-minute OHLC data (2018.01.02 – 2026.11.04, 99% quality) is a rougher test than real ticks, and its results can differ from them: over the same 2025–2026 period it gave +171% against +252% with real ticks (same number of trades), so do not read the 1-minute figures as an upper bound. Overall: relative equity drawdown 27.78%, win rate 44.18%, profit factor 1.25, 6,179 trades, longest losing streak 12 trades.
- The yearly 1-minute screenshots (2018–2024) compound year after year from 10,000 USD in 2018 (balance at the end of 2024: 211,945.97 USD, 2,119.5% of the initial deposit; 2018 was flat at +0.5%). They are not comparable with the real-tick figures above, which start from 10,000 USD in January 2025, and eight years of compounding says little about what you would get.
- The S5 module (USDJPY) on its own was about break-even in the real-tick period (profit factor about 1.0). It is included for diversification. I have no evidence that it adds an edge in that period.
- The tests use XM KIWAMI conditions (no commission). Brokers with wider spreads or commissions will give lower results. There are no live-account results for this version yet.
Past performance does not guarantee future results.
Requirements
- An MT5 hedging account. The EA refuses to start on a netting account.
- Attach it to one GOLD# (or XAUUSD) M5 chart. The default symbols are XM KIWAMI names: GOLD#, USDJPY#, EURJPY#. If a symbol is missing, the EA tries similar names (for example XAUUSD) and logs the substitution in the Experts tab. Otherwise set the symbol inputs yourself.
- Server time is detected automatically and every hour-based rule is mapped to the clock used in testing (XM server time, GMT+2 in winter and GMT+3 in summer). This was tested by emulating a GMT+0 server on XM data. It has not been tested on a real non-XM server.
- Tested with a USD account. For other currencies, Terra's lot cap is converted automatically (tested in simulation only). Tested at leverage 1:100; lower leverage such as 1:30 has not been tested.
- A balance of about 5,000 USD or more is recommended. With small balances the minimum lot (0.01) makes S12 and S7 risk more than the set percentage, and Terra skips entries it cannot size.
- Use a dedicated account (magic numbers 26090911 and 9101–9104). Keep MT5 running and connected, ideally on a VPS: the time-based closes need a running, connected terminal.
- No DLL is used. There is no news filter: the EA does not pause for economic announcements.
Installation
- Open a GOLD# M5 chart and attach the EA.
- Enable algorithmic trading in MT5 and allow trading for the EA.
- Check the inputs. The defaults are the tested settings.
- Check your broker's server time, symbol specifications, minimum lot and trading hours.
- Test in the Strategy Tester and on a demo account before using a live account. After attaching, the Experts tab shows a start-up banner and any symbol or account warnings.
Main inputs (defaults)
- Terra: RiskPerTradePercent = 1.0 (% of equity per trade), MaxDrawdownPercent = 35 (permanent halt of Terra), DailyLossPercent = 5, MaxLots = 1.0 (lot cap per 10,000 USD of net funding), MaxSpreadATRRatio = 0.15, CloseHour / CloseMinute = 23 / 50 (daily close, server time), DeviationPoints = 20, Magic = 26090911.
- Modules: PF_UseTerra, PF_S12_*, PF_S5_*, PF_S5b_*, PF_S7_*: on/off, symbol, risk %, magic number and the values shown in the table above.
- PF_MartinMult = 1.25 and PF_MartinMax = 2: loss-streak risk scaling (0 = off).
- PF_MaxDDPct = 35 and PF_PauseHours = 48: account drawdown guard (0 = off).
- PF_MaxSpreadATR = 0.35: skip entries when the spread exceeds this fraction of ATR (modules other than Terra).
- PF_ServerGMTOffset = 99: 99 = detect automatically, -99 = no conversion, any other value = fixed offset in hours.
- Terra's signal, stop-loss, take-profit and filter numbers are fixed inside the EA and are not inputs.
Support
For questions about settings or operation, please contact me through MQL5 messages or the product comments. Please include: the EA version, your broker, the symbols, the settings you use and the relevant lines from the Experts and Journal tabs.
WE DON'T SELL DREAMS. WE SHOW THE RISKS.
