Bullion Session Duet
- 专家
- 版本: 1.0
- 激活: 5
Bullion Session Duet is an Expert Advisor for MetaTrader 5 built for XAUUSD (gold). It runs two independent intraday strategies, a session range breakout and a trend pullback, from one chart. Every trade has a stop-loss and a take-profit from the start. There is no martingale, grid, averaging or recovery mode. It works on hedging and netting accounts.
How it trades
The signals use fixed M15 and H1 data, so the EA behaves the same whatever chart timeframe you attach it to. All indicators are built in, and no external files or DLLs are needed.
Core A - early-session range breakout
- It records the high and low of the 00:00-07:00 (server time) session from M15 bars. The range height must be between 1 and 8 ATR, and the range is drawn on the chart.
- Until 16:00 it waits for the first M15 close beyond the range by more than 0.25 ATR, then trades in the breakout direction.
- The stop is placed at the middle of the range. The take-profit is 3 times the risk. One Core A trade per day at most.
Core B - trend pullback
- The H1 trend comes from EMA 50 vs EMA 200, price vs EMA 200, and the slope of EMA 200.
- In an uptrend, M15 RSI(7) must have dipped to 25 or lower within the last 6 bars, then an M15 bullish candle must close back above EMA 20. Sells mirror this.
- The stop goes beyond the pullback extreme. The take-profit is 2 times the risk. Up to 2 trades per day, between 07:00 and 20:00.
Trade management
- Stops are kept between 1 and 4 ATR.
- The stop moves to break-even at 1R, and an ATR trailing stop (2.5 ATR) starts at 1.5R.
- Trades are closed after 12 hours, and on Friday from 20:00. No new trades after 18:00 on Friday.
Risk controls
- Position size is a % of equity (0.75% by default), or a fixed lot. The money at risk is calculated from the actual stop with the platform's own profit calculation.
- Hard caps in every lot mode:
- The loss at the stop is never more than 3% of equity. If the broker's minimum lot would break that cap, the stop is tightened to fit (not below 0.5 ATR) or the trade is skipped with a log message.
- A new trade never uses more than 40% of free margin.
- At most 2 open positions on a hedging account, never in opposite directions, and 1 on a netting account. On netting accounts it does not trade a symbol where another EA holds a position.
- Daily loss limit (3% of the day-start balance by default), which closes the open trades when it is hit.
- Spread filter (0.30 ATR by default, optional points limit).
- On symbols other than gold it trades the minimum lot only (input, on by default), because it was designed and tested for XAUUSD.
- Each core uses its own magic number (magic and magic + 1).
Testing performed (version 1.00, JustMarkets demo data, leverage 1:100, default inputs)
Real-tick backtests on XAUUSD H1 from 2024-01-01 to 2026-10-30 with 10,000 USD, results as obtained:
- Hedging account: 720 trades, net +3,768.56, profit factor 1.15, maximum equity drawdown 15.09%. By year: 2024 +437.72, 2025 +1,797.87, 2026 +1,532.97.
- Netting account: 707 trades, net +3,303.07, profit factor 1.13, maximum equity drawdown 13.72%.
- Core B on its own lost money in this test (-303.02, profit factor 0.95). Both cores together did better than Core A alone (+3,768.56 vs +2,794.31). You can switch either core off.
- EURUSD H1 (minimum lot) lost money: -209.32, profit factor 0.72. GBPUSD and USDJPY also lost in shorter tests. Use it on gold.
The default settings were chosen on 2024-2025 data, so only 2026 is an out-of-sample period.
The EA compiles with no errors or warnings. In the Strategy Tester it opened and managed trades on EURUSD (H1, M1), GBPUSD (M30), USDJPY (H1) and XAUUSD (H1, D1), in both netting and hedging mode, with deposits from 100 to 10,000 USD. There were no stop-outs and no trade errors. With 1 USD it skipped every signal with a log message and sent no orders. With small deposits the minimum lot can risk more than 0.75% per trade, up to the 3% cap. Drawdowns were larger at 1,000 USD (21-28%) and 100 USD (46%), so 3,000 USD or more is suggested. The EA has not been forward-tested on a live account.
Recommendations
- Attach it to one XAUUSD chart (any timeframe). Check that your broker's server time puts the 00:00-07:00 range before the London session, as on most GMT+2/+3 servers. Otherwise adjust the hour inputs.
- Test it in the Strategy Tester on your broker's data with "every tick based on real ticks", then on a demo account, before trading real money.
Risk disclosure
Trading leveraged products such as gold CFDs and forex carries a high level of risk and can result in the loss of all invested capital. This Expert Advisor opens and closes positions automatically. Backtest results depend on data quality, spreads, swaps and execution, and past results do not predict future results. The product does not promise or imply any profit. Use only money you can afford to lose.
xauusd, gold ea, gold expert advisor, session breakout, range breakout, trend pullback, intraday, atr trailing stop, risk management, no martingale, no grid, mt5 expert advisor
How it trades
The signals use fixed M15 and H1 data, so the EA behaves the same whatever chart timeframe you attach it to. All indicators are built in, and no external files or DLLs are needed.
Core A - early-session range breakout
- It records the high and low of the 00:00-07:00 (server time) session from M15 bars. The range height must be between 1 and 8 ATR, and the range is drawn on the chart.
- Until 16:00 it waits for the first M15 close beyond the range by more than 0.25 ATR, then trades in the breakout direction.
- The stop is placed at the middle of the range. The take-profit is 3 times the risk. One Core A trade per day at most.
Core B - trend pullback
- The H1 trend comes from EMA 50 vs EMA 200, price vs EMA 200, and the slope of EMA 200.
- In an uptrend, M15 RSI(7) must have dipped to 25 or lower within the last 6 bars, then an M15 bullish candle must close back above EMA 20. Sells mirror this.
- The stop goes beyond the pullback extreme. The take-profit is 2 times the risk. Up to 2 trades per day, between 07:00 and 20:00.
Trade management
- Stops are kept between 1 and 4 ATR.
- The stop moves to break-even at 1R, and an ATR trailing stop (2.5 ATR) starts at 1.5R.
- Trades are closed after 12 hours, and on Friday from 20:00. No new trades after 18:00 on Friday.
Risk controls
- Position size is a % of equity (0.75% by default), or a fixed lot. The money at risk is calculated from the actual stop with the platform's own profit calculation.
- Hard caps in every lot mode:
- The loss at the stop is never more than 3% of equity. If the broker's minimum lot would break that cap, the stop is tightened to fit (not below 0.5 ATR) or the trade is skipped with a log message.
- A new trade never uses more than 40% of free margin.
- At most 2 open positions on a hedging account, never in opposite directions, and 1 on a netting account. On netting accounts it does not trade a symbol where another EA holds a position.
- Daily loss limit (3% of the day-start balance by default), which closes the open trades when it is hit.
- Spread filter (0.30 ATR by default, optional points limit).
- On symbols other than gold it trades the minimum lot only (input, on by default), because it was designed and tested for XAUUSD.
- Each core uses its own magic number (magic and magic + 1).
Testing performed (version 1.00, JustMarkets demo data, leverage 1:100, default inputs)
Real-tick backtests on XAUUSD H1 from 2024-01-01 to 2026-10-30 with 10,000 USD, results as obtained:
- Hedging account: 720 trades, net +3,768.56, profit factor 1.15, maximum equity drawdown 15.09%. By year: 2024 +437.72, 2025 +1,797.87, 2026 +1,532.97.
- Netting account: 707 trades, net +3,303.07, profit factor 1.13, maximum equity drawdown 13.72%.
- Core B on its own lost money in this test (-303.02, profit factor 0.95). Both cores together did better than Core A alone (+3,768.56 vs +2,794.31). You can switch either core off.
- EURUSD H1 (minimum lot) lost money: -209.32, profit factor 0.72. GBPUSD and USDJPY also lost in shorter tests. Use it on gold.
The default settings were chosen on 2024-2025 data, so only 2026 is an out-of-sample period.
The EA compiles with no errors or warnings. In the Strategy Tester it opened and managed trades on EURUSD (H1, M1), GBPUSD (M30), USDJPY (H1) and XAUUSD (H1, D1), in both netting and hedging mode, with deposits from 100 to 10,000 USD. There were no stop-outs and no trade errors. With 1 USD it skipped every signal with a log message and sent no orders. With small deposits the minimum lot can risk more than 0.75% per trade, up to the 3% cap. Drawdowns were larger at 1,000 USD (21-28%) and 100 USD (46%), so 3,000 USD or more is suggested. The EA has not been forward-tested on a live account.
Recommendations
- Attach it to one XAUUSD chart (any timeframe). Check that your broker's server time puts the 00:00-07:00 range before the London session, as on most GMT+2/+3 servers. Otherwise adjust the hour inputs.
- Test it in the Strategy Tester on your broker's data with "every tick based on real ticks", then on a demo account, before trading real money.
Risk disclosure
Trading leveraged products such as gold CFDs and forex carries a high level of risk and can result in the loss of all invested capital. This Expert Advisor opens and closes positions automatically. Backtest results depend on data quality, spreads, swaps and execution, and past results do not predict future results. The product does not promise or imply any profit. Use only money you can afford to lose.
xauusd, gold ea, gold expert advisor, session breakout, range breakout, trend pullback, intraday, atr trailing stop, risk management, no martingale, no grid, mt5 expert advisor
