CAT researchOverviewEURUSDGBPUSDXAUUSDGBPCADEURCADAUDJPYGBPJPYResearch notes

Exploratory — R:R gate at 1.0 / 1.5 / 2.0 across seven instruments

Not pre-registered. Run at Daniel's request after the GBP-leg test. Nothing here can reopen or overturn zms_gbp_leg_result_2026-08-27.md; the criteria for that test were fixed before it ran and are not revisited. Raw: zms_rr_sweep_2026-08-27.json.

Config: ZMS defaults except min_rr, 5m chart, H4 offset 3,600s, each instrument at its own measured median spread. The R:R 1.0 column is therefore identical to the canonical column of the GBP-leg run and ties back to it exactly.

Result — raising R:R rescued nothing and cost the monthly distribution

symbol R:R 1.0 R:R 1.5 R:R 2.0
GBPUSD n=582 PF 1.848 · PASS n=477 PF 1.864 · PASS n=381 PF 1.770 · FAIL
GBPCAD n=611 PF 1.614 · PASS n=483 PF 1.407 · FAIL n=366 PF 1.426 · FAIL
XAUUSD n=600 PF 1.530 · FAIL n=502 PF 1.645 · FAIL n=444 PF 1.834 · FAIL
AUDJPY n=562 PF 1.264 · FAIL n=462 PF 1.438 · FAIL n=368 PF 1.611 · FAIL
EURCAD n=553 PF 1.294 · FAIL n=448 PF 1.307 · FAIL n=371 PF 1.151 · FAIL
EURUSD n=596 PF 1.100 · FAIL n=487 PF 1.035 · FAIL n=407 PF 1.093 · FAIL
GBPJPY n=134 PF 0.894 n=97 PF 1.352 n=71 PF 1.454

No instrument that fails at R:R 1.0 passes at 1.5 or 2.0. Both instruments that passed at 1.0 get worse: GBPCAD fails immediately at 1.5, GBPUSD survives 1.5 and fails at 2.0.

Why — the gate removes the trades that made the distribution survivable

The gate cuts roughly a third of trades per step (GBPUSD 582 → 477 → 381) and it does not cut them at random. Follow GBPUSD, the only instrument strong enough to show the effect cleanly:

GBPUSD PF median month % months profitable ex-top-3
R:R 1.0 1.848 +127.9 63.3% +5,154
R:R 1.5 1.864 +34.8 51.7% +3,738
R:R 2.0 1.770 −24.7 46.6% +2,104

Profit factor is flat to slightly better at 1.5 while the median month falls to a quarter and profitable months drop 12 points. The gate is discarding the many small winners that kept the typical month positive, leaving a lumpier result that fails on distribution while profit factor still looks fine. That is precisely the failure mode the median-month and ex-top-3 criteria were added to catch earlier the same day — and a headline-PF-only reading would have called R:R 1.5 an improvement on GBPUSD.

AUDJPY is the cleanest warning: PF climbs monotonically 1.264 → 1.438 → 1.611 and it fails all three. Rising profit factor across a parameter sweep is not evidence of anything on its own.

Gold: raising R:R buys profit factor by concentrating into the trend

XAUUSD is where the answer to "can this be tuned for gold?" gets a number.

XAUUSD PF exPF long PF short PF median month ex-top-3
R:R 1.0 1.530 1.411 2.558 0.758 −58.9 −1,960
R:R 1.5 1.645 1.503 2.841 0.751 −71.7 −2,257
R:R 2.0 1.834 1.660 3.335 0.740 −72.0 −579

Headline PF improves 20% from 1.0 to 2.0. It does so entirely on the long side — the long book goes 2.56 → 3.34 while the short book does not improve at all (0.758 → 0.740), and the median month gets worse at every step. Raising R:R on gold does not find better trades; it purifies the directional beta identified on 2026-08-26 (gold ran ~2,600 → ~4,600 over the sample). The strategy becomes a cleaner proxy for "gold went up" and a slightly worse one for everything else. This closes the R:R route for the gold-tuning question specifically: the parameter that most improves the headline is the parameter that most concentrates the beta.

The carrying cell moves under R:R too

The GBP-leg test found the carrying cell unstable under the H4 offset. It is also unstable under R:R: GBPUSD H1P1 → H1P2 → H1P2, AUDJPY H4P1 → H1P1 → H1P1, GBPJPY H4P2 → H1P1 → H1P1. Whatever "carries" a run in this design moves under any parameter touched so far. Cell attribution should not be reported as a finding again without a sweep behind it.

Correction

The first pass of this sweep charged XAUUSD 429 ticks at SymbolSpec.mintick 0.01 = $4.29 per fill. The Tickstory file quotes gold to three decimals, so its spread column is in 0.001 units and the real median spread is $0.429 = 43 ticks at our mintick. Gold was re-run at 43 and the table above is the corrected version; the erroneous run showed PF 0.973 at R:R 1.0 and made gold look like it had flipped negative under realistic costs, which it had not. Every FX instrument's decimals match our mintick and none were affected, and XAUUSD was not part of the pre-registered GBP-leg test, so that result is untouched.

Worth noting for future feeds work: SymbolSpec.mintick is not guaranteed to equal the data provider's point size, and the spread column is denominated in the provider's points. Any future use of that column needs the same check.