Version 2.1 – MQL5 Edition
Automated multi-strategy Gold trading for MetaTrader 5
This manual describes the user-accessible inputs, risk controls, Position Trailing Stop Loss, news/session protection, pending-order management, individual money management and Strategy Tester statistics in Angels Eye v2.1.
Recommended minimum standard account deposit: $1,000. For smaller balances, a Cent Account is recommended. Use a fast broker with low spread, low slippage and reliable execution.
Contents
- Product Overview
- Installation & First Start
- Quick Start
- Money Management
- Core Trading Settings
- Daily Drawdown Protection
- Position Trailing Stop Loss
- News Filter
- Trading Schedule & Sessions
- Daily Rollover Protection
- Trading Time Filter
- Pending Order Management
- Strategy Settings
- Prop Firm Settings
- Trade Comments
- Chart & Display
- Strategy Tester Statistics
- Built-in Safety & Order Logic
- Backtesting
- Troubleshooting
- Default Settings Reference
1. Product Overview
Angels Eye v2.1 is a multi-timeframe Expert Advisor for MetaTrader 5, designed for Gold trading. It manages eight strategy modules, independent timeframe/magic-number combinations, broker-side pending orders, position-level risk protection and automated restrictions around news, weekends, daily rollover and user-defined trading windows.
- Strategies 1–7 can operate independently on D1, H4 and H1. Strategy 8 is D1 only.
- The chart timeframe does not control the strategy timeframes.
- Each strategy/timeframe combination has its own Stop Loss input and Magic Number.
- Money Management can run globally or individually for every strategy/timeframe instance.
- The Position TSL is managed per individual position.
- Valid pending setups can be parked internally when broker Stops Level prevents placement.
- Forex Factory news protection can block entries around impact-based or keyword-matched events.
Account type: A hedging account is recommended if simultaneous strategy positions should remain independent. On a netting account, MetaTrader may consolidate positions on the same symbol.
Risk note: No EA setting can eliminate market, execution, spread, slippage, gap or broker risk. Test the intended broker and symbol before live use.
2. Installation & First Start
- Copy the Angels Eye .ex5 file to MetaTrader 5 → File → Open Data Folder → MQL5 → Experts.
- Restart MetaTrader 5 or refresh Navigator.
- Open your broker's Gold chart, e.g. XAUUSD or GOLD including broker suffixes.
- Attach Angels Eye and enable Algo Trading.
- Review the Inputs tab before starting.
- Keep the terminal/VPS running continuously when using virtual pending management and live TSL logic.
Forex Factory News Feed
Angels Eye downloads live news from the Forex Factory/FairEconomy weekly XML feed.
Whitelist: https://nfs.faireconomy.media
Feed: https://nfs.faireconomy.media/ff_calendar_thisweek.xml
In MT5 open Tools → Options → Expert Advisors, enable “Allow WebRequest for listed URL” and add https://nfs.faireconomy.media. If permission is missing, live news updates cannot be downloaded. A previously stored weekly cache may still be used.
3. Quick Start
- Start with Fixed Lot = 0.01 while validating broker behavior.
- Use Money Management Scope = Global for shared sizing or Individual for separate sizing per strategy/timeframe.
- Keep the default Stop Loss values until you have broker-specific test results.
- Keep High-Impact News blocking and Daily Rollover Protection enabled.
- Keep Broker Stops-Level Parking enabled.
- Nearest Pending Management is optional and disabled by default.
- A VPS close to the broker can improve execution stability.
4. Money Management
| Input | Default | Purpose |
|---|---|---|
| Money Management Scope | Global | Global uses one shared lot calculation. Individual uses separate settings for every strategy/timeframe instance. |
| Lot Mode | Fixed Lot | Global Fixed Lot or Auto Lot mode. |
| Fixed Lot Size | 0.01 | Global fixed lot when Scope = Global. |
| Auto Lot Balance per 0.01 | 1000.0 | Global Auto Lot divisor. Example: 1000–1999 → 0.01, 2000–2999 → 0.02. |
| Auto Lot Only Up | true | During the current EA run, the highest Auto Lot reached is not reduced if balance later falls. |
| Enable Take Profit | true | false disables fixed TP placement/restoration and allows open-end trades while SL/TSL logic remains active. |
Individual Money Management
When Money Management Scope = Individual, each strategy/timeframe has its own:
- Lot Mode
- Fixed Lot Size
- Auto Lot Balance per 0.01
S1–S7 each provide separate D1, H4 and H1 profiles. S8 provides a D1 profile. In total, v2.1 can use 22 independent strategy/timeframe lot calculations. Auto Lot Only Up remains one global behavior switch.
| Instances | Lot Mode | Fixed Lot | Auto Lot Balance / 0.01 |
|---|---|---|---|
| S1–S7: D1 / H4 / H1 | Fixed Lot | 0.01 | 1000.0 |
| S8: D1 | Fixed Lot | 0.01 | 1000.0 |
Auto Lot floor: Auto Lot uses full balance blocks and does not calculate below 0.01 before broker volume normalization. Broker min/max/step rules are applied afterwards.
5. Core Trading Settings
| Input | Default | Purpose |
|---|---|---|
| MaxSpread | 500.0 | Maximum spread allowed for new trading actions. Test broker-specific point conventions. |
| Virtual_expiration | true | Allows the EA to manage pending-order expiration internally. |
A setup can be valid but remain unplaced while spread exceeds MaxSpread. Existing position management is independent of new-entry permission.
6. Daily Drawdown Protection
| Input | Default | Purpose |
|---|---|---|
| Enable Daily Drawdown Protection | false | When enabled, monitors managed realized + floating result for the broker day. If a limit is reached, managed exposure is closed/cleared and entries remain blocked until the next broker day. |
| Daily DD Limit (%) | 5.0 | Percentage loss limit measured against broker-day start balance. 0 disables this limit. |
| Daily DD Limit (Account Currency) | 0.0 | Absolute loss limit. 0 disables this limit. |
If both limits are positive, either can trigger the protection. The daily lock is persisted so restarting the EA does not re-enable trading during the same broker day.
7. Position Trailing Stop Loss
| Input | Default | Purpose |
|---|---|---|
| Enable Trailing Stop Loss | true | Turns the position-level trailing system on/off. |
| TSL Activation Profit (Points) | 120 | Profit required before trailing activates. |
| TSL Distance from Best Profit (Points) | 80 | Protected level follows best profit by this distance. |
Every live Angels Eye position has its own TSL state. Once activation is reached, the EA stores the best achieved profit and calculates a protected level. The level only tightens. If price returns through it, the EA closes that specific position. On live/demo accounts, the active virtual TSL is mirrored to a broker-side SL where broker rules permit. TSL state is persisted for restart recovery.
Formula: Protected profit = Best profit − TSL distance. There is no Minimum Basket Profit to Close and no Extra TSL Trigger Buffer.
8. News Filter
Impact-Based Forex Factory Filter
| Input | Default |
|---|---|
| Enable News Filter | true |
| News Currencies | USD |
| High Impact | true / 30 min before / 30 min after |
| Medium Impact | false / 30 min before / 20 min after |
| Low Impact | false / 15 min before / 10 min after |
The source is the Forex Factory weekly XML feed via FairEconomy. Feed timestamps are handled in UTC and converted for broker/server display and blocking. Refreshes are rate-limited and failed requests retry later.
Key News Keyword Filter
| Input | Default | Purpose |
|---|---|---|
| Enable Key News Keyword Filter | false | Independent event-title filter; can operate even if the impact filter is disabled. |
| Key News Keywords | empty | Comma/semicolon-separated event-title keywords. “|” is also accepted. |
| Key News Block Before/After | 30 / 30 min | Entry block window around a matched event. |
| Block All-Day Keyword Events | true | Blocks the full event day for matched all-day events. |
Example only: NFP;CPI;Bank Holiday. The shipped keyword list is empty. In Strategy Tester/Optimization, WebRequest is not used as a historical news source, so news blocking remains neutral instead of fabricating historical events.
9. Trading Schedule & Sessions
| Input | Default | Purpose |
|---|---|---|
| Disable Friday Trading | false | When enabled, new Friday entries are disabled and pending orders are managed by the protection logic. |
| Weekend Pending Protection | true | Parks pending orders before final Friday close and restores eligible orders after Monday open. |
| Remove Pending Before Friday Close | 20 min | Lead time before final Friday session close. |
| Restore Pending After Monday Open | 10 min | Delay after first Monday session opens. |
Weekend timing is derived from broker symbol trading sessions, not from a hard-coded universal Gold close time.
10. Daily Rollover Protection
| Input | Default | Purpose |
|---|---|---|
| Enable Daily Rollover Protection | true | Protects around the broker's daily symbol session break. |
| Close Positions / Park Pending Before Rollover | 5 min | Closes managed positions and parks pending orders before session close. |
| Resume / Restore After Rollover | 3 min | Wait after next session open before trading resumes. |
11. Trading Time Filter
| Input | Default | Purpose |
|---|---|---|
| Use Trading Time Filter | false | Master switch for user-defined entry windows. |
| Trading Window Time Zone | UTC | UTC or Broker Server Time. |
| Windows 1–4 | disabled, 00:00–00:00 | Each window has Enable, Start and End inputs. |
With all windows disabled, the Trading Time Filter imposes no restriction. News/weekend/rollover/drawdown protections can still block entries.
12. Pending Order Management
| Input | Default | Purpose |
|---|---|---|
| Park Pending Orders Blocked by Broker Stops Level | true | Preserves a valid logical setup internally until broker placement becomes valid. |
| Enable Nearest Pending Management | false | Prioritizes broker-side pending capacity by distance to current price. |
| Maximum Pending Orders on Broker | 10 | Active cap only when Nearest Pending Management is enabled. |
Order Logic
- Strategies calculate the intended entry first; broker Stops Level is handled centrally afterwards.
- If a position is open for the same strategy/timeframe Magic Number and direction, a new pending order in that direction is blocked.
- Existing opposite or previously placed pending orders are not automatically deleted by this rule.
- Exact duplicate Angels Eye entry prices are blocked globally.
- Filled strategy/timeframe/direction levels are recorded as consumed and protected against immediate reuse.
- Consumed-entry state can be reconstructed from account history after restart.
13. Strategy Settings
Strategies 1–7 have an overall enable switch plus separate D1, H4 and H1 switches. Strategy 8 is D1 only. Each enabled timeframe uses its own Stop Loss input and Magic Number. In Individual Money Management mode, every instance also uses its own lot calculation.
| Strategy | Timeframes | Default SL (Points) | Default Magic Numbers |
|---|---|---|---|
| 1 | D1 / H4 / H1 | 1300 / 1300 / 1300 | 111 / 222 / 333 |
| 2 | D1 / H4 / H1 | 1200 / 1200 / 1200 | 444 / 555 / 777 |
| 3 | D1 / H4 / H1 | 1300 / 1300 / 1300 | 888 / 999 / 1111 |
| 4 | D1 / H4 / H1 | 600 / 600 / 600 | 2222 / 3333 / 4444 |
| 5 | D1 / H4 / H1 | 1000 / 1000 / 1000 | 5555 / 6666 / 7777 |
| 6 | D1 / H4 / H1 | 1200 / 1200 / 1200 | 8888 / 9999 / 11111 |
| 7 | D1 / H4 / H1 | 600 / 600 / 600 | 22222 / 33333 / 44444 |
| 8 | D1 only | 1300 | 55555 |
Magic Numbers: identify each strategy/timeframe instance for order management, re-entry protection, comments, TSL and Strategy Tester statistics. Do not intentionally assign the same Magic Number to multiple independent instances.
Typical Per-Instance Inputs
- Enable Strategy / Enable D1-H4-H1
- Stop Loss (Points)
- Lot Mode
- Fixed Lot Size
- Auto Lot Balance per 0.01
- Magic Number
14. Prop Firm Settings
| Input | Default | Purpose |
|---|---|---|
| Enable Prop Firm SL/TP Randomization | false | Adds randomized extension to SL/TP distances. |
| Random Extra SL/TP Range (Points) | 200 | Maximum random extra distance. |
If Enable Take Profit is false, Prop Firm TP randomization cannot create a fixed TP.
15. Trade Comments
| Input | Default | Purpose |
|---|---|---|
| Enable All Trade Comments | true | Master switch for Angels Eye order/deal comments. |
| Enable Strategy 1–8 Trade Comment | true | Per-strategy comment switch. |
| Strategy X Trade Comment | Angels Eye - SX - {TF} | {TF} is replaced with D1/H4/H1. Strategy 8 uses D1. |
16. Chart & Display
| Input | Default | Purpose |
|---|---|---|
| ApplyAngelsEyeChartTheme | true | Applies the Angels Eye chart-color theme. |
| ShowOverviewPanel | true | Displays the overview panel. |
| OverviewPanelScale | 1.0 | Panel scale. |
| OverviewPanelXOffset / YOffset | 10 / 10 | Panel position offsets. |
In non-visual Strategy Tester operation, unnecessary chart-object work is avoided.
17. Strategy Tester Statistics
Angels Eye v2.1 can print a compact performance summary for every strategy/timeframe at the end of an MT5 Strategy Tester run. The statistics use the configured Magic Numbers, so D1, H4 and H1 remain independently measurable.
| Input | Default | Purpose |
|---|---|---|
| Print Strategy / Timeframe Statistics | true | Prints the summary once at the end of a normal Strategy Tester run. |
| Print Statistics During Optimization | false | Also prints summaries during optimization passes when enabled. Default OFF reduces log size and overhead. |
The summary contains separate rows for S1–S7 on D1/H4/H1 and S8 on D1, followed by strategy totals and one overall TOTAL row.
| Metric | Meaning |
|---|---|
| Trades | Number of closed positions assigned to the instance. |
| WinRate | Percentage of positive closed trades. |
| MaxDD | Maximum drawdown of the closed-trade P/L curve; not floating/equity drawdown. |
| AvgDD | Average drawdown of the closed-trade P/L curve. |
| TotalProfit | Net closed result including profit, swap, commission and fees. |
| AvgProfit | Average net result per closed trade. |
| PF | Profit Factor = gross profit / gross loss. |
The performance summary is intended for the Strategy Tester journal and is not continuously calculated on every tick.
18. Built-in Safety & Order Logic
- Re-entry protection: filled entry levels are stored and protected against immediate reuse.
- Broker Stops-Level parking: valid logical pendings can be stored internally and retried later.
- Freeze Level: mainly restricts modification/deletion of broker orders and SL values, not strategy signals.
- Position-level trailing: each position uses its unique MetaTrader position identifier.
- Trade-session awareness: weekend and rollover protection use broker symbol session information.
- Diagnostics: event-based live/demo diagnostics are reduced/disabled in tester and optimization to lower overhead.
19. Backtesting
- Use MT5 Strategy Tester with real ticks whenever practical for execution-sensitive validation.
- The attached chart timeframe does not need to match D1/H4/H1 strategy timeframes.
- Test with the exact broker symbol specification intended for live use.
- Virtual pending handling is optimized for tester operation; real positions remain native MT5 positions for balance/equity reporting.
- Live diagnostics are disabled/reduced in tester/optimization, while v2.1 Strategy/Timeframe Statistics can be printed at the end.
- Results can differ across brokers because candle data, spreads, Stops Level, session times, tick size and execution rules differ.
Do not overfit: Stop Losses, lot calculations, news windows, trading windows and strategy enable switches can materially change historical results. Validate over multiple regimes and out-of-sample periods.
20. Troubleshooting
| Situation | Check |
|---|---|
| EA loads but does not trade | Algo Trading, symbol trade mode, spread, news block, trading-time filter, Friday/weekend protection, rollover and Daily DD lock. |
| Pending setup disappears | Duplicate/consumed level, strategy gate or broker Stops-Level parking. |
| Pending not visible at broker | It may be parked internally by Stops-Level or Nearest Pending Management. |
| TSL does not appear immediately | TSL activates only after the configured profit threshold. |
| Broker SL differs from virtual trail | Stops Level, Freeze Level and tick size can require a broker-valid level farther away. |
| Different broker gives different results | Gold candle data, spread, sessions, contract size, Stops Level and tick history differ. |
| Multiple strategy positions merge | Use a hedging account if independent simultaneous positions are required. |
| Keyword filter blocks nothing | Default keyword list is empty and keyword filter is OFF. |
| No live news data | Add https://nfs.faireconomy.media to MT5 WebRequest permissions. |
| No tester statistics | Enable Print Strategy / Timeframe Statistics. For optimization passes also enable Print Statistics During Optimization. |
21. Default Settings Reference
| Group | Setting | Default |
|---|---|---|
| Money Management | Scope | Global |
| Money Management | Lot Mode / Fixed Lot / Auto Lot Balance | Fixed Lot / 0.01 / 1000 |
| Money Management | Auto Lot Only Up / Enable TP | true / true |
| Core | MaxSpread / Virtual_expiration | 500 / true |
| Daily DD | Protection / % / Currency | false / 5.0 / 0.0 |
| TSL | Enabled / Activation / Distance | true / 120 / 80 |
| News | High Impact | true / 30 before / 30 after |
| News | Medium Impact | false / 30 before / 20 after |
| News | Low Impact | false / 15 before / 10 after |
| News | Keyword Filter / Keywords / Window | false / empty / 30 before & after |
| Schedule | Disable Friday / Weekend Protection | false / true |
| Schedule | Friday Remove / Monday Restore | 20 / 10 min |
| Rollover | Protection / Before / After | true / 5 / 3 min |
| Trading Time | Filter / Time Basis / Windows | false / UTC / all disabled |
| Pending | Stops-Level Parking / Nearest Management / Max Broker Pendings | true / false / 10 |
| Prop Firm | Randomization / Range | false / 200 |
| Comments | All Trade Comments | true |
| Display | Theme / Panel / Scale / Offset | true / true / 1.0 / 10,10 |
| Tester Statistics | Print Summary / During Optimization | true / false |
Strategy Defaults
| S | TF | SL Points | Magic |
|---|---|---|---|
| 1 | D1/H4/H1 | 1300/1300/1300 | 111/222/333 |
| 2 | D1/H4/H1 | 1200/1200/1200 | 444/555/777 |
| 3 | D1/H4/H1 | 1300/1300/1300 | 888/999/1111 |
| 4 | D1/H4/H1 | 600/600/600 | 2222/3333/4444 |
| 5 | D1/H4/H1 | 1000/1000/1000 | 5555/6666/7777 |
| 6 | D1/H4/H1 | 1200/1200/1200 | 8888/9999/11111 |
| 7 | D1/H4/H1 | 600/600/600 | 22222/33333/44444 |
| 8 | D1 | 1300 | 55555 |
End of Manual
Before live use, verify the exact inputs on the installed build and test the EA on the intended broker/account environment. This manual describes Angels Eye v2.1.
Risk Disclosure
Trading leveraged financial instruments involves substantial risk and can result in losses exceeding expectations. Historical or backtest performance is not a guarantee of future results. The user is responsible for broker selection, configuration, risk sizing and live-trading decisions.
© Lukas Haufe | Angels Eye v2.1


