MT5 Expert Advisor · Promising

Volatility Squeeze Breakout

Closed-bar volatility squeeze then channel breakout.

USDJPY · H1 · Original trading hours

Source + EX5 + selected preset + checksums. Strategy Tester research build.

Volatility Squeeze Breakout — actual 2019–2026 realized balance
Actual historical realized balance, not open equity or live performance.
Promising · selected configuration

Passed the declared retrospective research gates: rolling-year EUR +564.19, PF 1.44; full-period EUR +4996.33, PF 1.40. Incomplete real ticks remain a limitation; this is not live or future performance.

Strategy rules

How this strategy works

  1. Variant 0 uses H1 Bollinger bands with period 20 and 2 standard deviations. Current closed-bar bandwidth must be below 0.75 times the mean of the preceding 100 closed bandwidths.
  2. The same closed H1 bar must close beyond the preceding 20-bar high/low channel. The entry uses a 2.0 × ATR14 protective stop.
  3. The position closes on the opposite 20-bar channel break; no fixed profit target or time exit is used.

The selected configuration uses USDJPY / H1, variant s0. All indicator and session values used by this build are listed in the preset editor.

Historical evidence

Measured backtests

12-month net · EUR+564.19After commission & swap
Profit factor1.4412-month review
Equity drawdown3.46%12-month review
Trades8012-month review
Volatility Squeeze Breakout realized balance, 2025.09.01 to 2026.09.01; net EUR +564.19
2025.09.01 → 2026.09.01 (end exclusive). Starting balance EUR 10,000. 66% real ticks. Available IC Markets real ticks with MT5 fallback. Realized balance includes commissions and swap; floating equity is in the original MT5 report. Open original MT5 report and equity graph.
Volatility Squeeze Breakout realized balance, 2019.01.01 to 2026.09.21; net EUR +4,996.33
2019.01.01 → 2026.09.21 (end exclusive). Starting balance EUR 10,000. 9% real ticks. Available IC Markets real ticks with MT5 fallback. Realized balance includes commissions and swap; floating equity is in the original MT5 report. Open original MT5 report and equity graph.
Separate native MT5 runs. EUR 10,000 each; 1:30 leverage; 100 ms execution delay. End dates are exclusive.
Period / modelNet EURPFTradesEquity DDNative report
Development
2019.01.01 → 2024.01.01
M1 OHLC screening
+3,154.711.424247.81%MT5 report
Validation
2024.01.01 → 2025.01.01
M1 OHLC screening
+1,167.541.97813.40%MT5 report
12-month review
2025.09.01 → 2026.09.01
Real-tick mode + fallback
+564.191.44803.46%MT5 report
Long review
2019.01.01 → 2026.09.21
Real-tick mode + fallback
+4,996.331.406527.85%MT5 report
Your next test

Adjust the strategy preset

Adjust the actual MT5 inputs below, then download a .set file. Load it through Strategy Tester → Inputs → Load. The EA ZIP includes source code and the compiled file.

Selected tested preset loaded.

Mode · 2 inputs
Risk · 6 inputs
Research session controls · 6 inputs

Changes apply to your downloaded file. They do not change the published tests.

Preview the .set file

MT5 also validates parameter combinations and may reject incompatible inputs. Session modes use local London, New York and Tokyo hours. Broker-time conversion uses the configured winter UTC offset and DST rule. A session filter limits eligible entries; it does not change the underlying strategy signal or create trades where none qualify. Policy 2 also closes before the chosen session ends.

Install and reproduce the test

  1. Download and extract the ZIP. Copy TFPriceResearch_Sessions.ex5 into MQL5/Experts/TradeForex in the MT5 data folder. Keep MQ5 and all MQH headers together if compiling.
  2. Open Strategy Tester, select the EA, USDJPY and H1. The build rejects normal chart execution.
  3. Load the included selected-test.set or a preset downloaded above. Symbol, chart timeframe, dates, deposit and tick model are tester settings outside the .set file.
  4. For confirmation choose “Every tick based on real ticks”, EUR 10,000, 1:30 leverage and 100 ms delay. Use 2025.09.01–2026.09.01 or 2019.01.01–2026.09.21; retain the generated report and Journal.
  5. Allow MT5 to obtain the available broker history. Compare actual date coverage, costs, trade count and history quality; a later download or different broker server can change the result.

Read the general MT5 installation guide; this package’s tester-only restriction takes precedence over normal chart-activation steps.

What these results can establish

  • Tested values are research settings, not a profitability claim.
  • Broker history, spread, swaps and fills can change outcomes.
  • These are retrospectively selected historical tests. Development, validation and review periods overlap previously inspected history; this is not a fresh independent holdout.
  • The balance plots show realized outcomes. Equity drawdown includes floating positions and must not be inferred from the balance line alone.
  • Available native ticks and fallback are accepted. Missing ticks, historical spread paths and cost assumptions limit confidence; profitable history does not guarantee future profitability.
  • RiskPercent is an entry-sizing estimate, not a hard loss cap. Costs, gaps and slippage can exceed that estimate; some legacy sizing excludes transaction costs.

Additional cost stress adds 25% of the absolute commission and swap amounts: 12-month stressed net EUR +511.15; long-period stressed net EUR +4,470.17. This is not a full spread or slippage stress.

Files and reproducibility

Each ZIP includes MQ5 source, required headers, EX5, README, selected-test.set, selection.json and SHA256SUMS.txt. Compiled builds and measured results are unchanged by this documentation update.

ZIP SHA-2564370f57ba97c01094027989d44e3476d57483ee1e05e6335b0f58112f2d07ec9

Tested EX5 SHA-256dde5445864f4d1abfe84c60bdfdde05c0de4f13f595d09a454eae78f8a2ff01f

Selection criteria and all strategy categories · Frozen selection record