Learn

How to Install an Expert Advisor in MT5 on Windows

At a glance

For an EA supplied as an EX5 file, open the active MT5 terminal’s data folder and place it under MQL5/Experts. Compile MQ5 source first, or install Market products through your MQL5 account. Attach the EA to the intended chart, review its inputs and permissions, and inspect its startup messages on a broker demo account. A visible EA name confirms attachment; it does not prove correct execution or profitability.

On this page
Conceptual EX5 file, Experts folder and chart representing MT5 installation.
AI-generated installation concept, not a Windows or MetaTrader screenshot.

To install an Expert Advisor in MT5 on Windows, first identify how it was supplied. A compiled file, source-code project and Market purchase have different installation paths. Follow the matching route, then verify the configuration before permitting trades.

Before you begin

Have the Windows desktop terminal, a broker demo account, the EA’s documentation and its original files ready. Record the intended symbol, timeframe and product version. For Mac-specific paths and compatibility, use our MetaTrader on Mac guide.

Keep automated trading disabled while preparing the setup. If your terminal already operates other robots, use a separate demo terminal for this exercise: changing a platform-wide permission also affects its other EAs. Do not experiment on an account with positions whose management you do not understand.

Our acceptance criterion is deliberately precise: the intended version loads in the intended terminal, with reviewed settings, and its observed behavior matches its documentation. “The chart has an icon” is a narrower observation.

Start with the file you actually have

Scroll horizontally if needed

What you receivedYour routeWhat it does not establish
An EA executable, .ex5Copy the EA into the active data folder’s MQL5/Experts directoryIts trading logic is suitable for your account
Main source, .mq5, possibly with dependenciesCompile the complete project in MetaEditorA successful build is a profitable strategy
A .zip packageExtract and identify each component before installationEvery file belongs in Experts
A .set presetLoad it into the matching EA’s input settingsIt contains the robot itself
A Market purchase or rentalUse the terminal’s Market installation routeCopying a file transfers its activation
An MT4 .ex4 fileObtain the MT5 version from its developerRenaming the extension converts the program

The folder roles come from the official data-directory reference; compilation is a separate MetaEditor operation. An .ex5 extension alone does not identify an EA: indicators and other MQL5 programs can also use it. Check the package’s documented role.

Three routes: EX5 goes to Experts; MQ5 is compiled into EX5 first; Market products are installed through the signed-in terminal. All routes meet at configuration and demo observation.
Original workflow diagram. It explains the routes without imitating the Windows interface.

1. Identify the active terminal and its data folder

In the terminal you intend to use, select File → Open Data Folder. Open MQL5, then Experts. An example destination is:

[active terminal data folder]\MQL5\Experts\MyRobot\MyRobot.ex5

The bracketed text is a placeholder, not a Windows folder name. Do not guess a path under Program Files or use another broker terminal’s data directory. MetaQuotes documents both the data folder and its subdirectories.

Record: terminal name, build shown in its About dialog, demo server and the path you opened. Keep account identifiers private. If two terminal windows are open, label the installation record before copying anything.

2. Place the package correctly, or compile its source

For a compiled EA, copy its .ex5 into Experts or a subfolder. Preserve any documented package structure. Supporting indicators belong to their documented indicator location; include files and libraries have separate roles. Do not relocate every dependency into the EA folder simply because it came in the same archive.

For source, open the main .mq5 file or project in MetaEditor, then choose Compile or press F7. Inspect the Errors tab. MetaEditor produces the .ex5 alongside the main source or project when compilation succeeds; errors prevent a new executable. Warnings still deserve investigation. See the compilation reference.

Expected observation: the executable exists in the intended location. If an older executable was already present, inspect its modification time before assuming the failed build replaced it. Save the build output and ask the developer about missing dependencies; do not remove risk checks just to make source compile.

3. Use the Market route for a Market product

Sign in to the MQL5 Community account that owns the product, then find it under My Purchases in the terminal’s Market area and install it there. This login is distinct from your broker trading-account login. Installed Market robots are placed under Experts/Market; licensing and activations remain part of the Market process.

A Market demo is not a broker demo account. MetaQuotes states that a Market EA demonstration version can be tested in the Strategy Tester, but cannot run on an online chart—even when the connected brokerage account is a demo. A full product’s documented license conditions still apply. These distinctions are documented in Market purchases and demo versions.

Record: product/version and installation outcome. If licensing fails, resolve it through the product’s legitimate installation/support route before changing trading permissions.

4. Find the program and choose the intended chart

Open Navigator, expand Expert Advisors and look for the installed EA. Refresh the list if your build offers that command, or restart the demo terminal after saving your work. Navigator is the platform’s entry point for running installed programs. MetaTrader interface reference.

Open the documented instrument and timeframe. Check the full symbol name, including broker suffixes. If the developer specifies a multi-symbol EA attached to one control chart, follow that design instead of attaching copies indiscriminately.

