# Forward test: Gold GH-L-N, protocol v1.0

**One-line summary:** a pre-registered live-conditions test, on a demo account, of the rule that passed the historical gates on gold: the 1-hour 50/200 simple-average golden cross, long only, no stop, no target. It measures real costs and execution first, and slowly narrows the uncertainty about the edge. It cannot confirm the edge quickly.

**Status:** protocol published 8 October 2026 and frozen. **Start: 9 October 2026, 00:00 UTC**, provided this page was live before that time. If it was not, the test has not started, and a revised future start date will be published here before any test trade is collected.

## 1. What this test is, and what it is not

- **It is a forward evaluation, not a second backtest.** The historical result used a development, a validation and a holdout period and six gates. None of that applies here. The forward test has its own pre-set criteria (section 8), its own sample and its own control, and **its result does not change the historical verdict** of the [1-hour test on ES and gold](/posts/golden-cross-1-hour/).
- **Two statements about the historical result are both true and are kept apart.** Under the frozen rules, which charge no financing, the baseline verdict is **Survivor**. With 3% a year of financing charged, the result stays profitable (+542 R, profit factor 1.73) but the development t-statistic falls to about 2.38 and fails gate 3. The estimated financing threshold is about **1.65% a year** under the financing model used (a flat annual rate charged on the entry price for every calendar day held) and the $0.30 baseline cost; an execution cost of about **$0.66 an ounce** per round trip does the same. Real swap and spread were never measured. **Measuring them is the first job of this test.**
- **It cannot confirm the edge in a few years.** From the historical trades: mean +1.67 R per trade, standard deviation 9.19 R, about 17 trades a year, and a losing streak of 15 trades happened.

| Closed trades | About (years) | 95% interval half-width on the mean | Chance of t of 2 or more if the true mean is +1.67 R | If the true mean is half of that |
|---|---|---|---|---|
| 20 | 1.2 | 4.0 R | 12% | 6% |
| 50 | 2.9 | 2.5 R | 24% | 9% |
| 100 | 5.8 | 1.8 R | 43% | 14% |
| 150 | 8.6 | 1.5 R | 59% | 19% |

A good few months prove nothing, and no edge will be declared from them.

## 2. The rule (frozen; nothing here may change during the test)

