The Ultimate Trade Management Panel for MT5 & MT4
Pure UI — No BMP Dependencies — Zero DLL
MQL5/Experts/ folder inside the MetaTrader 5 data directory.MQL4/Experts/ folder inside the MetaTrader 4 data directory.The panel is divided into a header bar, a tab bar, and a status bar. The MT5 version has 7 tabs (Trade, Pos, Tools, News, Alerts, Stats, Config). The MT4 version has 6 tabs (the News tab is not available on MT4).
MT5: Seven tabs — Trade, Pos, Tools, News, Alerts, Stats, Config. Click to switch, or press 1–7.
MT4: Six tabs — Trade, Pos, Tools, Alerts, Stats, Config. Press 1–6.
The bottom bar shows live data at a glance:
| Element | Description |
|---|---|
| Symbol | Current chart symbol in amber |
| Sp: | Spread in points. Amber > 30pts Red > Max Spread |
| ML: | Margin Level %. Color-coded: red < 200%, amber < 500%, normal otherwise |
| P/L | Floating profit/loss across all positions |
| Countdown | Time remaining until current candle closes (M:SS) |
| P: | Number of open positions managed by this EA |
| Session | Active market session: TKY, LDN, NY (or overlap) |
| Time | Server clock time (HH:MM:SS) |
The main tab for setting up and executing trades.
Displays your Balance, Equity, P/L, and Free Margin in a compact two-column layout.
Four risk calculation modes are available as toggle buttons:
Risk a percentage of your account balance per trade.
Risk a percentage of current equity per trade.
Risk a fixed dollar amount per trade.
Use a fixed lot size regardless of SL distance.
Use the +/− buttons or type directly in the risk value field. Quick presets are available below (e.g., 0.5%, 1%, 2%).
Quick buttons to set the Risk:Reward ratio to 1R, 2R, or 3R.
Set your Stop Loss and Take Profit in pips, and the RR ratio. Each has +/− buttons for fine adjustment. The calculated Lot size, Risk $, and Reward $ are displayed live.
| Metric | Description |
|---|---|
| ATR | 14-period Average True Range in pips (current timeframe) |
| PipV | Pip value in $ for the calculated lot size |
| Marg | Estimated margin required. Turns red if it exceeds free margin. |
Toggle BE and Trail on/off. Set the trigger value and choose between Pips or % of TP units. When trailing is ON, a row of 8 trail-mode buttons appears for quick switching.
When RR Lock is active, moving the SL (via +/− buttons or dragging the chart line) automatically adjusts the TP and all partial close levels to maintain your R:R ratio. This keeps your entire trade structure proportional as you fine-tune your entry.
Use the − / + buttons or type directly into the R:R field. When you change the ratio, the TP line and all partial close lines reposition automatically to match the new ratio, keeping everything in sync.
Up to 4 partial-close levels (PC1–PC4) with adjustable percentages. Toggle PC on/off, or press Reset to restore defaults (25/50/75/100%). Partial close lines always adjust proportionally when the TP changes — whether from dragging, RR Lock, or ratio adjustments.
| Button | Function |
|---|---|
| Lines | Toggle draggable Entry/SL/TP/BE/PC lines on the chart |
| Order Type | Cycle: Market → Buy Limit → Sell Limit → Buy Stop → Sell Stop. When a pending type is selected, a drag handle appears on the entry line and the entry stays where you place it. |
| FLIP | Swap Buy/Sell direction while keeping SL/TP distances |
| VSL / Stealth SL | Virtual SL hidden from broker |
| VTP / Stealth TP | Virtual TP hidden from broker |
● READY TO TRADE — All checks pass. You can execute.
● BLOCKED: Spread 45 > 30 — One or more pre-trade checks have failed. The reason is shown.
Displayed directly above the BUY/SELL buttons. The spread turns red when it exceeds your configured max spread.
Large, color-coded execution buttons. Labels change based on order type (e.g., "BUY LIMIT"). When Confirm mode is on, the first click arms the button ("CONFIRM BUY"), the second click executes.
When modifying a pending order (loaded from the Positions tab or a chart envelope), the TRADE button changes to a blue MODIFY button. Adjust the entry, SL, and TP lines on the chart, then click MODIFY to apply the changes to the existing order without placing a new one.
One-click button to close all open positions managed by this EA.
Calculates lot size so that if your SL is hit, you lose X% of your account balance.
Same as above but uses current equity instead of balance, accounting for floating P/L.
Risk a fixed dollar amount per trade regardless of account size.
Use a specific lot size. Useful for scalping or when you want direct control.
When Lines is toggled ON, draggable horizontal lines appear on the chart:
| Line | Color | Purpose |
|---|---|---|
| Entry | Amber | The price where your order will be placed. For market orders, this follows the current price. |
| SL | Red | Stop Loss price. Drag to adjust; the panel recalculates lot size in real-time. |
| TP | Green | Take Profit price. When RR Lock is on, this moves automatically with SL. |
| BE | Blue | Breakeven trigger level (when BE is enabled). |
| PC1–PC4 | Lime shades | Partial close trigger levels. |
A shaded zone between SL and TP visually shows the trade's risk/reward area. A TRADE button appears on the entry line for one-click execution, and a FLIP button lets you reverse direction.
When you select a pending order type (Buy Limit, Sell Limit, Buy Stop, or Sell Stop), a drag handle appears next to the FLIP button on the entry line. This small square button (labelled with the order type and direction arrows) lets you drag the entry price to your desired level without the line snapping back to market price.
Click and drag anywhere inside the shaded SL/TP zone to move the entire trade block (entry, SL, TP, partial closes) together. This is particularly useful for limit and stop orders — position your whole trade setup at once without adjusting each line individually. For pending order types, the block drag preserves the order type and entry price correctly.
If your trade lines have become too spread apart (e.g., after dragging on a volatile chart), click the Reset button in the execution helpers row to snap all lines back to a manageable default distance from the current price. This resets the SL to 20 pips and the TP based on your current R:R ratio, bringing everything back into view.
Stealth mode hides your Stop Loss and/or Take Profit from the broker. Instead of placing a real SL/TP with the order, the EA monitors price locally and closes the position when the level is reached.
When trailing is enabled and the position moves into profit beyond the trail trigger, the SL is progressively moved to lock in gains. Choose from 8 modes:
| Mode | Code | Description |
|---|---|---|
| Fixed | Fix | Trail by a fixed number of pips behind the current price. |
| ATR | ATR | Trail by ATR value × multiplier. Adapts to volatility. |
| Moving Average | MA | Trail SL to the Moving Average price (e.g., 20 MA). |
| Candle | Cndl | Trail to the previous candle's high (sells) or low (buys). |
| Parabolic SAR | PSAR | Trail to the Parabolic SAR indicator value. |
| Fractal | Frac | Trail to the most recent fractal high/low. |
| RR-Based | RR | Move SL in increments as position reaches 1R, 2R, 3R of profit. |
| Profit % | P% | Lock a percentage of unrealized profit by adjusting SL. |
Toggle between OPEN (live positions) and HIST (trade history).
Click the filter button (shows All or the current symbol name) to toggle between viewing positions for all symbols or only the current chart symbol. This is especially useful when trading multiple pairs simultaneously — quickly focus on just the positions relevant to the chart you're looking at. The filter setting is persisted between sessions.
Close all open positions instantly.
Close only positions currently in profit.
Close only positions currently in loss.
Close-by opposing positions (hedge netting).
Each open position displays two rows of information:
| Column | Description |
|---|---|
| # | Last 5 digits of the ticket number |
| Sym | Symbol name |
| Type | BUY (teal) or SELL (red) |
| Lots | Volume |
| P/L | Profit/loss including swap & commission |
| Pips | Distance in pips from entry |
| M | Manage — load position onto chart lines |
| BE | Move SL to breakeven + offset |
| 1/2 | Close 50% of the position |
| CLOSE | Close the entire position |
A thin color bar beneath each position shows where the current price sits between SL and TP. Green when in profit territory, red when closer to SL.
Every open position draws a compact envelope directly on the chart at its entry price. The envelope shows the ticket, direction, lot size, and current P/L at a glance.
Listed below open positions with symbol, type, price, volume, a Mod button, and a Delete button for each.
Pending orders also draw envelopes on the chart at their entry price level, styled in blue (buy-side) or amber (sell-side) to distinguish them from filled positions.
At the bottom: total open P/L, position count, win rate, profit factor, average win, and average loss for currently open positions.
Switch to HIST to see closed trades over the last 7, 30, or 90 days with pagination.
Close all buy positions.
Close all sell positions.
Close all profitable positions.
Close all losing positions.
Delete all pending orders.
Reverse all open positions (close and reopen opposite).
Configure Distance (pips), Count, and Multiplier (lot scaling). Then click Grid Buy or Grid Sell to place a ladder of limit orders.
Automatically close all open positions at a specific server time. Ideal for end-of-day or pre-news flat strategies.
When the set time arrives, all positions are closed, a toast notification is shown, and a sound alert plays. The timer automatically disables after triggering. The time setting persists between sessions.
Displays upcoming economic events from the built-in MetaTrader 5 calendar. This feature uses the MT5 CalendarValueHistory API and is not available in the MT4 version (MetaTrader 4 does not provide a built-in economic calendar).
Shows day, time, remaining time, currency, event name, and previous/forecast/actual values. Actual values are color-coded vs. forecast.
Toggle On Chart to display news markers directly on the chart as vertical lines.
Switch between Local, Server, and GMT time display.
Click Add Alert to place an alert line at the current price. When price crosses the line, a notification fires. Up to 5 active alerts.
Schedule automated actions at specific times:
Tasks can be one-time or recurring (weekly).
Displays today's trade count vs. max, weekly count vs. max, and daily loss vs. limit.
A comprehensive performance analytics dashboard calculated from your trade history.
Profit/loss for trades closed today.
Profit/loss for the last 7 days.
Profit/loss for the last 30 days.
Total number of closed trades.
A visual progress bar showing your win percentage. Green if ≥ 50%, red if below.
| Metric | Description |
|---|---|
| Profit Factor | Gross profit / gross loss. Above 1.0 is profitable. |
| Expectancy | Average profit per trade. Positive means your edge is profitable. |
| Avg RR | Realized average risk:reward ratio. |
| Avg Win / Avg Loss | Average dollar amounts for winning and losing trades. |
| Max Drawdown | Largest peak-to-trough equity decline. |
| Best / Worst Trade | Largest single win and largest single loss. |
| Gross Profit | Total profit from all winning trades. |
Maximum consecutive wins and maximum consecutive losses.
A visual mini equity curve rendered directly in the panel using colored bars. Each bar represents a closed trade, plotted as cumulative P/L. Green bars indicate cumulative profit, red bars indicate cumulative loss. A zero line is shown when the curve crosses from profit to loss territory. Start and end values are labeled. This provides an at-a-glance view of your trading trajectory without leaving the panel.
Click the Export CSV button in the top-right corner of the Stats tab to export the last 90 days of trade history to a CSV file. The file is saved to the MT5 Files/ directory and includes:
Perfect for importing into Excel, Google Sheets, or journaling tools like Edgewonk and TraderVue.
Balance, Equity, Free Margin, and Margin Level % at the bottom of the tab.
Save all current panel settings to a file, or load them back. Settings persist across restarts automatically.
OCO (One-Cancels-Other) lets you place a breakout setup where you anticipate a move in either direction but don't know which way.
Use Cancel to remove the OCO pending orders at any time.
Place a ladder of limit or stop orders with configurable parameters:
| Parameter | Description |
|---|---|
| Dist | Distance between grid levels in pips. |
| Cnt | Number of orders in the grid. |
| Mul | Lot multiplier for each subsequent level (e.g., 1.5x martingale or 1.0 for flat). |
Click Grid Buy or Grid Sell to deploy. All orders use your current risk settings as the base lot.
Click CS on the header to open the Currency Strength Meter heatmap.
| Category | Instruments |
|---|---|
| Forex Majors | USD, EUR, GBP, JPY, AUD, CAD, CHF, NZD |
| Crypto | BTC, ETH, LTC, SOL, XRP (compared against USD) |
| Metals | XAU (Gold), XAG (Silver) (compared against USD) |
Exotic currencies are automatically filtered out. Only major currencies and your broker's available crypto/metal pairs are displayed, keeping the meter clean and relevant.
The meter automatically discovers crypto and metal symbols regardless of your broker's naming convention. Whether your broker lists Bitcoin as BTCUSD, #BTCUSD, BTCUSD.m, or BITCOIN, the meter will find and include it. Symbols are scanned from Market Watch first, then all broker symbols, with a final probe of common name variations.
The symbol universe is cached after the first scan, so switching pairs or timeframes triggers an instant RSI recalculation without a full rebuild. Scores update smoothly without resetting to defaults.
Hotkeys are enabled via the InpHotkeys input. Press keys when the chart is focused:
| Key | Action |
|---|---|
| 1 – 7 | Switch to tab 1–7 (Trade, Pos, Tools, News, Alerts, Stats, Config) |
| B | Market Buy |
| S | Market Sell |
| C | Close All Positions |
| E | Breakeven All Positions |
| L | Toggle Trade Lines on chart |
| F | Flip trade direction (Buy ↔ Sell) |
| D | Delete all pending orders |
| R | Reverse all positions |
| H | Open hedge position |
| Shift+B | Place Buy Limit order |
| Shift+S | Place Sell Limit order |
| Shift+M | Minimize / restore panel |
Multiple layers of protection prevent accidental losses:
Blocks trade execution if required margin exceeds free margin.
Blocks trades when current spread exceeds your max spread setting.
Blocks trading X minutes before and after high-impact news events.
Locks trading and optionally closes all positions when daily drawdown exceeds your limit.
Locks trading when daily profit target is reached, preventing over-trading.
Two-click confirmation prevents accidental trade execution.
Limits trades per day, per week, and maximum daily loss.
Two-click panic buttons to instantly flatten everything.
| Type | Input | Description |
|---|---|---|
| Push | InpPushNotify | Send push notifications to the MetaTrader mobile app. |
| InpEmailNotify | Send email alerts on trade events. | |
| Screenshot | InpScreenshot | Auto-capture a chart screenshot on trade execution. |
| Sound | InpSoundAlerts | Play sound alerts for trades, breakeven, partial closes, and price alerts. |
| Toast | Built-in | On-screen popup messages that appear above the status bar for 2.5 seconds. |
Three profile slots are available on the Trade tab:
Each profile stores: risk mode, risk %, lot size, SL/TP, RR ratio, virtual SL/TP, breakeven, trailing, and partial close settings.
All panel settings are automatically saved to an INI file when you close the chart or remove the EA. They are restored when you re-attach the EA. You can also manually save/load via the Settings tab.
Per-position state (breakeven status, trailing type, partial close levels) is persisted via MetaTrader's Global Variables, surviving EA restarts and terminal restarts.
| Parameter | Default | Description |
|---|---|---|
| InpPanelX | 20 | Initial panel X position |
| InpPanelY | 40 | Initial panel Y position |
| InpMagic | 123456 | Magic number for order identification |
| Parameter | Default | Description |
|---|---|---|
| InpRiskPercent | 1.0 | Default risk percentage |
| InpDefaultLots | 0.01 | Default lot size |
| InpMaxLots | 10.0 | Maximum allowed lot size |
| Parameter | Default | Description |
|---|---|---|
| InpAutoBreakeven | false | Enable auto breakeven |
| InpBETrigger | 20.0 | Breakeven trigger distance |
| InpBEOffset | 2.0 | Breakeven offset (pips above entry) |
| InpAutoTrailing | false | Enable auto trailing stop |
| InpTrailStart | 20.0 | Trail activation distance |
| InpTrailStep | 5.0 | Trailing step size |
| Parameter | Default | Description |
|---|---|---|
| InpGridDistance | 20 | Distance between grid levels (pips) |
| InpGridOrders | 5 | Number of grid orders |
| InpGridMultiplier | 1.0 | Lot multiplier per level |
| Parameter | Default | Description |
|---|---|---|
| InpHotkeys | true | Enable keyboard shortcuts |
| InpHK_Buy | B | Buy hotkey |
| InpHK_Sell | S | Sell hotkey |
| InpHK_CloseAll | C | Close All hotkey |
| InpHK_BE | E | Breakeven hotkey |
| Parameter | Default | Description |
|---|---|---|
| InpShowSessions | true | Show session boxes on chart |
| InpLondonStart/End | 7/16 | London session hours (GMT) |
| InpNewYorkStart/End | 12/21 | New York session hours (GMT) |
| InpTokyoStart/End | 0/9 | Tokyo session hours (GMT) |
| Parameter | Default | Description |
|---|---|---|
| InpPushNotify | false | Send push notifications |
| InpEmailNotify | false | Send email notifications |
| InpScreenshot | false | Screenshot on trade |
| InpSoundAlerts | true | Play sound alerts |
| Parameter | Default | Description |
|---|---|---|
| InpUseMaxDD | false | Enable daily drawdown protection |
| InpMaxDD | 5.0 | Maximum daily drawdown (%) |
| InpUseProfitTarget | false | Enable profit target |
| InpProfitTarget | 3.0 | Daily profit target (%) |
G-Labs Trade Manager is available for both MetaTrader 4 and MetaTrader 5. The two versions share the same design, layout, and feature set wherever the platform allows. The differences below are caused by API and architectural differences between MetaTrader 4 and MetaTrader 5.
| Feature | MT5 | MT4 |
|---|---|---|
| Trade Tab — Risk modes, SL/TP, RR Lock, partial closes, breakeven, trailing, stealth SL/TP | ✓ Full | ✓ Full |
| Chart Trade Lines — Drag handle, block drag, reset, shaded zone | ✓ Full | ✓ Full |
| Positions Tab — Open trades, quick actions, chart envelopes, pending order modify | ✓ Full | ✓ Full |
| Tools Tab — Bulk close, scale out, basket, grid, close at time | ✓ Full | ✓ Full |
| News Calendar Tab — Economic calendar, filters, chart markers, news-based trade blocking | ✓ Full | ✗ Not available |
| Alerts & Scheduler Tab — Price alerts, task scheduler, over-trading monitor | ✓ Full | ✓ Full |
| Stats Dashboard — Performance metrics, equity curve, CSV export | ✓ Full | ✓ Full |
| Settings Tab — DD protection, profit target, spread/slippage filters, save/load | ✓ Full | ✓ Full |
| Currency Strength Meter — Forex, crypto, metals, proportional bars | ✓ Full | ✓ Full |
| OCO Breakout — Hedge box, paired orders | ✓ Full | ✓ Full |
| Hotkeys | ✓ Full | ✓ Full |
| Notifications — Push, email, sound, screenshot, toast | ✓ Full | ✓ Full |
| Profiles & Persistence | ✓ Full | ✓ Full |
| MT5 (7 tabs) | MT4 (6 tabs) |
|---|---|
| Trade | Trade |
| Pos | Pos |
| Tools | Tools |
| News | — |
| Alerts | Alerts |
| Stats | Stats |
| Config | Config |
The MT4 version has 6 tabs. The News tab is removed because MetaTrader 4 does not provide a built-in economic calendar API.
MetaTrader 5 includes a native CalendarValueHistory function that provides real-time economic event data directly from MetaQuotes servers. MetaTrader 4 has no equivalent API. Rather than displaying an empty or non-functional tab, the MT4 build removes the News tab entirely and gives you a clean 6-tab layout.
| Area | MT5 | MT4 |
|---|---|---|
| Order API | Uses CTrade class, PositionSelect, OrderSend with request struct | Uses classic OrderSend(), OrderSelect(), OrderModify() |
| Position model | Netting or hedging (broker-dependent) | Always hedging (multiple positions per symbol) |
| Ticket type | ulong (64-bit) | int (32-bit) |
| Symbol info | SymbolInfoDouble(), SymbolInfoString() | MarketInfo() |
| Input groups | input group "..." supported | No input groups (flat parameter list) |
| News-based trade block | Blocks trading before/after high-impact events | Not active (no calendar data source) |
| Version | File | Install Location |
|---|---|---|
| MT5 | G-Labs Trade Manager v3.0.mq5 | MQL5/Experts/ |
| MT4 | G-Labs Trade Manager v4.0.mq4 | MQL4/Experts/ |