Solvex Gold Robot v1.06 · Free back-test edition

Run our back-test yourself, in five steps

This guide shows every screen and every setting. Follow it exactly and MetaTrader's own report will show the same trades as the tables on solvex.space/gold-robot — the same number of trades, on the same dates, at the same prices. Then change the deposit to your own size and see what the robot does with it.

Before you start

MetaTrader 5 on Windows

The desktop terminal. The Strategy Tester is part of it and is free.

An Exness MT5 demo account

Free to open. It gives your tester the same gold price history we used, symbol XAUUSDm.

About ten minutes

The full 2018–2026 run takes a few minutes the first time, while MetaTrader downloads the history.

What this edition is. The licensed robot's own trading code. It runs in the Strategy Tester only: it cannot be attached to a demo or a real account, it opens no trade on history after 10 November 2026, it needs no licence key and it connects to nothing.

1Copy the file into MetaTrader

  1. Unzip the package you downloaded.
  2. In MetaTrader 5 open the menu File → Open Data Folder (Ctrl + Shift + D). A Windows folder opens.
  3. Open the folder MQL5, then Experts.
  4. Copy SolvexGoldRobot_Free.ex5 into it.
  5. Close MetaTrader 5 and start it again, so that it sees the new file.

Do not put the file on a chart. This edition only works in the Strategy Tester; on a chart it shows a message and removes itself.

2Open the Strategy Tester

  1. Log in to your Exness demo account in MetaTrader 5 (File → Login to Trade Account), so the tester can download gold history.
  2. Open View → Strategy Tester (Ctrl + R). A panel opens at the bottom of the window.
  3. On its Overview tab choose Single — one test of one robot.

Nothing is traded in the Strategy Tester. It replays old prices; no order ever reaches a broker.

3Set the Settings tab exactly like this

These eleven settings reproduce Dataset A on the website: one $1,000 account from 28 June 2018 to 10 November 2026.

FieldValueWhy
1. ExpertSolvexGoldRobot_FreeThe file you copied in step 1.
2. SymbolXAUUSDmGold on an Exness MetaTrader 5 demo account. On another broker the symbol has another name and another history.
3. TimeframeM15The chart timeframe. The robot reads its own timeframes, so the result is the same on any; M15 is the view we used.
4. DateCustom period: 2018.06.28 – 2026.11.10The whole history of the published back-test.
5. ForwardNo
6. DelaysZero latency, ideal executionWith “Random delay” every run gives a slightly different result.
7. Modelling1 minute OHLCFast, and it takes the same trades every time. “Every tick” takes longer and ends a little higher.
8. Deposit1000 USDChange this to see your own account size — see the capital guide below.
9. Leverage1:100
10. OptimizationDisabledThe robot refuses to be optimised.
11. Visual modeOffSwitch it on if you want to watch the trades being placed on a chart.

The symbol decides the history. If your broker is not Exness, choose your broker's gold symbol (XAUUSD, GOLD, XAUUSD.a …). The robot will run, but on that broker's prices it takes other trades, so your numbers will not be ours. That is a real result for that broker — not an error.

4Leave the Inputs tab alone

The robot's default inputs are the published settings. Open the Inputs tab and check that nothing was changed; if you are unsure, right-click the list and choose Defaults.

There are 48 inputs. You do not need to understand them to repeat the back-test — but every one is listed here with its default value and what it does, so nothing is hidden.

The one most people change later is the first: InpRiskPct, the risk of one unit as a percentage of the balance. The back-test uses 5.0, the highest the robot accepts.