- Market: **XAUUSD at IC Markets**, the same broker and symbol as the historical data. **H1 bars, New York clock** (the broker's server time is New York + 7 hours), bar time is the close time. **SMA of the closes, fast 50 and slow 200.** The indicator and bar-construction definitions are the historical test's.
- **Golden cross** at the close of bar k: SMA50[k] > SMA200[k] and SMA50[k-1] <= SMA200[k-1]. **Death cross**: the reverse.
- **Initialisation and eligibility:** the averages are initialised from historical bars. **The first position opens only on a golden cross whose signal bar closes after the start time.** A position is never opened merely because SMA50 is already above SMA200.
- Entry: **buy at market as soon as possible after the signal bar closes** (the historical test fills at the next 1-minute open). Exit: **close at market as soon as possible after a death-cross bar closes.**
- **Long only. One position at a time. No strategy stop loss, no take profit, no scaling, no re-entry in the same state, no filters, no discretion.** All sessions, 24 hours. **Positions are held overnight and over weekends and holidays.**
- **R** is reported as in the historical test: 1.5 x ATR(14) of the H1 bars at the signal bar, in dollars per ounce. **With no stop order, R is a normalisation unit, not a maximum possible loss.**

## 3. Account, size and the record taken before the first trade

- **Account:** a dedicated IC Markets **Standard** MT4 **demo** account in **USD**, initial balance **$10,000**, with **no unrelated trades, deposits or withdrawals**. Account identifiers are kept private.
- **Size:** a constant exposure of **one ounce** of XAUUSD. This normally corresponds to 0.01 lot with a 100-ounce contract, **but the actual symbol specification is verified and recorded before the start.**
- **Baseline record (taken before the first trade and published without identifiers):** contract size, minimum lot and lot step, digits and tick size, spread type, commission, swap long and short and the swap mode (including the multi-day or triple-swap day), margin requirement, **leverage**, **server time zone**, trading hours and daily break, and the date the record was taken. It is repeated when the broker changes any of it.
- **What the no-stop rule can cost.** In the historical test the worst loss open inside one trade was 12.1 R. For the 2025 to 2026 trades the median R was $21.8 an ounce (the largest $49.2), so 12.1 R is about **$263 an ounce at the median R and about $594 at the largest**, on a position worth about $4,100 an ounce. Weekend gaps can be larger.

## 4. The two series, kept apart

- **Actual demo series.** The real orders. Execution P&L comes from **actual demo fills and charges**. The spread is already inside the fills, so **it is never subtracted a second time**; commission and swap are added as charged.
- **Paper series.** From the start, uninterrupted, the original no-stop rule is also run as a **simulation**: fills at the next 1-minute open of the broker's bar history, a flat $0.30 an ounce cost, no financing. It continues even if the actual series is stopped. It is labelled **simulated** everywhere.
- **The two series are never combined into one performance record.** Actual fills and charges are always distinguished from simulated fills and estimated costs.

## 5. Administrative kill limit

- If the account equity falls **$2,000 below the highest mark-to-market equity reached since the test began** (unrealised P&L, commissions and swap included), the demo position is closed at market and **further demo orders are suspended**. The trigger time, equity, execution and costs are recorded.
- **The limit is not reset and the same execution test is not resumed automatically.** A restart would be a new test (section 10).
- The paper series continues, and the actual series is reported as **stopped by the kill limit**.
- This is a risk limit of the test, not part of the trading rule.

## 6. The journal (public, weekly)

- **Published weekly, every Saturday (UTC), including weeks with no trades.** The first update is due on Saturday 17 October 2026. Account identifiers stay private. The raw files are linked at the bottom of this page.
- **Per signal:** the signal bar close time, close, SMA50, SMA200, ATR(14) and R, and whether it was taken.
- **Per trade:** requested and actual fill time and price, **bid and ask quotes** at the signal and at each order, **slippage** (actual fill against the requested price, and against the historical test's reference, the bid at the next 1-minute open), **commission**, **swap charges or credits per night, including multi-day swap adjustments and rollover charges**, holding time, **realised result**, and the **worst unrealised loss** inside the trade.
- **Daily marks** at 17:00 New York: the open position's floating result, floating swap, balance, equity and margin, and the worst floating loss of the day.
- **Results are shown in dollars per ounce, in R and in percentage returns** (per trade on the entry price, and on the account's starting balance), together with the **closed-trade drawdown and the marked-to-market drawdown**.
- **Late or missed fills:** a fill within 4 hours of the signal is taken at the actual price and flagged late. Beyond 4 hours the signal is recorded as **missed**, still counted as a signal, and results are shown with and without it.
- **Deviations:** any manual action that is not in section 2 is logged with its reason. **If more than 10% of the trades carry a deviation, the test is invalid** and is reported as such.

## 7. Cost record and the two thresholds

At every update the realised execution cost per round trip (spread and slippage against the historical reference, plus commission, swap excluded) and the realised swap, converted to a yearly rate (swap in dollars divided by the entry price and the days held, times 365), are compared with the two historical thresholds: **$0.66 an ounce** and **1.65% a year**. Exceeding either means that, at the realised costs, the historical development result would no longer have cleared gate 3. This is reported as information; it does not stop the test.

## 8. Evaluation criteria (fixed now)

- **The first formal evaluation is at 50 closed trades of the actual demo series.** At the historical frequency of about 17 trades a year, **that could take approximately three years.** Weekly updates before it are **descriptive only**. Later formal evaluations are at 100 and 150 closed trades, with exactly the same criteria.
- **Primary measure:** the mean net R per trade, using the actual fills and charges. Reported with its standard deviation, standard error and a **95% confidence interval** (mean plus or minus the t critical value for n - 1 degrees of freedom times the standard error), the profit factor, win rate, average winner and loser, the closed-trade drawdown and the marked-to-market drawdown, in dollars per ounce, R and percent.
- **Verdict at an evaluation point:**
  - **Contradicted** if the mean net R per trade is zero or negative, or the profit factor is below 1.0.
  - **Not contradicted** if the mean is positive, the profit factor is at least 1.0 and the 95% interval still includes zero. This is the likely outcome even if the edge is real (section 1). It means "keep going", not "confirmed".
  - **Supported** only if the lower end of the 95% interval is above zero. That is a statement about the forward sample under the realised costs; it is still one market and one broker's demo.
- **Matched control (fixed now):** a **circularly shifted state-series control** on the forward window. The H1 state series (SMA50 above or below SMA200) from the start to the evaluation point is shifted circularly by a random offset of at least 5% of its length, 500 times with fixed seeds (1000 plus the run number), and the same rule is applied to the real prices with the same cost model as the paper series. **The ATR-based R is recomputed at the shifted signal time.** The paper series' average net R per trade is reported as a percentile of that distribution. With about 50 trades over about three years the control is wide, so the percentile is **descriptive and has no pass or fail attached**.
- **If the kill limit ends the actual series before 50 closed trades,** the actual series is not evaluated (too few trades) and is reported as stopped; the paper series is evaluated at 50 closed paper trades and clearly labelled as simulated.
- **The criteria are not changed after results are seen.** No edge is declared from a few profitable months, and no good or bad stretch changes the evaluation points.

## 9. Reporting

Everything is reported whatever it shows: the weekly journal, the two evaluation points above and the final read-out, with the raw files. A pre-registered test that is not reported does not help anyone.

## 10. Modifications

**Any change to the rule, the averages, the timeframe, the symbol, the broker, the account type, the size, the stop, the targets, the filters, the kill limit or these criteria is a separate test**, with its own name, its own frozen protocol and its own start date. Results are never merged across tests, and a changed rule is never described as a continuation of this one. A restart after the kill limit is also a separate test.
