VWAP Fade: reversion to the volume-weighted price on EUR/USD
Methodology
- Signal: enter against a price deviation from VWAP of more than one ATR(14), exit on the return to VWAP.
- Engine run with costs on a calm sample.
- Data — daily EUR/USD bars (the stated S&P 500 CFD 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 | +11.3% |
| Drawdown | 3.0% |
| Sharpe | 1.82 |
| Winning trades | 88% |
| Trades | 16 |
| Time in market | 74% |
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 | +15.6% | +1.8% |
| Sharpe | 2.36 | 0.36 |
| Max drawdown | 3.0% | 2.2% |
| 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 ranging sample the return to VWAP performed steadily — one of the best results among the tested signals. The same caveat applies: the approach is counter-trend and, in a sustained trend where VWAP itself drifts after price, it would be unprofitable.
Practical takeaway for the trader
VWAP Fade works well in a range around fair value, but it requires a trend filter and reliable volume — on forex data volume is tick-based.
FAQ
Why did VWAP outperform the other signals?
On a ranging sample the reversions to the volume-weighted price triggered more often and more precisely. But that is a property of the sample: in a trend the same signal would be unprofitable.
Is VWAP reliable on forex data?
With a caveat: forex has no single exchange volume, only tick volume (the number of price changes), so VWAP built on it should be treated as a guide, not an exact level. That is precisely why the result is honestly limited to the available EUR/USD sample and does not carry over to instruments with a different volume structure.
Can the result be transferred to indices?
Cautiously: the reversion-to-VWAP mechanic is universal, but the specific metrics depend on the instrument and regime. Our run is honestly limited to the available EUR/USD pair.