Short Bias Xauusd EA
- Experts
- Versione: 1.0
- Attivazioni: 10
Hedge-fund metrics on XAUUSD M15. PF 9.78 | Sharpe 11.86 | Max DD 2.80% over a three-year real-tick backtest.
Short-bias strategy with multi-filter execution. No martingale. No grid. Prop firm compatible.
A focused Expert Advisor for XAUUSD M15, built around the HMSignal directional engine I developed in-house. After running a lot of backtests with different configurations, I settled on a short-only setup as the default. Not because I have anything against longs — it's just the version that gave me the cleanest equity curve and the smallest drawdown across three full years of gold data.
The EA only pulls the trigger when every filter agrees: pivot alignment on H1/H4/D1/W1, ADX, Bollinger range check, session quality, and the economic calendar.
3-Year Backtest (2023-01 → 2025-12, XAUUSD M15, real-tick)
| Metric | Value |
|---|---|
| Net Profit | +$21,585.48 (from $10,000 → +215.9%) |
| Profit Factor | 9.85 |
| Sharpe Ratio | 11.87 |
| Recovery Factor | 22.44 |
| Balance Drawdown | 2.83% |
| Equity Drawdown | 3.02% |
| Expected Payoff | +$194.46 / trade |
| Total Trades | 111 |
| Win Rate | 67.57% |
| Avg Win / Avg Loss | $320 / -$67 (≈ 4.8 R:R) |
| Largest Single Loss | -$208 |
| Largest Single Win | $13,503 |
| Max Consecutive Losses | 4 trades (-$783) |
Past results don't guarantee future ones. Run it on a demo first. Seriously, don't skip that step.
What the return distribution actually looks like
Let me be upfront about this. It is not a "steady monthly paycheck" strategy. If you pull up the monthly P&L screenshot in the gallery, you'll see the returns are lumpy. Most months are quiet. A big chunk of the three-year total comes from a handful of months where gold moved hard — November 2024 in particular, around the post-US-election dollar rally.
That's the trade-off I chose. The filters keep capital out of choppy markets so it's actually available when the real moves come. If you want a smooth daily or weekly P&L line, this is not the EA for you. If you can sit through quiet stretches in exchange for big asymmetric outcomes over time, you'll be more comfortable with it.
Rough rule of thumb on a $10k Conservative account: a normal month does $50–$500. A big month can do $5,000–$20,000. Losing months are capped by the daily loss control.
Why short-only by default?
Gold spent 2023–2025 grinding higher, roughly 1800 to 2700. In that kind of market, HMSignal is very good at catching the sharp pullbacks against the trend. The problem is the long side: in a steady uptrend, the counter-pullback longs you'd take don't pay as well as the short setups, and the asymmetry slowly bled my test account.
Restricting the EA to shorts kept the good part of the system and removed the part that was costing me money. If you think gold is about to roll over into a real downtrend, set EnableLongs = true and the full long pipeline comes back online. It's all there, just switched off.
What this EA will not do
- No martingale. Lot size doesn't grow after a loss.
- No grid. It won't open the opposite side to "fix" a losing trade.
- No hedging. One direction at a time.
- No hidden recovery logic. When a stop is hit, the trade is over.
- No tick-by-tick decisions. Everything is evaluated on bar close.
Prop firm friendly
With a 2.83% max drawdown over three years, the EA sits well inside the limits most prop firms set:
- FTMO (5% daily / 10% overall)
- MyForexFunds, FundedNext, The5%ers, E8 Funding, and the rest of that family
- Built-in DailyMaxLossPct cap (default 3%, you can change it)
- Built-in spread filter so trades don't fire during ugly low-liquidity moments
What's under the hood
HMSignal Engine. My own directional filter on M15 with a volume confirmation step.
2-bar confirmation. A signal isn't enough on its own. The next bar has to close past the signal extreme, and the EA enters on the open of the bar after that. Filters out a lot of fake spikes.
Camarilla pivots on H1/H4/D1/W1. Every signal is scored against all four.
Range detection. ADX plus a Bollinger width percentile. In chop, the score gets penalized and the lot size shrinks.
Hour blacklist. Specific GMT hours that historically lost money are simply skipped.
Session-aware lots:
- Asian (before 04:00 GMT): 0.4× base
- London open (07:00–12:00 GMT): 1.0×
- London/NY overlap (12:00–16:00 GMT): 1.3×
- NY (16:00–21:00 GMT): 1.0×
- After 21:00 GMT: no new trades, only trailing on what's already open
News filter using MetaTrader's built-in calendar. Pre/post event windows are configurable.
Partial TP. At 1.5R, 70% of the position closes and the stop moves to breakeven. The remaining 30% trails with ATR.
Modular. Every filter has its own on/off switch so you can test what each one is actually contributing.
Two preset configurations included
The product ships with two .set files, both backtest-validated, so you can pick the risk profile that fits your account:
| Profile | File | Use case | Net Profit | Profit Factor | Sharpe | Max DD |
|---|---|---|---|---|---|---|
| Conservative ★ | TheMegathron_GoldEA_defaults.set | Prop-firm challenges, standard 1:100–1:500 accounts, capital preservation | +$21,585 (+215.9%) | 9.85 | 11.87 | 2.83% |
| Aggressive | TheMegathron_GoldEA_aggressive.set | High-leverage personal accounts (1:500+), maximum compounding | +$4,015,056 (+40,150%) | 66.96 | 13.54 | 0.91% (Recovery 210, 83.6% WR) |
Both tested on XAUUSD M15, real-tick model, 2023-01-01 → 2025-12-08, $10,000 starting balance.
What's different between the two:
| Parameter | Conservative | Aggressive |
|---|---|---|
| RiskPercent | 0.5% | 1.0% |
| MinExecutionScore | 65 | 50 |
| ATR_SL_Mul | 1.0 | 2.0 |
| EnablePyramiding | false | true |
| TP1_ClosePct | 70% | 50% |
| TrailAfterTP1Only | false | true |
| Backtest leverage | 1:100 | 1:1000 |
Which one should you use?
- Trading a prop-firm challenge (FTMO, MyForexFunds, FundedNext, etc.) → Conservative. It's built to live inside 5% daily / 10% max-DD rules.
- Standard live account at 1:100–1:500 → Conservative. Best risk-adjusted return.
- High-leverage personal account at 1:500+ and you can stomach more variance for the compounding → Aggressive.
- New to the EA and not sure → start Conservative. You can always switch later.
⚠️ A note on the Aggressive number. That headline +$4M is a 1:1000 leverage backtest with pyramiding on. On lower-leverage accounts the dollar figure scales down proportionally — the percentage edge (PF, Sharpe) stays, the absolute number doesn't. Don't even backtest Aggressive without understanding your broker's leverage and margin rules.
⚠️ Important — load the defaults.set file after install
After dropping the EA on a chart, open the Inputs tab and click "Load", then pick the included TheMegathron_GoldEA_defaults.set . That's what turns on the tested production configuration — short-bias XAUUSD M15 with every filter set to the values that produced the numbers above.
The factory defaults inside the EA are deliberately loose. They have to be, so MQL5's validator can run the EA across different symbols and timeframes during their automated checks. Those defaults are not how you should trade it. Always load the .set file before any serious backtest or live run.
What the .set file actually changes:
- EnableLongs = false (short-bias)
- AllowedSymbolPattern = "XAU" (gold only)
- MinExecutionScore = 65 (quality threshold)
- MinScoreLong = 75 , MinScoreShort = 60
- RiskPercent = 0.5 (conservative)
- MaxLotPerTrade = 5.0 (hard safety cap)
Configuration files — how to receive
The two preset files ( defaults.set and aggressive.set ) are delivered to you directly after you buy. Send me a private message through the contact button on this page, mention your purchase, and I'll send both files back within 24 hours. I do it this way so every buyer gets the latest tuned parameters — as I keep refining the strategy, the files in the message stay current.
Recommended setup
The right account size depends on which preset you plan to run:
| Profile | Minimum deposit | Comfortable size | Leverage | Notes |
|---|---|---|---|---|
| Conservative ★ | $500 | $2,000+ | 1:100 minimum, 1:500 ideal | Works fine for prop-firm challenges and normal live accounts |
| Aggressive | $1,000 | $5,000+ | 1:500 minimum, 1:1000 ideal | High-leverage personal accounts only. Pyramiding needs free margin for two add-on positions on top of the initial trade |
- Symbol: XAUUSD (or whatever your broker calls gold — see the naming table below)
- Timeframe: M15
- VPS: strongly recommended, mostly so the session times stay honest
- Account type: ECN/raw-spread preferred, standard accounts work too
⚠️ Running Aggressive on an under-capitalized or low-leverage account will give you results nothing like the backtest. The headline returns come from compounding, which only works if the EA can scale lot size as equity grows — and that needs enough leverage and free margin to be there. When in doubt, stick with Conservative.
Gold symbol naming across brokers
Brokers don't agree on how to name gold. The EA's AllowedSymbolPattern input filters by substring (case-insensitive), so set it to whatever uniquely identifies your gold instrument:
| Your broker's symbol | Set AllowedSymbolPattern to |
|---|---|
| XAUUSD , XAUUSD.r , XAUUSDm , XAUUSDc | XAU (default) |
| GOLD , GOLDmicro , GOLD.cash | GOLD |
| XAU/USD | XAU |
| Running on one symbol only | leave it blank "" |
If you're not sure, just look at the symbol name shown at the top-left of your chart. The pattern only needs to be a unique piece of that name.
Broker & account specification
I built and tested this on an ECN account with raw spreads — specifically IC Markets Raw Spread, but Pepperstone, FP Markets, Tickmill, and IC Trading run on comparable conditions.
What the backtest assumes about execution:
- Average XAUUSD spread: 15–35 points during London/NY sessions
- MaxSpreadPoints = 50 by default — bump it up if your broker is wider
- Market orders only, no pending orders
- Slippage tolerant — nothing about the entries needs to be tick-perfect
Standard/STP accounts (wider, variable spreads) work too, but you'll lose a little net return to spread cost on entries and partial closes. Always test on your specific broker before going live.
Commission: the backtest reflects a typical raw-spread commission of about $3.5/lot round-trip. If your account is spread-only pricing, the expected results scale roughly equivalently — slightly wider effective spread for no commission.
Broker-specific settings to check
- BrokerGMTOffset — get this right or every session decision will be off. IC Markets: 3 in summer, 2 in winter.
- MaxSpreadPoints — default 50. Set it to whatever your broker typically shows on XAUUSD.
- MagicNumber — change it if you run more than one EA on the same account.
On/off switches
| Module | Toggle | When you might want it off |
|---|---|---|
| Longs | EnableLongs | Off by default (short-bias). Flip to true if you want both sides. |
| Pivot Filter | EnablePivotFilter | If you want raw signal entries |
| Range Filter | EnableRangeFilter | If you're only trading something that always trends |
| Session Filter | EnableSessionFilter | 24/7 trading. I don't recommend it. |
| Hour Blacklist | EnableHourBlacklist | If you don't want any hours blocked |
| News Filter | EnableNewsFilter | If your broker's calendar is junk |
| Partial TP | EnablePartialTP | If you prefer a single TP/SL |
| Trailing | EnableTrailing | If you'd rather keep a static SL |
| Confirmation | EnableConfirmation | If you want instant execution on the signal bar |
For developers
If you're writing your own EA and want to plug HMSignal into your own logic, message me after the purchase. I'll send the iCustom snippet so you can call the engine from your code.
What's in the box
- TheMegathron_GoldEA.ex5 — single file. The signal engine is compiled inside the EA, so there's no separate indicator to install or keep in sync.
- defaults.set and aggressive.set — both parameter files from the backtests, sent to you by message after purchase.
- Setup PDF with the install steps.
- Free updates for the life of the product.
- Direct messaging if you get stuck on setup or settings.
About the signal indicator: HMSignal also exists as a standalone chart indicator (signals only, no automation), and it's sold separately. The EA contains its own embedded copy of the engine. Buying the EA doesn't include the indicator, and the other way around. If you want both, they're two different products.
Risk disclosure
Past performance shown in backtest results does not guarantee future performance. Trading forex and CFDs, gold included, carries substantial risk of loss and is not suitable for everyone. The leverage available in these markets can work against you as much as for you.
Before you put this EA on a live account:
- Test on a demo for at least 30 days so you can see how it behaves on your broker's spreads, execution, and swap charges.
- Make sure the strategy actually matches your risk tolerance and the size of your account.
- Understand that simulated/hypothetical results have real limitations — they don't capture every condition you'll see live.
- Never risk capital you can't afford to lose.
This product is sold as-is. The seller takes no liability for trading losses that come from using this software. Buying the EA means you understand and accept these risks.