InputDefaultWhat it does
Risk
InpRiskPct5.0Risk per x1 trade, % of balance (0.1..5); a trade is x2 or x3
InpCapitalSharePct100.0Share of the account balance the robot sizes on, %
InpMaxLotPerOrder0.0Largest lot per order (0 = automatic: 0.5 lot per 1,000 of start capital)
InpStartCapital0.0Start capital for the automatic lot limit (0 = the balance when the robot first started)
InpDayLossPct30.0Daily-loss breaker, % of the balance at the start of the day
InpBrakeDdPct10.0Drawdown brake: balance this % below its high...
InpBrakeMult0.5...multiplies the risk by this
InpBrakeDays120...high of this many daily values (1..400)
InpBrake2DdPct0.0Second brake step: balance this % below the high (0 = off)
InpBrake2Mult0.25...multiplies the risk by this
InpBrake3DdPct0.0Third brake step (0 = off)
InpBrake3Mult0.1...multiplies the risk by this
InpWeekLossStop0.0Weekly stop: no new trades this week once earlier days of the week lost this many risk units (0 = off; 2 = one full loss)
InpStreakLosses0After this many losing trades in a row... (0 = off)
InpStreakMult0.5...the risk is multiplied by this until a winning trade
InpRiskMon1.0Risk multiplier for trades entered on Monday (0 = no trade)
InpRiskTue1.0...Tuesday
InpRiskWed0.0...Wednesday (0 = no trade, selected)
InpRiskThu1.0...Thursday
InpRiskFri0.0...Friday (0 = no trade, selected)
InpMaxDdStopPct0.0Stop trading when the balance is this % below its high (0 = off)
InpResumeAfterDdStopfalseSet true once to resume after a drawdown stop
Strategy
InpEntryModeMarket order when the level is reachedEntry method
InpTradeLeg1trueTrade the 00:00 UTC level
InpTradeLeg2trueTrade the 02:00 UTC level
InpLeg3AnchorMin180Third leg: anchor in minutes after 00:00 UTC, whole hours (180 = 03:00, selected; 0 = off)
InpLeg4AnchorMin0Fourth leg: anchor in minutes after 00:00 UTC (0 = off; 240 = 04:00)
InpNeedH4trueThe H4 trend must agree
InpBreakEvenR0.0Stop to the entry price after this many R (0 = off; 0.5 was tested)
InpExitMin1200Exit time in minutes after 00:00 UTC (1200 = 20:00, as tested)
InpHoldDays1A position still open at the exit time is held this many more days (1 = selected; 0 = exit the same day)
InpLeg2NeedsLeg1trueSkip the later legs when the 00:00 leg was decided today without a trade
InpPrevCloseMin0.25Skip when the previous day closed in the worst part of its range (0.25 = worst quarter; 0 = off)
InpMinRangePct1.0Quiet-market filter: skip when the median daily range of 20 days is below this % of the price (1.0 = selected; 0 = off)
Execution filters
InpMaxSpread0.60No new order when the spread is above this (price units)
InpMaxPingMs1000No new order when the last ping is above this (ms)
InpSlippage0.05Allowed slippage of market orders (price units)
Broker time
InpUtcOffsetHours99Server time minus UTC in hours (99 = detect automatically)
InpForceUtcEnginefalseBuild days from H1 bars even when the server is on UTC (test switch)
General
InpMagicBase20261100Magic number base (uses base+1, +2, +5, +6)
InpShowPaneltrueShow the information panel
InpShowLevelstrueDraw today's levels on the chart
InpChartThemetrueApply the Solvex chart colours
InpKeepM15trueKeep the chart on M15 (recommended view)
InpPanelX10Panel position X (pixels)
InpPanelY22Panel position Y (pixels)
InpPanelScale0.0Panel scale (0 = from the screen DPI)
InpPanelCompactfalseCompact panel (without the Settings and Filters blocks)

5Press Start and compare

Press Start. When the green progress bar finishes, open the Backtest tab. With the settings above on Exness history, on 12 November 2026 we read:

Total Net Profit
219,616.23
Total Trades
297
Won / lost
111 / 186

MetaTrader writes large numbers with spaces: 219 616.23. The Graph tab shows the balance curve, and the list of deals at the bottom of the Backtest tab is the same list our tables were made from.

What to compare

The trades: on the same history the robot takes the same trades — the same Total Trades, on the same dates, at the same prices. The last deal of the run is 2026.10.30 20:00:00, buy out, at 3883.900.

The money moves a little: Total Net Profit contains swap, and the Strategy Tester charges swap at the rate your broker publishes on the day you test, for the whole history. We ran this test on two days: every deal had the same time, price, volume and profit, and the swap in it was −2,305.18 USD on 11 November 2026 and −3,040.88 USD on 12 November 2026. In the yearly run of 2026 the slightly different balance also moved some lot sizes by 0.01 to 0.02, and with them the profit of those trades. Expect a net result close to ours, not the same last digits.

The same run, year by year

Result of the trades closed in each year, and the balance at the end of it, as of 12 November 2026. Two years ended lower: 2019, 2023.

YearNet result, USDBalance at the endTrades opened
2018—1,0000
2019−106.288945
2020+17,657.5718,55128
2021+24,728.3543,28047
2022+18,579.4061,85925
2023−5,551.8556,30728
2024+19,619.6275,92758
2025+63,465.99139,39362
2026 (to 10 Nov)+81,223.43220,61644

+The yearly table: a new $1,000 account each year

This is Dataset B on the website. It answers a harder question than one long run: what if you had started in that particular year? Use the settings of step 3 with three changes:

Timeframe
M1
Leverage
1:200
Date
one year per run
YearCustom periodNet result, USDTrades$1,000 became
20182018.01.01 – 2018.12.31—01,000
20192019.01.01 – 2019.12.31−393.417607
20202020.01.01 – 2020.12.31+17,901.492818,901
20212021.01.01 – 2021.12.31+21,594.354722,594
20222022.01.01 – 2022.12.31+5,907.73256,908
20232023.01.01 – 2023.12.31−819.2228181
20242024.01.01 – 2024.12.31+15,475.705816,476
20252025.01.01 – 2025.12.31+58,360.126059,360
20262026.01.01 – 2026.10.31+39,601.774140,602

