Grid averaging with a risk limit: a EUR/USD check
Methodology
- Signal: enter against a price deviation from SMA(100) of more than one ATR(14) — a simplified grid model with no ladder of orders.
- Engine run with costs; the risk limit is modelled by the absence of position scaling.
- Data — daily EUR/USD bars (the stated USD/JPY pair is not represented by a separate history at the portal).
Results on real data
| Metric | Value |
|---|---|
| Instrument | EUR/USD |
| Period | 2025-06-16 — 2026-07-20 |
| Bars | 400 |
| CAGR | +4.0% |
| Drawdown | 2.3% |
| Sharpe | 0.90 |
| Winning trades | 68% |
| Trades | 22 |
| Time in market | 47% |
How much can you trust this result
A single return figure proves nothing — it is easy to curve-fit to history. Below are three robustness checks. We show them even when they go against the strategy.
The first 70% of the data is "training", the last 30% is a fair test on data the rules never saw. If the result is far worse on the test set, the strategy was fitted to the past.
| Metric | Train | Test (OOS) |
|---|---|---|
| CAGR/yr | +2.2% | +8.2% |
| Sharpe | 0.50 | 1.90 |
| Max drawdown | 2.3% | 1.3% |
| Bars | 279 | 120 |
The sample is cut into 5 consecutive segments. The return in each shows whether the strategy works evenly over time or rests on one lucky stretch.
Trade order is reshuffled 2,000 times (bootstrap). The range shows how much the outcome depended on a lucky sequence rather than the strategy itself. p5–p95 is the corridor of "almost all" outcomes.
Computed from the per-bar returns of the same run (costs already included). Monte-Carlo is deterministic: the numbers are stable across rebuilds. Historical robustness does not guarantee future results.
Download the exact sample and run the logic yourself — the numbers above should match.
A Binance spot EUR/USDT proxy series, not a forex-broker feed. Binance Spot REST API (api.binance.com/api/v3/klines).
Conclusion
On a calm sample the simplified grid is profitable and most trades closed in the green. But this is exactly the case where the result is deceptive: the short history contains no strong trend against which a grid accumulates loss.
Practical takeaway for the trader
Grid logic is profitable in a range only with a hard risk limit. Without a cap on volume and total loss, a steady curve masks a catastrophic tail.
FAQ
Why should the grid result not be taken at face value?
A grid is profitable in a range and dangerous in a trend. The calm sample contains no strong trend, so it shows only the favourable side of the approach and stays silent on the risk.
How does this model differ from a real grid?
A real grid places a ladder of orders and often scales volume up. Here we take a simplified counter-trend model with no scaling — it shows the behaviour of the approach but does not reproduce the risk of a full martingale grid.
Why EUR/USD?
The only pair with its own reproducible history at the portal. The result is honestly flagged as a check on the available instrument.