0. Introduction & System Architecture
Understanding Nexus Copier before you start
0.1 What is Nexus Copier?
Nexus Copier is a professional automated trading system that copies signals from Telegram channels directly into MetaTrader 4 and MetaTrader 5, opening, managing, and closing trades without any manual intervention.
It is designed for:
- Signal followers — subscribe to Telegram signal channels and let the system trade automatically.
- Prop firm traders — built-in Stealth Mode hides EA patterns from monitoring systems.
- Multi-account managers — route signals to multiple MT4/MT5 accounts simultaneously with per-account risk settings.
0.2 The 3 Components
EA (Expert Advisor)
Compatible with MetaTrader 4 and MetaTrader 5. Polls Nexus Server for signals and executes trades — opens orders, manages SL/TP, applies grid logic, trailing stops, break even, and protections.
NexusServer
A Windows background service. Connects to Telegram via the official API using your personal account, reads channel messages, parses signal text, and serves the result to the EA via a local HTTP endpoint.
Configurator
A Windows desktop application. Provides a visual interface
to configure all 226+ parameters across tabs. Writes the final config.json
file consumed by NexusServer and the EA.
0.3 System Flow Diagram
┌─────────────────────┐ ┌──────────────────────┐ ┌─────────────────────┐
│ Telegram Channel │────▶│ Nexus Server │────▶│ EA in MT4 / MT5 │
│ │ │ │ │ │
│ "BUY XAUUSD │ │ Parses message: │ │ Opens trades: │
│ Entry: 2650 │ │ - Symbol: XAUUSD │ │ - Grid orders │
│ SL: 2630 │ │ - Direction: BUY │ │ - Applies SL/TP │
│ TP: 2700" │ │ - Entry: 2650 │ │ - Manages risk │
│ │ │ - SL: 2630 / TP: 2700 │ │ - Trailing stop │
└─────────────────────┘ └──────────────────────┘ └─────────────────────┘
Telegram API config.json EA Parameters
(personal account) (your settings) (MT4/MT5 input values)
0.4 System Requirements
1. Quick Start — Installation & First Setup
From zero to your first automated trade
1.1 Installing the EA in MetaTrader 4 / MetaTrader 5
Open MetaTrader
Go to File → Open Data Folder to open the MT4/MT5 data directory.
Copy EA files
MT5: copy NexusCopier.ex5 into
MQL5/Experts/. MT4: copy NexusCopier.ex4 into
MQL4/Experts/.
Allow WebRequests
In MT5: Tools → Options → Expert Advisors → check "Allow WebRequests for listed URL" → add all three URLs below:
http://127.0.0.1:5000https://script.google.comhttps://nexuscopier.com/api/version.phpAdd each URL on a separate line in the MT5 WebRequests field.
Attach the EA to a chart
Drag NexusCopier from the Navigator onto any
chart. Enable "Allow Algo Trading" in the EA dialog.
Enter your License Key
In the EA inputs, find License Key and paste your key. Click OK.
1.1.1 The ea_settings.ini Configuration File
Nexus Copier supports an optional configuration file called ea_settings.ini that allows you to define all EA parameters externally, outside of MetaTrader's input dialog.
This file must be placed in the Files folder of your MetaTrader data directory:
MT5:
…\MQL5\Files\ea_settings.iniMT4:
…\MQL4\Files\ea_settings.iniTo open the data directory go to File → Open Data Folder in MetaTrader.
How it works: When ea_settings.ini is present in the Files folder, the EA reads its values on every tick and applies them as the active configuration — completely ignoring the parameters set in MetaTrader's input dialog. Modifying values directly in MetaTrader will have no effect as long as this file exists.
If you have previous experience working with Expert Advisors, you may find it more intuitive and straightforward to configure Nexus Copier directly through MetaTrader's input parameters — the standard way you are already familiar with.
The
ea_settings.ini file is primarily intended for scenarios where you want to manage settings externally (e.g. automated deployments or shared configurations across multiple terminals). If this file is present in the Files folder, changes made inside MetaTrader's input dialog will be silently overridden.If you are not sure which method to use, start with the standard MT4/MT5 input parameters and ignore the
.ini file entirely — simply do not create it.
To help you get started with the initial setup, you can download two tutorial videos covering the complete EA installation and configuration process:
https://nexuscopier.com/downloads/EA_Installation.zip
Download the ZIP to access both video guides.
1.2 Installing and Launching Nexus Server
Extract the ZIP
Extract the package to a permanent folder (e.g.
C:\NexusServer\). Do not run from the Downloads folder.
Run Nexus Server.exe
Right-click → Run as Administrator. The server starts on port 5000 by default.
Verify it's running
You should see the server main window with a green status.
1.3 Installing Nexus Configurator
Run Nexus Configurator.exe
Double-click Nexus Configurator.exe. No
installation required — it runs directly.
Open the Configurator
All system settings are organized in tabs. Start with the Telegram tab to enter your credentials.
Verify config.json path
Nexus Configurator must point to the same
config.json used by Nexus Server. Both must be on the same machine.
1.4 Connecting Telegram — Getting Your API ID & Hash
NexusServer connects to Telegram using the official Telegram API through your personal account — not a bot. This means it reads channels just as you would in the Telegram app, with no limitations on private channels or groups.
Go to my.telegram.org
Open https://my.telegram.org in your browser and log in with your phone number.
Go to "API development tools"
Click on API development tools in the menu.
Create a new application
Fill in: App title (any name), Short name (any), Platform = Desktop. Click "Create application".
Copy your API ID and API Hash
You will see your App api_id (a number, e.g. 12345678) and App api_hash (a long alphanumeric string). Copy both.
Enter them in the Configurator
Open Configurator → Telegram tab. Paste API ID and API Hash in the corresponding fields.
Enter your phone number and verify
Enter your phone number in international format (e.g. +34612345678). Telegram will send an SMS or in-app code. Enter the code in the Configurator.
1.5 Adding Telegram Channels
Once connected, you can add channels whose messages will be parsed as trading signals.
Find the channel username or numeric ID
For public channels you can use the username (e.g.
@goldtraders). For private channels or groups you need the numeric ID (e.g.
-1001234567890). Use the included tool
TelegramIDFinder.exe: launch it, log in with your Telegram account,
browse to the channel and click it to reveal its ID.
Add in Nexus Configurator → Telegram tab
Click "Add Channel", paste the username or numeric ID, and confirm.
Configure per-channel options
Set risk overrides, enable/disable Pre-Signals, or configure Force Symbol for this specific channel.
1.6 Activating Your License
Your license key is tied to your MT5 account number. It must be entered in two places:
- In the EA inputs: Find the
License Keyfield in the EA parameters (License & Server tab in the Configurator). - In the Configurator: License tab → paste the same key.
1.7 First Run Checklist
Before expecting your first trade, verify all of the following:
2. EA Parameters
All 226+ parameters organized by Configurator tab.
Parameter names in code format match the exact input names in MetaTrader 5.
Tab: Risk
Core risk management — how much to risk per trade and how orders are executed
Risk Mode
Determines how lot sizes are calculated for each trade. Three modes are available:
- MANUAL — Uses the fixed lot size defined in the Lots tab. Completely independent of account balance.
- PERCENTAGE — Automatically calculates the lot size to risk a percentage of your account balance on each trade (requires a valid SL in the signal).
- MONEY — Calculates the lot size to risk a fixed amount in your account currency (requires a valid SL in the signal).
Execution Mode
Controls whether the EA opens a single order or a grid of multiple orders per signal.
- GRID — Opens multiple orders (defined by Total Orders) spread across price levels. Ideal for averaging strategies.
- SINGLE_ORDER — Opens exactly one order per signal at the signal's entry price. Simple and clean execution.
Risk Percentage
The percentage of account balance to risk per trade. Only active when Risk Mode = PERCENTAGE.
Risk in Currency
Fixed amount in your account currency to risk per trade. Only active when Risk Mode = MONEY.
Risk Tolerance Min / Max
Acceptable lot size range when auto-calculating risk. If the ideal calculated lot falls within ±5% of a broker's allowed lot step, the EA accepts the nearest valid lot. Prevents rejected orders due to lot precision mismatches.
Tab: Orders
Order behavior, duplicates, opposites, comments, and grid control
Magic Number
A unique numeric identifier attached to every order opened by this EA instance. Allows the EA to identify and manage only its own orders even when other EAs or manual trades exist on the same account.
Max Simultaneous Trades
Maximum number of open trades allowed at any time. When the limit is reached, new signals are ignored until existing trades are closed. Set to 0 to disable this limit.
Allow Duplicate Signals
If false (recommended), the EA ignores a new signal if there is already an open trade on the same symbol in the same direction from the same channel. Prevents accidentally doubling a position if the same signal is posted twice.
Allow Duplicates from Different Channel
More granular control: allows the same signal (same symbol, same direction) from a different channel even when a duplicate already exists. Useful when following multiple independent signal providers on the same instruments.
Duplicate Signal → Update SL
When a second signal arrives for the same symbol and direction as an already-open trade, instead of opening a new position the EA updates the Stop Loss of all existing positions matching that symbol and direction. The incoming signal must include a SL value for the update to take effect.
Allow Opposite Signals
If false, a SELL signal is ignored when a BUY trade is already open on the same symbol (and vice versa). Enable only if you intentionally want to hedge (hold both BUY and SELL simultaneously).
Allow Opposite Same Channel
More granular: allows opposite signals only when they come from the same channel that opened the current position. Useful for channels that occasionally reverse their signals intentionally.
Close on Opposite — Same Channel
When enabled, if an opposite signal arrives from the same channel that opened the current trade, the EA automatically closes the existing position before (or instead of) opening a new one in the opposite direction.
Close on Opposite — Different Channel
Same behavior as above but triggered by an opposite signal from a different channel than the one that opened the trade.
Custom Comment
Text appended to the comment field of every order opened by this EA. If left empty, the EA uses the channel name as the comment. Useful for labeling trades for later analysis in the account history.
Symbol Prefix / Symbol Suffix
Some brokers add a prefix or suffix to standard symbol names. These fields automatically transform the signal's symbol name to match your broker's format.
m. If broker uses "fxEURUSD", set
Prefix = fx.Delay Before Execution (ms)
Milliseconds to wait after receiving a signal before placing the order. Can be used to avoid entering at the exact signal price spike, or to simulate manual entry timing.
Total Orders (Grid)
Total number of grid orders to open per signal when Execution Mode = GRID. Includes both market orders (opened immediately) and pending orders (placed at defined price levels).
Grid Distance (pips)
Base pip distance between consecutive grid orders. This is the FIXED mode distance. For PROGRESSIVE or VARIABLE mode, see the Grid Distance tab.
Max Market Orders
Maximum number of orders from the grid that can be executed as market orders (at current price) rather than placed as pending orders. The remaining orders in the grid are placed as pending buy/sell limit orders.
Market Distance Threshold (pips)
If the signal's specified entry price is within this many pips of the current market price, the order is executed as a market order instead of a pending limit order. Handles cases where the signal price is essentially "at market".
Min Distance Between Market Orders (pips)
Minimum pip gap required between consecutive market orders. Prevents placing two market orders too close together on fast-moving markets.
Market Execution Margin (pips)
Extra pip buffer added when converting a pending order into a market order. Accounts for slippage and spread when price reaches the pending order level.
Order Expiration (minutes)
How long pending orders remain active before the EA automatically cancels them. Prevents stale pending orders from triggering at unfavorable prices hours after the signal.
Slippage (pips)
Maximum accepted slippage in pips for market order execution. If the broker's execution price deviates more than this from the requested price, the order is rejected. The high default (200) is intentional — it ensures orders always fill even during volatility.
Tolerance Margin (pips)
Extra pip tolerance buffer applied when checking grid spacing conditions. Useful on brokers with variable spreads where exact pip distances may fluctuate slightly.
Tab: Lots
Lot size management for grid orders
Lot Mode
Determines how lot sizes are assigned to each position in the grid.
- FIXED — Every grid order uses the same lot size (defined by Fixed Lot).
- VARIABLE — Each grid position (1 through 20) has its own individually configured lot size.
Fixed Lot
The lot size used for all grid orders when Lot Mode = FIXED and Risk Mode = MANUAL. When Risk Mode is PERCENTAGE or MONEY, this value is overridden by the auto-calculated lot.
Variable Lots (Lot 1 – Lot 20)
Individual lot sizes for each grid position when Lot Mode = VARIABLE. Lot 1 applies to the first order (closest to signal entry), Lot 2 to the second, and so on. Slots set to 0.0 are ignored.
Tab: Grid Distance
Distance between grid orders — fixed, progressive, variable, zone fill, or ATR-based
Grid Distance Mode
Controls how the distance between grid orders is determined:
- FIXED — Same distance between every consecutive grid order (uses Grid Distance pips from Orders tab).
- PROGRESSIVE — Each distance is the previous one multiplied by the Grid Distance Multiplier (widening grid).
- VARIABLE — Each gap between positions is individually configured (Dist 1 through Dist 20).
- ZONE FILL — Orders are distributed uniformly across the full price range of the signal (price_low to price_high). The step is calculated automatically as range ÷ (N orders − 1), so the first order always lands at one end of the zone and the last at the opposite end. Requires the signal to contain a price range; falls back to FIXED mode if the signal has only a single entry price.
Grid Distance Multiplier
Only used in PROGRESSIVE mode. Each distance = previous distance × this multiplier. Creates an expanding grid that gives more room between deeper positions.
Variable Distances (Dist 1 – Dist 20)
Custom distance in pips for each individual grid level when Grid Distance Mode = VARIABLE. Dist 1 is the gap between order 1 and order 2, Dist 2 is the gap between order 2 and order 3, etc.
Use ATR Grid ⭐ New v16.9
Enables dynamic grid distance calculation based on the Average True Range (ATR) indicator. Instead of fixed pip distances, the grid automatically adapts to current market volatility — wider distances in volatile markets, narrower distances in calm markets.
This prevents the common grid problem where fixed distances cause too-dense or too-sparse grids depending on market conditions.
ATR Period ⭐ New v16.9
Number of candles used to calculate the ATR value. A higher period produces smoother, more stable distances. A lower period reacts faster to recent volatility changes.
ATR Timeframe ⭐ New v16.9
The chart timeframe used to calculate ATR. The ATR on higher timeframes gives larger, more stable distances. Lower timeframes give tighter, more reactive distances.
ATR Multiplier ⭐ New v16.9
Scales the raw ATR value to produce the final grid distance in pips. Grid Distance = ATR(period) × multiplier.
Tab: Partial Close
Define how much of the position to close at each Take Profit level
TP Close Mode
Determines how partial closes are calculated when each TP level is hit:
- BY_PERCENTAGE — Close a percentage of the total position at each TP level (e.g. 25% at TP1, 50% at TP2, etc.).
- BY_POSITIONS — Close a specific number of grid orders at each TP level (e.g. close 1 order at TP1, close 2 orders at TP2).
Percent Close at TP1 – TP10
The percentage of the position to close when each Take Profit level is reached. Active when TP Close Mode = BY_PERCENTAGE.
Positions Close at TP1 – TP10
Number of individual grid orders to close when each TP level is hit. Active when TP Close Mode = BY_POSITIONS.
Cancel Pending Orders at TP
Which TP level triggers automatic cancellation of all remaining pending grid orders. Prevents unfilled pending orders from being triggered later when you no longer want them.
Auto Adaptive TP Close
When enabled, automatically distributes the close percentages evenly across the active TP levels from the received signal. Overrides the manual Percent Close at TP1–TP10 values.
Use Server TP Profiles
When enabled, the EA overrides its local TP close settings with profiles received from the NexusServer. Allows centralized TP management — update the server profile once and all EAs using this setting update automatically without needing to change MT5 inputs.
Tab: Smart Partial Close
Intelligent position scaling based on time, profit, or pip movement
Use Smart Partial Close
Master switch for the Smart Partial Close system. When enabled, the EA automatically scales out of positions based on the configured trigger (time, profit level, or pip movement) — independent of the TP levels sent by the signal.
Smart Close Mode
- BY_TIME — Close a percentage of the position after X hours have passed since entry.
- BY_PROFIT — Close a percentage when floating profit reaches a target amount in account currency.
- BY_PIPS — Close a percentage when the position is X pips in profit.
- PROGRESSIVE — Gradually increases the close percentage as profit grows, using a step-based progression.
Smart Close Time (hours) & Time Percent
Used in BY_TIME mode. After X hours since trade entry, close the defined percentage of the position.
Profit Step & Profit Percent
Used in BY_PROFIT mode. Each time floating profit increases by the Profit Step amount (in account currency), close the defined percentage.
Pips Step & Pips Percent
Used in BY_PIPS mode. Each time the position moves X pips further in profit, close the defined percentage.
Progressive Start %, Progressive Step %, Progressive Trigger (pips)
Used in PROGRESSIVE mode. The first close happens at the trigger pip level (30 pips) closing Start% (20%). Each subsequent trigger adds Step% (10%) more to the close amount, progressively securing more profit as the trade extends.
Tab: Break Even
Automatically move Stop Loss to entry price when conditions are met
Use Break Even
Master switch for Break Even. When triggered, the EA moves the Stop Loss of all open positions in the cycle to the average entry price (±buffer), eliminating the risk of a loss on a previously profitable trade.
BE Trigger
- BY_PROFIT — Moves SL to BE when the total floating profit of all trades in the cycle reaches the defined amount.
- BY_TP — Moves SL to BE when a specific TP level (defined by TP Target for BE) is hit.
Profit for BE
Minimum floating profit in account currency required to trigger Break Even. Only used when BE Trigger = BY_PROFIT.
TP Target for BE
Which TP level triggers the Break Even move. Only used when BE Trigger = BY_TP.
Price to Add on BE (pips)
A small positive buffer (in pips) added on top of the average entry price when placing the BE stop. Ensures the stop is slightly in profit rather than exactly at entry (which could result in a tiny loss after spread).
Tab: Trailing Stop
Dynamic SL that follows price as the trade moves into profit
Use Trailing Stop
Activates the trailing stop system. Once the trigger condition is met, the Stop Loss follows the price at a defined distance. If price reverses by more than the trailing distance, the SL is hit and the trade closes with secured profit.
TS Trigger
- TS_BY_PIPS — Trailing starts when the position is X pips in profit (Trailing Trigger Pips).
- TS_BY_TP — Trailing starts when a specific TP level is hit (TP Target for TS).
Trailing Trigger Pips / TP Target for TS
The threshold that activates the trailing stop. For TS_BY_PIPS: number of profit pips required. For TS_BY_TP: which TP level activates it.
Trailing Stop Pips
Distance in pips maintained between the current price and the trailing SL. If price moves 16 pips favorably, SL moves to 1 pip behind (16-15=1). If price then reverses 15 pips, the SL is hit.
Trailing Step Pips
Minimum price movement required before the EA updates the trailing SL position. Prevents excessive SL modifications on every tick.
Tab: Protection
Account-level drawdown and profit target protection
Use Drawdown Protection
When enabled, the EA monitors the account's daily loss. If the drawdown reaches the configured limit, all open trades are immediately closed and the EA stops trading for the remainder of the day.
DD Mode
- MODE_PERCENT — Drawdown limit expressed as a percentage of account balance (e.g. 5%).
- MODE_MONEY — Drawdown limit expressed as a fixed amount in account currency (e.g. $500).
Max Drawdown % / Max Drawdown Money
The drawdown threshold values. Only the one matching DD Mode is active. When this level is reached, the EA triggers the protective closure.
Use Profit Target
When the daily profit reaches the target, the EA closes all positions and stops trading. Locks in the day's profits and prevents giving them back.
Profit Target % / Profit Target Money
Daily profit target threshold. When reached, the EA closes everything and stops for the day.
Tab: Basket Closure
Close all trades together when combined profit or loss target is reached
Use Basket Closure
When enabled, the EA monitors the combined floating P&L of all open trades on a specific symbol. When the combined profit OR loss reaches the configured targets, ALL trades on that symbol are closed simultaneously — regardless of individual trade status.
Basket Profit Target
Combined profit in account currency that triggers basket close. Set to 0 to disable the profit target (only loss limit active).
Basket Loss Limit
Combined loss limit (negative value) that triggers emergency basket close. When the combined loss reaches this amount, all trades on the symbol are closed immediately to prevent further losses.
Tab: Channel Overrides
Apply different risk settings per Telegram channel (up to 5 channels)
Channel 1–5: Name
The exact name or ID of the Telegram channel to apply this override to. Must match exactly (case-sensitive) the channel identifier as it appears in your Configurator's channel list.
Channel 1–5: Risk Mode
Risk Mode to apply for this specific channel: MANUAL, PERCENTAGE, or MONEY. Overrides the global Risk Mode setting.
Channel 1–5: Risk % / Risk Money
Risk percentage or fixed currency amount for signals from this channel. Only the value matching the channel's Risk Mode is used.
Channel 1–5: Execution Mode
GRID or SINGLE_ORDER execution for this channel's signals, overriding the global Execution Mode.
Channel 1–5: Grid Orders
Number of grid orders for this channel's signals, overriding the global Total Orders setting.
Tab: Symbol Filter
Whitelist or blacklist specific trading symbols
Use Symbol Filter
Enables symbol-based filtering. When active, only signals matching the filter rules are executed. All others are silently ignored.
Filter Mode
- WHITELIST — Only trade the symbols listed in Allowed Symbols. All other symbols are blocked.
- BLACKLIST — Block only the symbols listed in Blocked Symbols. All other symbols are allowed.
Allowed Symbols
Comma-separated list of symbols to allow (WHITELIST mode). Use exact broker symbol names.
Blocked Symbols
Comma-separated list of symbols to block (BLACKLIST mode). Everything else is allowed.
Tab: Symbol Mapping
Map signal symbol names to your broker's symbol names, and handle signals without a symbol
Symbol Mapping (Global Profile)
Maps symbol names from the signal text to the actual symbol names in your broker's MT5. The Global profile applies to all accounts unless overridden by an account-specific profile.
GOLD → XAUUSD
SILVER → XAGUSD
OIL → USOIL
US30 → US30.cash
NAS100 → NASDAQm
Account-Specific Mapping
Override the global mapping for a specific account number. Useful when you have multiple broker accounts where the same signal symbol maps to different broker symbol names per account.
Force Symbol If Missing ⭐ New v16.9
When enabled, if a signal arrives without a recognizable trading symbol (e.g. "BUY NOW", "Enter here", "Scalping opportunity"), the EA automatically assigns the symbol defined in Symbol to Force and proceeds to open the trade.
This is critical for Telegram channels that dedicate themselves to a single instrument and never mention it in their messages — they assume all subscribers already know what they trade.
Symbol to Force ⭐ New v16.9
The symbol name automatically applied to signals without a detectable symbol. Must match exactly the symbol name in your broker's MT5 symbol list (including any prefix/suffix your broker uses).
Gold channel: XAUUSD (or XAUUSDm, GOLD depending on broker)
Euro channel: EURUSD
Oil channel: USOIL or XTIUSD
Tab: Pre-Signals
Enter trades early based on alert messages before the full signal arrives
Some Telegram channels send a preliminary alert message before the actual trade signal. For example: "⚠️ Preparing BUY XAUUSD — signal coming soon". Pre-Signals allows the EA to open initial positions when this alert is detected, then manage those positions when the full signal (with SL/TP) arrives. This allows early entry before other subscribers see the complete signal.
Pre-Signal Enabled
Master switch for the Pre-Signal system. When enabled, the EA monitors incoming messages for patterns matching configured phrase templates and opens preliminary positions when a match is found.
Pre-Signal Trades
Number of market orders to open when a pre-signal is detected. These are opened immediately at current market price.
Pre-Signal Lot Size
Specific lot size for pre-signal orders. Set to 0.0 to use the global lot size defined in the Lots tab.
Pre-Signal SL Pips / Take Profit for Pre-Signals (Pips)
Stop Loss and Take Profit in pips applied exclusively to pre-signal orders. These values are independent of the main signal's TPs and are never overridden by Use Manual TPs — pre-signals always use their own TP defined here. The SL can be replaced when the full signal arrives if Link Pre-Signal SL is enabled.
Link Pre-Signal BE
When the full signal arrives, automatically move the pre-signal orders to Break Even. This secures any profit made between the pre-signal entry and the full signal's arrival.
Pre-Signal BE Pips
Buffer in pips added to the break even price when linking BE. A positive value places the SL slightly above entry (locking in a small profit). Used with Link Pre-Signal BE.
Close Pre-Signal at TP
Numeric bridge parameter (0–10) that closes all open
pre-signal orders when the main cycle reaches the specified TP level. Set to 0
to disable — pre-signals will only close at their own TP or SL. Set to 2 to
close all pre-signals the moment the main cycle hits TP2.
Example (EURUSD BUY): Pre-signal TP = 80 pips. Manual TPs: TP1=50, TP2=100, TP3=150 pips. Close Pre-Signal at TP = 2.
→ TP1 hit at +50 pips: pre-signals remain open (own TP not reached, bridge level not reached).
→ TP2 hit at +100 pips: EA force-closes all pre-signals immediately, even though their own TP was 80 pips (already past). Main cycle continues to TP3 normally.
Link Pre-Signal SL
When the full signal arrives, replace the pre-signal's temporary SL with the main signal's actual Stop Loss level. Syncs the pre-signal risk to the provider's intended risk level.
Pre-Signal Grid Enabled / Grid Operations / Market Orders / Grid Distance
When Pre-Signal Grid is enabled, the pre-signal entry opens a mini grid of orders instead of simple market orders. Configuration follows the same principles as the main grid:
- Grid Operations — Total orders in the pre-signal grid (default: 5).
- Market Orders — How many execute at market (default: 1).
- Grid Distance Pips — Spacing between pre-signal grid orders (default: 2.0).
Pre-Signal Close Pending Pips
If price moves X pips away from the pre-signal entry without the full signal arriving, cancel all remaining pending pre-signal orders. Set to 0 to disable this automatic cancellation.
Custom Distance per Order (Pre-Signal Grid)
When enabled, each pre-signal grid order uses its own individual entry distance (in pips) instead of the uniform Grid Distance Pips value. You can define up to 10 independent distances — one per grid slot. Any slot left at 0 falls back to the fixed grid distance.
- Use Custom Distance per Order — Master toggle. Must be enabled to activate per-order distances.
- Order 1–10 (pips) — Entry distance in pips for each grid slot. Slot 1 is the closest to the entry price.
Custom Lot per Order (Pre-Signal Grid)
When enabled, each pre-signal grid order uses its own individual lot size instead of the global risk management calculation. You can assign up to 10 independent lot sizes — one per grid slot. Any slot left at 0 falls back to the risk-based lot calculation.
- Use Custom Lot per Order — Master toggle. Must be enabled to activate per-order lots.
- Order 1–10 (lots) — Lot size for each grid slot. Lot values are normalized to your broker's minimum/maximum step.
Tab: Reverse Trading
Invert signals — BUY becomes SELL and vice versa
Enable Reverse
When enabled, all signal directions are inverted: BUY signals open SELL trades and SELL signals open BUY trades. Useful for testing contrarian strategies or when you know a channel systematically posts inverted signals.
Reverse Mode
- FULL — Reverse ALL signals from ALL channels.
- SELECTIVE — Reverse only signals matching the specified channels or symbols (configured below).
Swap SL/TP ⭐ New v16.9
When Reverse is active, also swaps the Stop Loss and Take Profit levels. When you reverse a BUY to SELL, the original SL becomes the TP and the original TP becomes the SL — maintaining the same reward-to-risk ratio in the opposite direction.
With Reverse + SwapSLTP: Opens SELL EURUSD, Entry=1.0900, SL=1.1000 (100 pips), TP=1.0850 (50 pips).
Without SwapSLTP: Opens SELL with original SL/TP levels that now have swapped logical meaning.
Reverse Channels
Channel names to apply Reverse to in SELECTIVE mode. Enter multiple channels separated by commas.
Reverse Symbols
Symbol names to apply Reverse to in SELECTIVE mode. Signals for these symbols will be inverted regardless of which channel they come from.
Tab: Prop Firm (Stealth Mode)
Hide EA trading patterns from prop firm monitoring systems
Prop Firm Mode
Master switch for all Stealth Mode features. When enabled, all sub-settings below are active. Disabling this single switch turns off all stealth features at once.
Remove Channel Name from Comment
By default, the EA adds the Telegram channel name to the order comment field. Enable this to remove that identifier, preventing prop firm auditors from seeing which signal channel drives the trades.
Delay Min (seconds) / Delay Max (seconds)
Instead of executing orders instantly when a signal is received, the EA waits for a random duration between Min and Max seconds. This mimics the natural timing variation of manual trading.
Lot Deviation %
Randomly adjusts the lot size of each order by ±X%. Prevents the telltale pattern of identical lot sizes across all trades.
SL/TP Deviation (pips)
Randomly adjusts Stop Loss and Take Profit levels by ±X pips. Prevents the pattern of always placing SL/TP at round numbers or exact pip distances.
Daily Limit
Maximum number of trades per day when in Prop Firm Mode. Set to match your prop firm's maximum trades per day rule. 0 = no daily limit.
Tab: Modifications
Offset entry price, stop loss, and take profit from signal values
Entry Modification (pips)
Adjusts the entry price of every order by the specified number of pips. Positive values move entry in the less favorable direction (safer, further from current price). Negative values move entry in the more favorable direction (more aggressive, closer to or past current price).
BUY signal at 1.0900, Entry Mod = +5 pips → order placed at 1.0905 (5 pips higher, safer entry)
BUY signal at 1.0900, Entry Mod = -5 pips → order placed at 1.0895 (5 pips lower, better fill price)
SL Modification (pips)
Adds or subtracts pips from the signal's Stop Loss distance. Positive = wider SL (more room for price to move), Negative = tighter SL (less risk per trade).
TP Modification (pips)
Adjusts the Take Profit distance. Positive = extends the TP target further (more ambitious), Negative = brings TP closer (locks in profit earlier).
Tab: Advanced
Dashboard, time filter, default SL/TP, signal handling, and architecture settings
Show Dashboard
Shows or hides the visual information panel overlaid on the MT5 chart. The dashboard displays current signal status, active trades, connection status, and daily P&L.
Dashboard Theme
Visual theme for the dashboard overlay. Options: DARK, LIGHT, MATRIX (green on black), TRADINGVIEW (matches TradingView color scheme).
Dashboard X / Y Position
Pixel position of the dashboard panel on the chart. Adjust to avoid overlapping with price action or other indicators.
Use Time Filter
Restricts the EA to only open new trades during specific hours. Signals received outside the allowed window are ignored. Does not affect management of already-open trades.
Start Hour / End Hour
Hour range during which the EA accepts new signals. Times are in broker server time (visible in MT5's Market Watch clock).
Fixed SL (pips) / Fixed TP (pips)
Default Stop Loss and Take Profit in pips applied when a signal does not include these values. Ensures trades always have risk management even when signal providers omit SL/TP.
Require SL
If true, the EA rejects any signal that does not include a Stop Loss value. No trade will be opened without a defined SL. Use this with strict risk management requirements.
Wait for Complete Signal
When enabled, if an initial message has direction but no SL/TP, the EA waits for a follow-up message with complete information before opening any orders. Useful for channels that send signals in two parts.
Wait Timeout (seconds)
Maximum seconds to wait for the complete signal follow-up. If no completion message arrives within this time, the EA either proceeds with the partial information or cancels the entry (depending on the Require SL setting).
Enable Multi-Cycle Architecture
Enables the advanced concurrent cycle management engine. Each unique combination of channel + symbol + direction gets its own independent trading cycle, allowing the EA to simultaneously manage 100+ active cycles without conflicts.
Manual TP Levels
When enabled, the EA completely ignores the Take Profit levels provided in the signal and instead uses up to 10 fixed TP levels defined here (in pips from the entry price). This is useful when you want consistent TP distances regardless of what the signal provider sends.
- Enable Manual TPs — Master toggle. When ON, signal TPs are ignored and these fixed levels are used instead.
- TP1–TP10 (pips) — Distance in pips from the entry price for each TP level. Levels set to 0 are skipped.
R:R Ratio TP Levels
Dynamic TP mode where each Take Profit level is automatically calculated as a multiple of the signal's Stop Loss distance. Instead of fixed pip values, you configure multipliers (ratios) and the EA adapts to every signal's SL automatically.
- Enable R:R Ratio TPs — Master toggle. When ON, signal TPs are ignored and R:R-calculated levels are used instead.
- R:R Ratio 1–10 — Multipliers applied to the SL distance.
1.0= 1:1 (TP at same distance as SL),2.0= 1:2,3.0= 1:3. Set to0to skip a slot.
Tab: License & Server
License key, server connection, auto-update settings
License Key
Your unique Nexus Copier license key, tied to your MT5 account number. Must be entered here and in the Configurator's License tab. The EA validates this key against the license server on startup and periodically during operation.
Server URL
The full URL of the NexusServer polling endpoint. Only change this if you modified the default port (5000) in the server configuration, or if running the server on a different machine on your local network.
Account ID
Unique identifier for this MT5 account instance. When running multiple MT5 accounts, each must have a unique Account ID so the server can route signals to the correct account.
Update Interval (seconds)
How often (in seconds) the EA polls the NexusServer for new signals. 1 second is recommended for near-real-time signal reception. Increase to 2–3 if your VPS has limited resources.
Connection Alert Cooldown (minutes)
Minimum time between connection error alert notifications. Prevents the EA from flooding you with alerts if the server is temporarily unreachable.
Max Retries / Retry Delay (ms)
On a failed connection attempt, the EA retries up to Max Retries times, waiting Retry Delay milliseconds between each attempt before reporting a connection error.
Enable Auto-Update / Update Check Interval
The EA periodically checks for new versions. When an update is available, a notification appears in the EA's chart comment. Disable this if you prefer manual update control.
Tab: File Logging
Control what events are recorded to log files for debugging and auditing
MQL5/Files/ directory. File name format:
NexusCopier_YYYYMMDD.log. A new file is created each day.Enable File Logging
Master switch for all file logging. Disabling this single parameter stops all log file writing, regardless of individual log category settings.
Log Signals (Default: true)
Records every signal received from the server, including raw signal data, parsed values, and rejection reasons.
Log Orders (Default: true)
Records every order open, close, and modification with ticket numbers, prices, and lot sizes.
Log Commands (Default: true)
Records internal EA command processing — useful for debugging why a signal was or wasn't acted upon.
Log Modifications (Default: true)
Records Break Even moves, Trailing Stop updates, and SL/TP modifications.
Log TP Hits (Default: true)
Records when each Take Profit level is reached, including partial close amounts.
Log Errors (Default: true)
Records all errors and warnings. Always keep this enabled — essential for diagnosing issues.
Log Connection (Default: false)
Records every server poll request and response. Produces very large log files — enable only when debugging connection issues.
Log Protection (Default: true)
Records drawdown protection triggers, profit target closures, and daily reset events.
3. Nexus Server — Configuration & Operation
The middleware that bridges Telegram and MetaTrader 5
3.1 What Does NexusServer Do?
- Connects to Telegram using your personal account via the official Telegram API
- Monitors configured channels for new messages in real-time
- Parses signal text to extract: trading direction, symbol, entry price, Stop Loss, Take Profit
- Detects Pre-Signal phrases using configurable templates
- Serves parsed signals to the EA via a local HTTP endpoint (
GET /get_trade) - Manages multi-account routing — sends signals to the correct MT5 account based on Account ID
3.2 config.json — All Parameters
NexusServer reads its configuration from config.json in
its installation folder. This file is written by the Configurator — you should not edit it
manually unless absolutely necessary.
{
"FORCE_SYMBOL_IF_MISSING": false,
"SYMBOL_TO_FORCE": "XAUUSD",
"TELEGRAM_BOT": {
"ENABLED": false,
"BOT_TOKEN": "",
"AUTHORIZED_USER_ID": ""
},
"ACCOUNTS": [
{
"ID": "default",
"CHANNELS": [ ... ]
}
]
}
FORCE_SYMBOL_IF_MISSING ⭐ New v16.9
Default: falseServer-side enforcement of the forced symbol feature. When true, signals without a detected symbol are automatically assigned SYMBOL_TO_FORCE before being served to the EA.
SYMBOL_TO_FORCE ⭐ New v16.9
Default: "XAUUSD"The symbol name injected into symbol-less signals when FORCE_SYMBOL_IF_MISSING is true.
TELEGRAM_BOT.ENABLED
Default: falseEnables an optional Telegram notification bot. When enabled and configured, the bot sends trade confirmation messages to your Telegram.
TELEGRAM_BOT.BOT_TOKEN
The bot token obtained from @BotFather on Telegram. Create a bot via @BotFather and copy the token here.
TELEGRAM_BOT.AUTHORIZED_USER_ID
Your Telegram user ID (numeric). Only this user can receive notifications from the bot. Get your ID via @userinfobot.
3.3 Pre-Signal Phrase Templates
Pre-Signal detection uses phrase templates configured per channel in the Configurator. Templates support two placeholders:
{ACTION}— matches BUY, SELL, LONG, SHORT, and common variations{SYMBOL}— matches any trading symbol in the message
Buy Now — matches any message containing "buy now" (case-insensitive)Scalping {ACTION} {SYMBOL} slowly — matches "scalping buy XAUUSD slowly"Preparing {ACTION} (scalping) — parentheses are valid in templates
3.4 Multi-Account Management
NexusServer can route signals to multiple MT5 instances simultaneously. Each account is identified by its Account ID and receives the same signals (or filtered signals based on channel configuration).
3.5 Server Logs
NexusServer creates log files in its installation directory. Logs include: Telegram connection events, received messages, signal parsing results, pre-signal detections, and errors.
Nexus Server.exe → files named nexus_YYYYMMDD.log3.6 HTTP Endpoint Reference
The EA communicates with NexusServer via HTTP GET requests:
GET http://127.0.0.1:5000/get_trade?account=default
Response (JSON):
{
"signal": "BUY",
"symbol": "XAUUSD",
"entry": 2650.00,
"sl": 2630.00,
"tp1": 2680.00,
"tp2": 2700.00,
"tp3": 0,
"channel": "Gold Signals",
"symbol_forced": false
}
4. Nexus Configurator — Complete Guide
Using the Visual Configurator to set up every parameter
4.1 Overview
The Visual Configurator is a Windows desktop application that provides
a graphical interface for all 226+ parameters. Changes are written to config.json
which is read by NexusServer on startup or after saving. You do not need to restart the EA for
most setting changes.
config.json file
that NexusServer reads from the same directory.4.2 Telegram Tab — Detailed Guide
Enter API credentials
API ID (number) and API Hash (string) from my.telegram.org. See Section 1.4 for full instructions.
Phone number verification
Enter your number in international format (+country code). Wait for the Telegram verification code via SMS or in-app message.
Add channels
Use the "+" button to add channels. For public channels, use @username. For private channels, use the numeric ID (get it by forwarding a message to @userinfobot).
Configure per-channel options
Click each channel to configure: Pre-Signal templates, Force Symbol settings, enable/disable status.
4.3 Symbol Mapping Tab
Use the Global profile for mappings that apply to all accounts. Create account-specific profiles for brokers with different symbol naming conventions.
The Force Symbol If Missing toggle is also found here — enable it and set the target symbol for channels that don't include instrument names in their signals.
4.4 TP Profiles Tab
Create named TP close profiles (e.g., "Conservative 25/25/25/25", "Aggressive 50/50") and assign them to specific channels. When Use Server TP Profiles is enabled in the EA, it applies the matching profile instead of the local TP configuration.
4.5 Saving & Applying Configuration
Click "Save" in the Configurator
Writes all current settings to config.json.
NexusServer picks up changes
NexusServer detects the file change and reloads configuration automatically — no restart required.
EA continues without interruption
Changes to signal parsing and channel settings take effect immediately. EA input changes (risk, grid, protection) require reattaching the EA or using the Configurator to update the EA's config.json-linked settings.
5. Nexus Trade Analyzer
Professional performance analytics — import your trade history and visualize every metric that matters
5.1 Export Trade History — ExportHistoryToCSV
Before opening the Analyzer you must export your MT4/MT5 trade history using the included script ExportHistoryToCSV.ex5 (MT5) or ExportHistoryToCSV.ex4 (MT4).
Copy the script to MetaTrader
MT5: copy ExportHistoryToCSV.ex5 to
MQL5/Scripts/. MT4: copy ExportHistoryToCSV.ex4 to
MQL4/Scripts/. Refresh the Navigator panel.
Drag the script onto any chart
A parameters dialog appears with three inputs.
Set the parameters and click OK
Magic Number Filter (default 0 = all trades) · Days Back (default 365, use 0 for full history) · Custom Filename (leave empty for auto-naming).
Locate the output CSV
File saved to
MT5 Data Folder/MQL5/Files/NexusCopier_TradeHistory_[MagicNumber].csv (or
_ALL.csv). Each row contains: open/close time, duration, channel name,
symbol, direction, entry/exit price, SL, lots, gross profit, commission, swap, net
profit, pips, outcome (WIN/LOSS/BREAKEVEN), and close reason.
5.2 Open the Analyzer in Nexus Server
Launch Nexus Server.exe
Make sure Nexus Server is running.
Click "Analyzer" in the sidebar
The Analyzer opens in a dedicated window. It auto-scans
your MT5 Files folder for NexusCopier_TradeHistory_*.csv files.
Load your CSV and apply filters
Select the CSV from the dropdown. Use filters to narrow analysis by date range, channel, symbol, outcome, or close reason.
5.3 Analyzer Views
📋 Trade History
Full sortable/filterable table of all trades.
📈 Equity Curve
Interactive equity progression chart.
📉 Drawdown Analysis
Drawdown depth, duration, and recovery.
🗓️ Monthly Heatmap
Color-coded P&L by month and year.
🕐 Temporal Analysis
Profit by hour of day and day of week.
📊 Profit Distribution
Bar chart of P&L spread across trades.
🤖 AI Insights
Automated pattern detection and anomaly flags.
🎲 Monte Carlo
Probability distribution of future outcomes.
🧪 Scenario Lab
What-if testing with different risk settings.
5.4 Statistics Panel
Basic Stats
Total Trades · Win Rate % · Net Profit · Avg Profit per Trade · Best / Worst Trade
Pro KPIs
Profit Factor · Expectancy ($/trade) · Max Drawdown ($ & %) · Recovery Factor · Risk/Reward Ratio
Streaks & Rankings
Max Win/Loss Streak · Current Streak · Top Channels by profit · Top Symbols by profit
6. Practical Guides & Use Cases
Step-by-step configurations for common scenarios
Guide 1: Basic Setup for Beginners
Minimum configuration to go from zero to your first automated trade. Use these settings while you learn the system — they are safe and conservative.
Install all three components
EA in MT5, Nexus Server.exe running, Configurator installed. See Block 1 for full instructions.
Connect Telegram
Enter API ID + Hash in Configurator → Telegram tab. Verify with your phone number.
Add one signal channel
Add the channel by username or ID. Leave all channel settings at defaults.
Set Risk Mode = MANUAL, Fixed Lot = 0.01
This is the safest mode — always opens 0.01 lots regardless of account size.
Set Execution Mode = SINGLE_ORDER
One order per signal. No grid complexity while you're learning.
Enable Drawdown Protection at 3%
Safety net: stops trading if daily loss exceeds 3% of account balance.
Enter your License Key
In both EA inputs and Configurator License tab.
Save and test
Save config in Configurator. Wait for the next signal. Verify a trade opens in MT5.
Guide 2: Conservative Configuration (Low Risk)
Recommended settings for cautious account growth with strong protection:
| Parameter | Value | Reason |
|---|---|---|
| Risk Mode | PERCENTAGE |
Scales with account size |
| Risk Percentage | 0.5% |
Half a percent per trade |
| Execution Mode | SINGLE_ORDER |
No averaging |
| Max Simultaneous Trades | 3 |
Limits total exposure |
| Use Break Even | true |
Protects profitable trades |
| Drawdown Protection | 3% |
Stops early on bad days |
| Profit Target | 2% |
Locks in daily gains |
| Allow Duplicates | false |
No accidental doubling |
Guide 3: Trading Signals Without a Symbol (Force Symbol)
Scenario: You subscribe to a gold-only Telegram channel that sends messages like "BUY NOW scalping high risk" — no symbol mentioned.
Open Configurator → Symbol Mapping tab
Find the "Force Symbol If Missing" toggle.
Enable "Force Symbol If Missing"
Toggle it ON.
Set "Symbol to Force" = XAUUSD
Or whichever symbol your broker uses for gold. Check the exact name in MT5's Market Watch.
In EA inputs: enable InpForceSymbolIfMissing = true
Set InpSymbolToForce = XAUUSD (same value as in Configurator).
Save and test
Send or wait for a signal without a symbol. Check the log file for "symbol_forced: true" to confirm it's working.
Guide 4: Pre-Signals — Step-by-Step Setup
Scenario: Your channel sends "⚠️ Preparing BUY XAUUSD" before the full signal with entry/SL/TP.
Enable Pre-Signal in Configurator → Pre-Signals tab
Toggle "Pre-Signal Enabled" ON.
Add a phrase template
In the channel's settings, add template:
Preparing {ACTION} {SYMBOL}
Configure pre-signal parameters
Pre-Signal Trades = 1, Lot Size = 0.01 (small), SL = 50 pips, TP = 100 pips.
Enable Link Pre-Signal BE
When full signal arrives, pre-signal orders move to break even automatically.
Set Close Pre-Signal at TP = 1
Pre-signal orders close when the main signal's TP1 is hit.
Guide 5: Prop Firm Configuration
Recommended settings for FTMO, MFF, The5ers, and similar prop firm challenges:
| Parameter | Value |
|---|---|
| Prop Firm Mode | true |
| Remove Channel Name | true |
| Delay Min / Max | 3s / 12s |
| Lot Deviation | 5% |
| SL/TP Deviation | 0.5 pips |
| Max Drawdown | 4% (below firm's 5% limit) |
| Risk per Trade | 0.5% – 1% |
| Use Break Even | true, trigger at TP1 |
Guide 6: Dynamic ATR Grid Setup
When to use: volatile markets where fixed pip distances cause over-dense or over-sparse grids. ATR Grid automatically adapts spacing to current market conditions.
Enable "Use ATR Grid" in Grid Distance tab
Set ATR Period = 14, Timeframe = H1
Standard ATR settings suitable for most currency pairs and metals.
Set ATR Multiplier = 0.10 to 0.15
Start at 0.10 and observe the resulting grid distances. Adjust to match your preferred spacing.
Guide 7: Reverse Trading — Fading Signals
When to use: you've analyzed a channel and found it consistently loses — meaning reversing their signals would be profitable. Or for systematic strategy testing.
Enable Reverse in Reverse Trading tab
Set Mode = SELECTIVE
Only reverse the specific channel(s) identified as having reversible signals.
Enter the channel name in Reverse Channels
Enable Swap SL/TP
Ensures SL and TP are correctly swapped when reversing — maintaining proper risk/reward ratios.
Guide 8: Multi-Account Setup
Running 3 MT5 accounts from a single Nexus Server and Configurator instance:
Assign unique Account IDs
In Configurator → Accounts section: create IDs "main_account", "prop_ftmo", "prop_mff".
Set Account ID in each EA
Each MT5 EA instance's Account ID parameter must match the ID configured in the Configurator.
Configure per-account risk settings
Each account can have different Risk %, Channel Overrides, and Protection limits.
All accounts receive the same signals
Nexus Server broadcasts signals to all registered accounts. Each EA applies its own risk settings independently.
7. Troubleshooting
Common problems and how to solve them
❌ EA Not Receiving Signals
- ✓ Is Nexus Server running? Check for the console window. Try visiting
http://127.0.0.1:5000/get_tradein a browser. - ✓ Does the Server URL in EA parameters match the actual port? Default:
http://127.0.0.1:5000/get_trade - ✓ Is Telegram connected? Check for a green connected status in the Configurator's Telegram tab.
- ✓ Is the channel added and enabled in the Configurator?
- ✓ Are WebRequests allowed in MT5 for
http://127.0.0.1:5000? - ✓ Check the EA log file in MT5 Data Folder →
MQL5/Files/for error messages.
❌ Orders Not Opening
- ✓ Does the symbol exist in your broker's MT5? Check Market Watch. Add a Symbol Mapping if needed.
- ✓ Is Symbol Filter active and blocking this symbol?
- ✓ Is Time Filter active and outside allowed hours?
- ✓ Has Max Simultaneous Trades limit been reached?
- ✓ Is Drawdown Protection triggered (trading stopped for the day)?
- ✓ Is the license valid? Check EA log for license errors.
- ✓ Is AutoTrading enabled in MT5 (the green robot icon in the toolbar)?
❌ Signals Without Symbol Not Working
- ✓ Is "Force Symbol If Missing" enabled in BOTH the Configurator (Symbol Mapping tab) AND the EA inputs?
- ✓ Does "Symbol to Force" exactly match the broker's symbol name (including any suffix like 'm' or prefix)?
- ✓ Check the EA log for entries containing "symbol_forced" to confirm the feature is triggering.
- ✓ Check Nexus Server log for the parsed signal to see if symbol_forced = true in the JSON response.
❌ Pre-Signals Not Being Detected
- ✓ Is Pre-Signal Enabled = true in the EA inputs?
- ✓ Is the phrase template configured in the Configurator's channel settings (not just globally)?
- ✓ Does the template match the actual message format? Templates are case-insensitive but must match the structure.
- ✓ Check Nexus Server log for "pre-signal" parsing entries to see if the message reaches the parser.
- ✓ Note: parentheses in templates are valid and properly escaped internally.
❌ License Error
- ✓ Verify the License Key is entered in BOTH the EA inputs and the Configurator's License tab.
- ✓ Confirm the license is registered for your current MT5 account number.
- ✓ Check internet connection — the license requires online validation on startup.
- ✓ If you changed brokers or account numbers, contact support to transfer your license.
❌ Nexus Server Won't Start or Connect
- ✓ Run Nexus Server.exe as Administrator (right-click → Run as administrator).
- ✓ Check Windows Firewall — add an inbound rule to allow port 5000.
- ✓ Check if another process is using port 5000: run
netstat -an | findstr 5000in Command Prompt. - ✓ Check antivirus — add Nexus Server.exe to the exclusions list.
- ✓ Ensure .NET 8 Runtime is installed (check the installer or download from Microsoft).