2018 has no trade: the history starts in late June and the robot needs months of it before its first trade. 2023 is the year to look at closely — a new account lost most of its money in it.

+Your own size: from $100 to $1,000,000

You do not need a different robot or different settings for a different account. Change the Deposit field in step 3 and run it again.

It sizes from the balance

One unit risks InpRiskPct percent of the balance; a trade is 2 or 3 units. The lot follows from the distance to the stop.

The order limit scales

Largest order: 0.5 lot per $1,000 of start capital — 0.05 lot on $100, 5 lots on $10,000, 500 lots on $1,000,000, up to your broker's own maximum.

Small accounts use 0.01 lot

When the calculated lot is below the broker's minimum, the robot trades the minimum with a tighter stop that loses the same risk amount, and takes no add-on.

What the same back-test did on other deposits

One account, 28 June 2018 to 10 November 2026, 1-minute OHLC, default inputs. Only the deposit changes. Simulated, like every number in this guide.

DepositBalance at the endTradesLargest fallLowest balanceLots usedOrder limit
100 USD (1:100)21,88429522.8%770.01 – 0.050.05 lot
100 USD (1:500)22,00429840.2%600.01 – 0.050.05 lot
500 USD (1:100)109,58729625.2%3740.04 – 0.250.25 lot
1,000 USD (1:100)220,61629725.7%7430.08 – 0.500.50 lot
10,000 USD (1:100)2,206,37429726.1%7,3930.80 – 5.005 lots
100,000 USD (1:100)22,063,94229726.1%73,8728.01 – 50.0050 lots
1,000,000 USD (1:100)89,566,78529828.2%717,60077.88 – 200.00200 lots (the broker's maximum)

Large orders. The Strategy Tester fills an order of any size at the simulated price. A real market does not: the larger the order, the worse the fill. The rows for large deposits are therefore the least realistic ones in this table. On 1,000,000 USD the robot's own limit would be 500 lots, but this broker accepts 200 lots per order, so the largest orders were 200 lots and the account grew less in proportion. On a large account, set InpMaxLotPerOrder to a size your broker fills well.

Which inputs to look at for your size

InputDefaultWhen to change it
InpRiskPct5.0The size of every trade. The table below shows 1.0 and 2.5 on the same history — read the “Largest fall” column before choosing: on this history a lower setting did not always mean a smaller fall.
InpCapitalSharePct100Let the robot size on only part of the account — for example 50 to trade half of it and leave half untouched.
InpMaxLotPerOrder0 (automatic)Set your own largest order, for example your broker's maximum lot on a very large account.
InpStartCapital0 (the first balance)The capital the automatic order limit is counted from. Raise it after you add money, so the limit grows with the account.
InpDayLossPct30The robot stops for the day after losing this share of the day's opening balance.

The same $1,000 account at a lower risk setting

InpRiskPctBalance at the endLargest fallLowest balanceWorst year
1.0%187,49819.6%873−5,358.28 (2023)
2.5%208,41128.8%712−5,551.85 (2023)
5.0%220,61625.7%743−5,551.85 (2023)

?If your numbers differ from ours

What you seeThe usual reason
The same trades, a slightly different net resultSwap. The tester charges it at the rate your broker publishes on the day of the test, so the net result moves from day to day while the trades stay the same. Compare Total Trades and the dates and prices in the deals list. On a swap-free account type no swap is charged and the net is a little higher.
Different profit and different tradesAnother broker or another gold symbol. The robot trades what that history shows. To match ours, use an Exness MT5 demo account and XAUUSDm.
A little higher, same number of tradesModelling is “Every tick” instead of “1 minute OHLC”. On every tick our run ended at 231,700 USD.
Different every time you press StartDelays is set to “Random delay”. Choose “Zero latency, ideal execution”.
Fewer trades, or none in the first yearsThe history was not downloaded completely. Open an XAUUSDm chart, scroll far back, wait, and run again. “History Quality” in the report should be 98% or more.
No trade after 10 November 2026That is this edition's limit. Newer history needs the licensed robot.
“runs only in the Strategy Tester”The file was put on a chart. Use View → Strategy Tester instead.
“optimisation is not supported”Set Optimization to “Disabled”.

When you want to trade an account

The licensed robot

The same trading code, with the account lock removed and a licence check added, a panel on the chart, a pause button and logs. Every licence includes 10 demo accounts, so you can run it forward on demo before real money.

Price list on solvex.space · Telegram: t.me/Solvex_Space

Keep in mind

Everything in this guide is a simulation on historical prices, and the rules were chosen by looking at that same history. It is not a live result and not a forecast. The robot has losing months and losing years, and trading gold with leverage can lose all the money in an account.