Rubberband MT5 -- User Manual
AUDCAD M15 adaptive mean-reversion grid. Version 1.42. Backtest figures only -- past performance does not guarantee future results.
1. Install
- Copy
RUBBERBAND.ex5toMQL5/Experts/(or attach from the Navigator after a Market install). - Open one AUDCAD chart on the M15 timeframe.
- Attach the EA. Enable Algo Trading. A hedging account is required.
- Allow it to run 24/5 -- a VPS is recommended.
It is facade-complete: with no preset it runs the LOW profile out of the box (the default since v1.39; MEDIUM was the default up to v1.38 -- see section 2b), and the Friday weekend control (section 4) is already on by default.
2. Pick your risk (one input: InpRiskProfile)
Backtest, MetaTrader 5 Strategy Tester, OANDA AUDCAD.pro real ticks, 2022-01 to 2026-06 (measured before the Friday weekend cutoff described in section 4 existed).
| Profile | Balance-risk | Recommended account | Backtest net (4.5 yr) | Floating DD |
|---|---|---|---|---|
| LOW (default since 1.39) | ~1.5 % | $500 | +41 % | ~10 % |
| MEDIUM | ~3 % | $1,000 | +71 % | ~18 % |
| HIGH | ~4.5 % | $2,000 | +131 % | ~24 % |
| HOT | ~6 % | $3,000 | +232 % | ~22 % |
Floating drawdown is disclosed here as safety information: it is how far an open basket can go underwater before it reverts, not a figure to trade toward.
2b. Why the LOW tier ships as the default
On OANDA's AUDCAD real-tick backtest from January 2020 to September 2026 (per 0.01 lot, account equity marked at the worst M5 price), the LOW tier grew to +320% and floated at most 13.1% along the way, with every basket closing inside its own target. An earlier default tier ran a wider account breaker on the same history and let baskets float deeper before closing; LOW's tighter budget is what keeps the same kind of basket inside the account's tolerance instead. Single-shot designs without the averaging basket were tested on the same history and did not reproduce Rubberband's edge -- the snap-back the averaging waits for is the mechanism, not an add-on. So this build makes the survivable tier the default. MEDIUM, HIGH and HOT are still one click away in the same dropdown, at the larger floating drawdown shown in the table above. Backtest figures only.
- Absolute minimum balance: $300 (any profile). Below it the broker minimum lot (0.01) is too large a fraction of the account.
- Position size compounds automatically with the balance -- a bigger account simply scales the lots.
- CUSTOM profile: set your own fixed lot (
InpFixedLot/InpLot) or your own balance-risk % (InpCustomRiskPct, where 1 % = 0.01 lot per $1,000). InpVirtualBalance = 0(the default, and the value in all shipped presets) means the EA sizes on your real account balance. Setting a positive value makes the EA size as if the account held that amount -- on a smaller real account this oversizes every position. Leave it at 0 unless you understand exactly why you need it.
3. Confidence lot-size boosting (one simple switch)
Set InpConfidenceLots = true to turn on confidence-based lot boosting on any risk tier. It enlarges the
lot only on the very-highest-confidence entries (calm-market extreme reversions, ~76 % revert in one leg) and
leaves everything else flat. Real-tick backtest (OANDA AUDCAD.pro M15, 2022-26, LOW tier): OFF +78 % at 11.4 % DD ->
ON +92 % at 13.2 % DD -- +17 % return for under 2 pp more drawdown, still inside the 20 % survival limit.
- InpConfidenceLots -- the switch (default false = drawdown-safest).
- InpConfidenceMult -- boost size (default 3.0; keep <= 3).
- InpConfidenceZThr -- how extreme a setup must be to count (default 2.0 fires regularly; 3.0 = only rare extremes).
Preset: presets/RUBBERBAND_ConfidenceON.set. The boost is RANGE-only by design -- it never oversizes the
trend/high-vol tail where deep-float baskets hide.
3b. Optional +TURBO profiles (high-risk / high-return)
Alternatively pick a +TURBO profile in the Risk-Profile dropdown (LOW/MEDIUM/HIGH/HOT +TURBO) -- same
confidence boost, baked together with a hotter compounding tier. Backtest: MEDIUM+TURBO +89 % at ~15 % floating
DD; HOT+TURBO +310 % at ~31 % floating DD (floating DD disclosed here as safety information -- use only with
margin headroom). Presets: presets/RUBBERBAND_*_TURBO.set.
4. Friday and weekend control (InpFriNoNewHour, default 12, new in 1.41, on by default since 1.42)
InpFriNoNewHour is a server hour (0-23; 0 = off). From that hour on a Friday, the EA opens no new basket;
a basket that is already open keeps adding to itself and exiting exactly as it would on any other day -- only
the seed is gated. The compiled default is 12 (noon, server time): the EA will not start a fresh floating
position going into the weekend gap.
This is independent of InpPropFridayCloseHour (default 0 = off), a separate, older input that -- if you
turn it on -- flattens every open basket at a chosen Friday hour and blocks new trading until Monday. It stays
off by default because forcing a still-open basket shut removes the chance it had to close on its own profit
target; InpFriNoNewHour alone already keeps a new position from being opened into the weekend.
Set InpFriNoNewHour = 0 if you would rather the EA trade every Friday hour as earlier versions (1.40 and
before) did. Preset files ship with the compiled default (12) unless a preset is explicitly named otherwise.
5. Understand the drawdown
This is a recovery-grid: it averages a small equal-lot basket against an over-extension and closes the basket when price reverts. Two drawdown numbers: - Realised (closed balance) is small (2-8 %) -- baskets close in profit. - Floating is the real risk: how far an open basket goes underwater before reverting (10-24 % by tier, ~31 % HOT+TURBO). Choose your profile by the floating drawdown you can tolerate, and keep margin headroom for it.
6. Safety built in
- A tier-scaled account tail-guard flattens an open basket only in a genuine catastrophe (set far above normal float).
- Highly selective in high-volatility regimes (it widens grid spacing and demands a stronger stretch) -- this is why the floating drawdown stays contained while the return scales.
- The Friday weekend control (section 4) keeps a fresh basket from being opened into the weekend gap by default.
7. Requirements
- Symbol AUDCAD, timeframe M15, one chart.
- Hedging account, low spread, minimum $300.
- No DLLs, no external/web calls.
Risk disclosure
Grid / averaging strategies can hold an open basket significantly underwater before it reverts, and an extreme, non-reverting market move can cause large losses. Trade only risk capital, respect the minimum account, and keep margin headroom for the floating drawdown of your chosen profile. Backtest results do not guarantee future performance.
Broker differences (v1.37 note)
Results differ across brokers for three reasons: (1) server timezone -- v1.37 auto-detects the
server-to-UTC offset on live/demo charts (InpGmtAuto), so the session window stays aligned;
(2) swap -- baskets can hold overnight and brokers charge different swap rates on AUDCAD;
(3) spread/feed -- entry timing shifts slightly with the tick stream. Backtest your own broker's
real ticks before going live, and prefer brokers with low AUDCAD spread and moderate swaps.
Backtest, MetaTrader 5 Strategy Tester, OANDA AUDCAD.pro real ticks, 2022-01 to 2026-06.
Streak sizing (v1.37, optional) and broker notes (v1.37)
InpStreakK (default off) multiplies size while recent closed trades are net-positive -- validated
at K=2: +69% more net on the identical trade set, worst equity drawdown 18.3% (inside the 20%
guideline). Load presets/RUBBERBAND_SESS_streak2.set.
v1.37 auto-detects your broker's server-UTC offset live (InpGmtAuto) so the trading session
stays aligned on any broker, and prints a risk warning when an aggressive profile is combined
with a small balance.
Is it waiting, or is it broken? -- the regime monitor
This product earns in a particular market state and goes quiet outside it. That is disclosed above, but a disclosure without a number is not usable: meeting a flat stretch, you cannot tell whether the machine is waiting for its conditions or whether its edge has changed. This section gives you the one measurement that separates those, taken from this product's own record.
The state to watch is the daily Average True Range of the traded instrument, expressed as a percentile of its own trailing 250 days -- not a fixed number of dollars or pips, which goes stale as the instrument reprices. Most charting packages will plot ATR; the percentile is simply where today's ATR sits within the last year of its own values.
Measured on 53 months of real ticks (2022-01 to 2026-06). Good state: volatility percentile at or above 0.50, which is 57% of that record. In that state, every three-month window in this backtest record closed positive -- its worst three-month stretch still finished at +$3,739.
Tripwire -- while volatility is at or above 0.50, ANY losing three-month stretch is outside what this record contains.
That tripwire is deliberately marked optimistic, and here is why. 100% of the months in this record are positive. A record where every month closed positive almost certainly does not span a regime this product struggles in -- and independent testing of this strategy family on 2018-2021 data found it earned essentially nothing over that period. Treat the tripwire as a floor, not as a measured worst case, and treat a first losing quarter as new information rather than as a violation of an established bound.
What this cannot tell you. While the market is outside the good state, a temporary quiet period and a permanent change in behaviour look identical. The tripwire is the earliest point at which they separate, not an early warning. Nothing here is a guarantee; it is the historical extreme of a backtested record, and being beyond it is evidence rather than proof.