Expected observation: you can identify one intended executable and one intended chart. If the program is missing, return to the active data path and build output. Enabling trading cannot fix a missing file.

5. Attach the EA and inspect every loaded input

Drag the EA from Navigator onto the chart or double-click it. Review the properties dialog before confirming. Use Inputs → Load for a matching .set preset. Only one EA can occupy a chart; adding another replaces the first. These controls are described in running and configuring EAs.

Before accepting a preset, make a small configuration table in your record:

Scroll horizontally if needed

Item to inspect, if the EA provides itQuestion to answer
Fixed lot size or percentage sizingWhat exposure would this create on this demo balance?
Maximum positions and recovery rulesCan positions accumulate or grow after a loss?
Stop and exit controlsWhat happens if the terminal disconnects?
Session and spread filtersWhich clock and units do these values use?
Magic number and multi-chart setupCould two instances manage the same positions?

These are our review questions, not a claim that all EAs expose identical settings. A preset filename such as “safe” or “conservative” answers none of them.

6. Grant the permissions the program actually needs

For trading, permission is required at both the platform level—the Algo Trading/AutoTrading control or Tools → Options → Expert Advisors—and in the individual EA’s properties. A global prohibition overrides an individual allowance. Account, profile or chart changes can disable automated trading according to your settings. Platform permission reference.

Scroll horizontally if needed

PermissionPractical review
Automated tradingEnable for this demo exercise only after checking the account and configuration.
DLL importsLeave disabled unless a trusted, understood dependency requires them.
WebRequestIf required, enter only the documented trusted destinations under platform options.
Modification of Signals settingsNot a general prerequisite for ordinary EA orders; it concerns the separate Signals subscription service.

MetaQuotes describes DLL dependencies and Signals access in EA properties, and URL permissions in platform settings. “Tick every box” is not a sound installation procedure.

7. Check startup before waiting for a trade

After confirming the dialog, inspect the EA name/status on the chart and read recent Experts and Journal messages in the Toolbox. The official interface guide locates these program and platform records.

Use a staged observation record:

Scroll horizontally if needed

ObservationSupported conclusionStill to check
File appears in NavigatorTerminal discovers the programCorrect inputs and successful startup
Chart attachment and no reported startup failureInitial loading appears successfulRequired conditions and permissions
Documented signal loggedA decision condition was observedWhether an order request followed
Request and server response recordedAn execution attempt can be investigatedResulting orders, deals and exposure
Expected demo behavior repeatedEvidence for this tested setupLive execution differences and economic value

This table is our diagnostic framework. An absence of error messages alone cannot prove every internal dependency works. If no trade appears, do not change random settings to force activity. Continue with MT5 EA not trading: permissions, signals and order errors.

8. Save the record and decide how it will keep running

Save the reviewed inputs, version information and relevant timestamped logs. Document what you actually observed, including unresolved issues. If the EA has not encountered an entry condition, write “not observed,” not “passed.”

For continued operation, consider terminal availability, connectivity, monitoring and recovery after interruption. Our MetaTrader VPS vs Windows VPS comparison addresses hosting compatibility. Installation success alone is not a reason to move to a funded account.

Reader resource · TXT

Record your MT5 installation

A plain-text worksheet for the terminal, files, inputs, permissions and observed startup behavior. No credentials required.

Download the installation record

Common installation questions

Can I install an EA using only a SET file?

No. It is an input preset. Obtain the matching program and version, then inspect what the preset changes. Loading someone else’s settings does not transfer their account conditions or results.

Can I put an MT4 EA into MT5?

Do not rename .ex4 to .ex5. Obtain or develop a compatible MT5 program. Installation paths cannot translate platform-specific code or APIs.

Does disabling Algo Trading close existing positions?

Do not treat a trading-permission switch as a close-all command. Arrange explicit position management before disabling or removing a robot; otherwise you can interrupt the automation you expected to manage an existing position.

Is an installed EA ready for live trading?

No. Installation, behavioral testing and evaluation of trading results are separate decisions. Start with the documented demo checks, then assess the evidence using our EA selection checklist.

Friendly robot illustration representing the RoboXpert pen name.
AI-generated avatar

About the author

RoboXpert

Pen name

The person behind RoboXpert writes about expert advisors, trading evidence and programming, and develops their own trading software. They report 10 years of experience in these areas; this is self-reported, not an independently verified qualification or performance record.

Sources & further reading

Your next question

Continue reading

Setup & VPS

MT5 EA Not Trading? Diagnose Permissions, Signals and Order Errors

Follow the diagnostic path when an installed EA does not trade.

Read the guide →
Setup & VPS

MetaTrader VPS vs Windows VPS: Which Fits Your EA?

Choose a compatible environment for continued operation.

Read the guide →