MT4 Step-by-Step Tutorial: From Download and Installation to Placing Orders, Closing Positions, and EA Troubleshooting
A complete 20-chapter learning path covering account login, gold symbols, order types, stop loss and take profit, mobile app, EA installation, and common errors, with demo practice and operation checklists.
Author: Thomas | MT4 Complete Beginner Tutorial
Scope: Mainly explains Windows MT4, with separate instructions for mobile and Mac. Menu names may vary due to language, version, and broker installation package. This tutorial organizes a learning path based on the provided account opening materials and checks platform operating instructions; it is not an official EBC manual and does not certify the marketing figures in the materials. Practice in a demo account first; practice examples do not constitute live trading advice.
01|First Distinguish Between Website Account, Trading Account, and MT4 Software
The client portal is used to manage personal profile, account opening applications, and platform-supported funding operations; MT4 is used to view quotes, charts, and trading accounts. The email and password for the client portal usually cannot be directly used as the MT4 trading account and password. Prepare three separate pieces of information: the trading account, the trading password for that account, and the complete name of the corresponding server.
Demo accounts and real accounts are also different. The demo balance is not withdrawable funds, and demo execution does not prove that a real account can achieve the same results. All exercises in this article only require using a demo account and do not require depositing funds first. The contracting entity, regional eligibility, account conditions, and funding rules for financial services should be checked item by item during the platform application process; one cannot infer from a group introduction image what protections an individual account receives.
Learning order: download and log in → understand the interface and symbols → open a demo position → modify stop loss and take profit → close positions and delete pending orders → check history → finally study indicators and EA. Before mastering closing positions, do not jump to automated trading.
02|Safely Download and Install Desktop MT4
- Obtain the installer from the broker client portal you have confirmed or the software's official channel, and verify the domain, download source, and software name. Do not use "cracked versions" from unfamiliar cloud drives or packaged programs claiming guaranteed profits.
- Confirm that you are downloading MT4, not MT5; the two may not share program files and account servers. Save the server name in the account opening notice to avoid casually choosing after searching only by brand.
- Run the installer and read the installation path and license prompts. When encountering a system security prompt, first verify the signature and source; do not disable security software to force-install unknown files.
- After installation, launch the terminal. When the account opening wizard appears for the first time, you can cancel first or create a demo account according to the platform instructions; the appearance of a chart in the interface does not mean you have logged into your own trading account.
- Save the software version information. When troubleshooting compatibility issues later, you need to provide the terminal version and program version, not just say "the latest version is installed."
Completion check: can launch the terminal; know the installer source; can distinguish demo and real servers. The external EBC link on this site is a registration entry containing a referral identifier, not a direct installer; downloads and account settings are still subject to the platform interface after logging in. The site may receive compensation due to a referral relationship, and this cannot be understood as a profit or security promise.
03|Create a Demo Account and Log In to a Trading Account
If the broker provides demo accounts, you can apply through the client portal or the MT4 "File → Open New Demo Account/Open Account" entry; specific options are subject to the actual version. After selecting the corresponding demo server, fill in the information as required and record the generated account, password, and server. If the terminal does not provide a creation entry, verify the application path with the platform; do not invent a server or use someone else's account.
Log in to an existing account: open "File → Login to Trade Account", enter the trading account, trading password, and server, then submit. The account is usually the trading account number, not an email. Real and demo server names may be similar and must be checked completely.
The success criterion is not just that the window closes: check whether the account information is correct, whether the connection status in the lower right corner is normal, and verify whether symbol quotes update when the market is currently open. When the market is closed or there are no new quotes, you cannot judge disconnection solely by prices not moving; you can check in combination with logs and the status of other symbols.
The investor password usually has read-only permission; it can view quotes and the account, but cannot trade manually, nor can it let EA place orders automatically. After logging in with the main trading password, account and symbol trading restrictions still need to be met. Switching accounts or closing the terminal will not automatically close positions in the original account; first check the original account's orders to avoid treating "exiting the software" as "exiting the trade". Do not save passwords on public computers, and do not post account passwords in comment sections or chat groups.
04|Understand the Four Main Windows and Common Shortcuts
- Market Watch: select symbols, view bid/ask quotes, and symbol properties. The common Windows shortcut is Ctrl+M.
- Navigator: manage accounts, indicators, EA, and scripts. Common shortcut is Ctrl+N.
- Charts: view the selected symbol, timeframe, and indicators. The name at the top of the chart must match the symbol you are preparing to trade.
- Terminal: bottom tabs such as "Trade", "Account History", "Experts", and "Journal". Common shortcut is Ctrl+T.
F9 usually opens the new order window; Ctrl+O opens Options; Ctrl+R opens the Strategy Tester. Shortcuts are affected by system and keyboard settings; use menus when you cannot find them. The Mac environment cannot directly copy all Windows shortcuts.
First expand the Trade and Journal windows, then practice. Hiding windows only changes the display and will not delete orders. Account History is also not equal to current positions: "Trade" shows the risk currently being taken, while "Account History" shows records that have been completed or cancelled. Whether an order exists is subject to the terminal's returned result; do not only look at whether there is an arrow on the chart.
05|Find the Gold Symbol and Understand Contract Specifications
In the Market Watch window, right-click to view the symbol list or "Show All", and look for XAUUSD; it may also be GOLD or a name with a suffix, such as XAUUSD.a. Suffixed symbols may belong to different account conditions; do not assume the contract is the same just because they all say gold.
For the symbol you plan to use, open "Specification/Properties" and record item by item: contract size, minimum trade volume, trade volume step, quote digits, minimum price change, trading session, stop distance, and applicable fee information. For fees such as commissions not displayed in the interface, check the charging rules for that account. Properties may change; recheck before trading.
"Lot" is a volume unit; it is not equal to ounces, nor is it equal to how much cash is invested. "Pip" and "USD price change" likewise cannot be directly equated. For example, if the minimum quote unit is 0.01, then a price change of 1.00 corresponds to 100 such units; this is only a unit demonstration and does not mean that gold pip values are the same on all platforms.
Margin is the occupation of funds for a position, not the maximum amount you can lose. Leverage, contract, and account currency differ, so the required margin also differs. This tutorial does not give a unified answer to "how much is one lot of gold", and does not apply one broker's settings to all accounts.
06|Charts, Timeframes, Crosshair, and Templates
Right-click in Market Watch to open "Chart Window", and check the symbol name at the top. Choose bar chart, candlestick chart, or line chart, as well as timeframes such as M1, M5, M15, H1, D1. M15 means each candlestick covers 15 minutes; it does not mean the order will automatically close after 15 minutes.
Use the zoom buttons to adjust the view; use the crosshair to read time and price. Do not directly treat your computer's local time as the chart server time. When studying data events or EA time filters, first verify the server time zone and whether it is affected by daylight saving time.
After adding built-in indicators, record the parameters, input prices, and timeframe used. Saving a template can reuse chart settings, but loading a template containing an EA or switching profiles may change the program state; check automated trading and attached programs, and do not treat it as an operation that only changes colors. A line being moved to a future position does not mean the indicator knows the future.
Completion check: can state the current symbol, timeframe, quotes, and server time; can restore your saved chart settings. At this stage, you are not required to find the "best parameters".
07|Fields That Must Be Checked Before Placing an Order
First confirm that the account is a demo account, then open the new order window. Common fields include symbol, volume, stop loss, take profit, comment, and order type. Names and buttons may change depending on the execution method.
- Symbol: must be the symbol whose contract properties you just checked.
- Volume: must comply with the minimum value and step; do not submit directly just because the software remembers the last lot size.
- Stop Loss/Take Profit: usually fill in prices, not the cash amount you are prepared to lose or profit; blank or zero usually means not set.
- Type: distinguish market execution from pending orders, and confirm that the button represents actual submission rather than preview.
- Direction: Buy is buy, Sell is sell; check again before operating.
Beginners should not enable one-click trading first. Once enabled, some buttons can directly submit or close positions, and the secondary confirmation you expect will no longer appear. After changing the account, symbol, or chart, you should recheck the lot size and trading conditions.
08 | Complete your first market order in a demo account
- Use a demo account, select a practice symbol that is allowed for trading and currently open, and confirm that quotes and the connection are normal.
- Open the new order window, and select a practice volume that complies with the account's limits. The minimum volume can still carry risk; it does not mean that losses can be ignored in a live account.
- Check the order type and direction, then check whether the stop loss and take profit fields are correct. If the distance or format is not allowed, troubleshoot first; do not force an order by deleting protective conditions.
- After submitting, read the terminal confirmation and record the order number, actual execution price, volume, and time. Do not click repeatedly just because the interface does not change briefly.
- On the "Trade" tab, check the position and confirm whether the stop loss and take profit are already in effect. Failure messages should be recorded; pressing a button does not equal execution.
In typical forex/CFD quotes, buying is filled at Ask and closed at Bid, selling is filled at Bid and closed at Ask; other actual execution conditions are subject to the contract and trading server. Spreads may cause a new order to show a floating loss, and afterwards commissions, overnight fees, or slippage may also be included. It does not directly prove a software or strategy failure. The price displayed on the chart may differ from the execution side; it should be viewed together with quotes on both sides.
09 | How to remember the direction of the four pending order types
A pending order is an instruction that attempts to execute when conditions are met; it is not an already established position. Four common types:
- Buy Limit: Plan to buy at a level below the current relevant buy quote.
- Buy Stop: Plan to buy at a level above the current relevant buy quote.
- Sell Limit: Plan to sell at a level above the current relevant sell quote.
- Sell Stop: Plan to sell at a level below the current relevant sell quote.
Memory method: Limit usually waits for a more favorable price, while Stop usually waits for a price to be crossed. This is an explanation of order types, not a recommendation of any trading strategy.
In the order window, select a pending order, fill in the type, trigger price, volume, stop loss and take profit, set an expiration time if necessary, and confirm whether the platform supports it. The pending order price and protective prices must meet the current minimum distance and precision requirements. After submitting, check the pending order number and status; after execution, it becomes a position, and the risk status also changes accordingly.
Practice task: In a demo account, separately check the price direction of the four order types; execution is not required at first. It cannot be guaranteed that execution will occur precisely at the specified price; gaps and liquidity changes may affect the result. Do not treat the trigger price as a guarantee of the final execution price.
10 | Setting and modifying stop loss and take profit
On the "Trade" tab, find the correct order, right-click and select "Modify or Delete Order", modify the stop loss and take profit prices for an open position order, and after submitting, check the S/L and T/P columns again. Changing numbers only in the input boxes without submitting will not change the server order.
For a buy order, the stop loss is generally below the relevant current closing quote, and the take profit is above; for a sell order, the opposite applies. It must satisfy both the symbol's minimum distance and the trading rules. Error 130 indicates an invalid stop loss and may involve direction, distance, pending order price, or quote precision. A minimum distance of zero shown by the server does not guarantee that there are no dynamic restrictions; check the actual error return and verify with the platform.
A zero value usually means that the corresponding protective order has not been set. Do not mistake "price 0" for an existing stop loss; and do not arbitrarily increase risk just to make the modify button available. A stop loss does not guarantee execution at an exact price; volatility, gaps, and available liquidity may still cause different results.
After modifying, check the order number, direction, and actual fields to confirm that another position was not changed. When there are multiple orders on the same symbol, especially do not judge only by chart position.
11 | Trailing stop, network disconnection, and closing the terminal
A trailing stop is adjusted by the running terminal based on new quotes; it is not a trailing program executed independently by the server. After the set conditions are reached, it attempts to modify the regular stop loss; if the terminal is closed, the network is interrupted, or there are no valid new quotes, subsequent automatic adjustments may stop.
A regular stop loss that has already been successfully submitted to the server still works according to account rules; if the trailing stop never successfully set a regular stop loss, you cannot assume that protection exists after the computer is turned off. The trailing stop distance uses points; be sure to check the symbol's units.
During practice, record each actual S/L change and the logs, and distinguish between "the menu option was enabled" and "the server has received the stop loss." Setting a trailing stop does not mean locking in all profits, nor does it guarantee avoiding major losses. Pausing the EA also does not automatically close positions, nor does it automatically cancel pending orders or stop loss/take profit on the server.
12 | Closing positions, partial closing, and deleting pending orders
When closing an existing order, find the correct order in the "Trade" list, open the close window, check the number and volume, and use the corresponding "Close" operation. Do not mistakenly click the new Buy or Sell button: in an account that allows hedging, an opposite order may add another position rather than close the original order.
After closing all, confirm that the original order no longer appears in current positions, and check the account history. For partial closing, enter the volume to be closed; both the closed volume and the remaining volume must comply with the minimum value and step. Different platforms may record remaining orders differently; do not rely on the number being absolutely unchanged for judgment.
An untriggered pending order needs to be "deleted," not the chart closed. Right-click the pending order to enter the modify or delete window, confirm deletion, and then check the list. If it has already triggered and become a position, it needs to be handled according to the position process.
Complete the practice: be able to distinguish market positions, pending orders, cancellation records, and closed trades; before exiting the terminal, be able to accurately list the orders that still exist. If no clear result is received, check the logs and order status first; do not repeatedly resend instructions.
13 | Balance, equity, margin, and historical reports
Balance generally reflects the account results that have already been accounted for; equity is also affected by items such as current floating profit and loss. Margin indicates the current amount occupied, while free margin and margin level reflect account capacity. The specific definitions, fees, and forced liquidation conditions are subject to the rules of the contracted account.
No change in balance does not mean there is no loss: floating losses on positions may have already reduced equity. A history of positive returns on the account also cannot prove that current risk is low. Do not only capture green orders and ignore floating losses, fees, and unclosed positions.
In "Account History," select all history or a specified time range, and check the open/close times, volume, commission, overnight fees, and results. Some versions support right-clicking to save a report; before exporting, confirm the time range, and then mask information such as account number and name.
Reports can be used for review; they are not a guarantee of the future performance of the platform or EA. Demo and live, different brokers, and different quote data should be labeled separately; do not combine screenshots from multiple accounts into the performance of one account.
14 | Mobile and Mac: which operations are different
For mobile installation sources, verify the app publisher. When logging in, search for the server that matches the account opening information, and enter the trading account and password; do not repeatedly try the client portal password. Common mobile interfaces include quotes, charts, trade, history, and settings; their exact locations vary by system and version.
First add the gold symbol in the demo account, and open the chart or a new order from the symbol menu; before submitting, check the direction, lot size, price, and order type. For an existing position order, enter modification or closing from the "Trade" page; pending orders are deleted from the order menu and cannot be canceled by exiting the App.
Custom MQL4 indicators and EAs on the computer cannot simply be copied to run on the standard mobile App. A phone can view the account and manually manage orders, but that does not mean it replaces a continuously running desktop EA. Do not expect that keeping the App running in the background on the phone will continuously execute a computer program.
Mac installation sources and operation methods should be based on the current software documentation and platform support; do not treat a Windows .exe file as a native Mac installation package. Paths, shortcuts, plug-in compatibility, and the Wine environment may differ. The specific menu exercises in this article are mainly based on Windows; when encountering differences, first confirm the software version.
15 | Installing custom indicators and EAs: put files in the right place
- First check the file source, whether it is compatible with MT4 rather than MT5, and whether the program depends on other files. Common MT4 programs are .ex4 or .mq4; MT5's .ex5 cannot be used directly as an MT4 EA.
- In the target terminal, select "File → Open Data Folder"; do not guess the current data directory solely from the installation path; different terminals may use different directories.
- Indicators are usually placed in MQL4/Indicators, and EAs in MQL4/Experts; scripts and dependency files have their own directories, so handle them according to the trusted developer's instructions.
- Return to the terminal and refresh the Navigator or restart. Source code files may need to be compiled; if compilation errors occur, record the information; do not treat "the file exists" as meaning it can run.
- First attach it in a demo environment to the specified symbol and timeframe, record the parameters, and check "Experts" and "Journal."
Attaching an indicator does not equal attaching an EA. Deleting a program from the chart also does not automatically close existing orders. Do not install executable files of unknown origin, and do not upload your own trading password in exchange for so-called free authorization.
16 | Automated trading switches, input parameters, and VPS
The terminal master switch and the EA's own “Allow live trading” need to be checked separately. When the master switch is off, some analysis functions can still run, but trading operations are disabled; having graphics on a chart does not mean the program can trade. Switching accounts, configuration files, or chart symbols/timeframes may trigger protective disabling.
On the Inputs page of the EA properties, check the lot size, risk method, maximum number of orders, time period, and other options that actually exist. Parameter names are determined by the developer; do not assume every EA supports the same features. Before loading a .set file, check the version and applicable symbols, save the original parameters, and avoid overwriting them with another configuration set.
Do not blindly enable DLL or WebRequest permissions for arbitrary websites to solve “no orders being placed”; configure only the minimum necessary permissions for trusted programs that genuinely need them. A chart usually has only one EA attached; attaching another replaces the original program, it does not mean two systems work at the same time.
A local EA usually requires the terminal to keep running and an internet connection; computer sleep may interrupt processing. An ordinary remote desktop VPS and a platform's built-in virtual hosting are not the same product, and their setup and migration methods differ. When switching operating environments, check whether execution is occurring in two places at once to avoid duplicate orders; a VPS also cannot guarantee no disconnections or profitability.
17 | EA backtesting: test the logic first, then look at profit
Open the Strategy Tester and select the correct EA, symbol, date range, timeframe, modeling method, initial deposit, and input parameters. The specific options depend on the terminal version and the program. Insufficient historical data, different symbol suffixes, or a model unsuitable for the strategy may all affect results.
“Every tick” in standard MT4 testing is not equal to all brokers' real historical tick-by-tick quotes, and the MT5 “based on real ticks” mode cannot be directly applied to MT4. How spread assumptions, commissions, and slippage are handled should be checked item by item; default settings cannot be treated as actual costs.
First confirm that the program can trigger, exit, and handle exceptions as expected, then observe the full equity curve, net drawdown, number of trades, and cost sensitivity. Keep failed intervals, independently check with periods not used for parameter tuning, and finally observe live execution in a demo environment.
This tutorial does not provide win rates, drawdowns, or profits that have not been actually tested. Backtesting can only reflect results under specified data and assumptions; it cannot prove future effectiveness, nor can it replace account risk management.
18 | Common errors: troubleshoot by symptom, do not click randomly and repeatedly
- No connection/Error 6: check the network, server, account, and logs; do not judge that you are online just because an old chart is still there.
- Can view but cannot trade: check whether it is an investor password, account permissions, and symbol restrictions.
- Error 130: invalid stop loss; check price direction, precision, minimum distance, and pending order trigger price; do not cover up the problem by removing the stop loss.
- Error 131: invalid trade volume; check minimum lot size, maximum lot size, and step.
- Error 132: market closed; check the server trading session for that symbol; do not judge directly by the local day of the week.
- Error 133: trading disabled; check account and symbol trading permissions, and verify with the platform if necessary.
- Error 134: insufficient funds; check the actual available margin and existing positions; do not treat adding funds as the only or necessarily correct solution.
- Error 136/138: no quote or requote; confirm the current quote and execution method; do not resend orders without limit.
- Error 146: trade context busy; check concurrent programs and operations, and first verify whether a request has already succeeded.
Troubleshooting records should at least include: terminal version, demo or live account type, server name, symbol, timeframe, time of occurrence, error code, and adjacent logs. Redact names, account numbers, passwords, and API keys. When the program has no orders but also no errors, first check whether the strategy conditions have been met; do not attribute everything to platform failure.
19 | Complete beginner practice checklist
- Log in to a demo account and verify the server.
- Find the gold symbol and write down the minimum trade volume, step, and contract information.
- Open a chart, switch timeframes, and read the server time.
- Complete one order submission in the demo environment and record the actual result.
- Modify the stop loss and take profit, and verify the server fields.
- Close the position and confirm the history; also practice placing and deleting untriggered pending orders.
- Export or view historical reports and check fees and time range.
- Only then install trusted indicators or EAs, and verify the parameters and the two levels of permissions.
For each practice session, change only one condition, and record “before operation → submit → returned result → current order status.” Completing software practice does not mean having profitability, and it does not require moving directly from demo to real funds. For processes involving signing, deposits, or withdrawals, check the platform's current rules separately; do not treat timeliness, fee rates, or protection amounts in the materials as guarantees.
20 | How to explain a problem when you need help
Inquiries can be written like this: “Windows MT4, demo account, a certain server, XAUUSD with a certain suffix, M15; error 130 occurred at a certain server time; lot size and stop loss direction have been checked; redacted logs attached.” This is easier to locate than just sending “the software does not work.”
This site can help with understanding operations and troubleshooting ideas, but it cannot replace the trading platform in handling account authentication, fund disputes, or server failures. Do not send login passwords, verification codes, full photos of identity documents, or API keys in comments, WeChat, or public screenshots. Before you have mastered the actual risks, do not increase trade volume just because the tutorial is clear.
Leveraged trading can cause major losses. This article is for software learning, research, and education; it does not constitute buy or sell instructions and does not promise returns; software versions, broker settings, and account conditions differ, so actual operations should be based on your own interface and verified rules.
MT4 EA troubleshooting guides →