PropFirmGuard Pro
- エキスパート
- バージョン: 1.0
- アクティベーション: 5
PropFirmGuard Pro is a protection layer for prop firm evaluations and funded accounts. It watches account equity on every tick against the two rules that end many evaluations, the daily loss limit and the maximum total drawdown, and when a limit is about to be broken it closes every position, deletes every pending order and blocks new trades until the next daily reset.
The expert opens no trades of its own (the optional inactivity heartbeat is the single documented exception, see below). It is not a trading strategy. Run it on a spare chart next to any other expert advisor or next to your manual trading: it covers trades opened by hand, from a phone, or by another expert advisor on the same account, because it polls the account state itself instead of waiting to be notified.
Prop firm presets (verified on the firms' official pages on 2026.09.02)
- FTMO 2-Step: 5% daily, 10% total
- FTMO 1-Step: 3% daily, 10% trailing
- FundedNext Stellar 2-Step: 5% daily, 10% total
- FundedNext Stellar 1-Step: 3% daily, 6% total
- FundedNext Stellar Lite: 4% daily, 8% total
- Axi Select: 4% daily (self-imposed), 7% total
- The5ers High Stakes: 5% daily, 10% total
- Custom: type your own limits
Firms change their rules without notice. Re-check the numbers against your own contract before relying on a preset; the Custom preset takes any pair of limits.
How the limits are measured (the safe side)
- Daily loss is measured from the equity recorded at the daily reset hour.
- Total drawdown is measured from the highest equity reached since the guard started (the equity peak), not from the initial balance.
- Both limits are reduced by a safety buffer (default 0.5%), so the guard acts before the firm does. With a 5% daily limit and a 0.5% buffer the guard acts at 4.5%.
Measuring the total drawdown from the equity peak is at least as strict as every rule in the preset list (static, trailing or balance based), so the guard does not allow more loss than the firm would. If your firm measures from the initial balance, the guard is simply more conservative than needed.
Features
- On-chart panel built with chart objects: status line, equity, day start and peak, distance to both limits, next calendar event, heartbeat status and a pause / resume button. Pausing stops the guard from acting; it keeps watching and reporting.
- News pause using the native MetaTrader 5 economic calendar. No web requests, no external services, nothing to configure outside the terminal. Choose the importance threshold and the window before and after each event. New trades are blocked inside the window; optionally the guarded positions are closed too.
- Friday close: flatten and block from a Friday cutoff (server time) until the market reopens, for firms that forbid holding over the weekend.
- Inactivity heartbeat (off by default): several firms suspend accounts that stay inactive for too long. When enabled, after a configured number of days without a trade the guard fires one micro round trip (minimum lot, normalized to the symbol's volume step, limits and free margin) and closes it at once. Its trades carry their own magic number so you can audit them in the history.
- Push notifications to the MetaTrader mobile app (needs a MetaQuotes ID in the terminal): guard armed, breach, news pause and resume.
- Equity journal: optional comma separated text file under MQL5\Files\PropFirmGuardPro with time, equity, balance, day start, peak and status, one row per interval.
- Works on netting and hedging accounts: positions are closed one by one by ticket. Flattening is throttled to one pass every few seconds and never loops; a broker rejection is logged with its return code and retried on the next pass.
- Keeps all of its state in memory: no global variables, so behaviour in the strategy tester and on a live chart is identical. After a terminal restart in the middle of a day the daily baseline is re-anchored to the current equity, which never allows more loss than a fresh day would.
Input parameters
Limits
- Prop firm preset (default Custom)
- Daily loss limit if Custom, % of day-start equity (default 5.0)
- Total drawdown limit if Custom, % from equity peak (default 10.0)
- Safety buffer subtracted from both limits, % (default 0.5)
- Daily reset hour, server time 0-23 (default 0)
News pause (native economic calendar)
- Block new trades during news windows (default true)
- Also close guarded positions during news windows (default false)
- Window opens, minutes before the event (default 5)
- Window closes, minutes after the event (default 5)
- Event importance threshold (default high only)
Friday close
- Flatten and block from a Friday cutoff until Monday (default false)
- Friday cutoff hour and minute, server time (default 21:00)
Inactivity heartbeat
- Fire a micro round trip against firm inactivity rules (default false)
- Days without trading before the heartbeat fires (default 25)
- Requested heartbeat volume, normalized per symbol (default 0.01)
Alerts and journal
- Send push notifications (default false)
- Append an equity journal file (default false)
- Seconds between two journal rows (default 60)
Panel
- Show the on-chart panel (default true)
- Panel X and Y position in pixels (default 10, 20)
Testing
The strategy tester screenshots come from a self-test harness, not from a strategy: it opens and closes a market position every bar on XAUUSD M5 with a 500 USD deposit and a 1% daily limit, so the account bleeds at a predictable rate and the daily limit is breached every trading day of the bleeding phase. The entries by hour histogram shows trading stopping after the breach hour and staying stopped until the next daily reset. These are backtest results of a harness that loses on purpose; they say nothing about profitability and are shown only to demonstrate the blocking behaviour.
In the strategy tester only, the expert itself performs one micro round trip at the start of the run (the same trade the inactivity heartbeat would make, minimum volume, closed at once) so that a tester run contains a trade. It never does this on a live or demo chart.
The daily reset hour is server time. Check your broker's server clock before assuming midnight matches your firm's daily cut-off. Inside the strategy tester the economic calendar returns no events, so the news pause can only be seen on a live or demo chart.
Free version
The core guard (daily loss and total drawdown with buffer, flatten and block) is published with full source code in the MQL5 Code Base: PropFirmGuard for MetaTrader 5
The Pro version adds the verified presets, the on-chart panel with pause button, the news pause, the Friday close, the inactivity heartbeat, push notifications and the journal file.
The guard protects an account; it does not make it profitable. Combine it with a strategy that has an edge.
