MQL: MQL4 / MQL5
Also known as: MetaQuotes Language
What is it?
MQL is short for MetaQuotes Language, the programming language used to build automated tools inside MetaTrader, the popular trading platform. There are two flavours that match the two platform versions: MQL4 is for MetaTrader 4 (MT4) and MQL5 is for MetaTrader 5 (MT5). You use these languages to write three kinds of add-ons. An Expert Advisor (EA) is a robot that places and manages trades by itself.
A custom indicator draws a calculation, such as a custom moving average, onto the chart. A script runs a one-off task on command. Think of MQL as the instruction language you write your trading rules in so the platform can carry them out. For a beginner, the key point is that you do not have to learn MQL to use automation; you only need it if you want to build or audit a tool yourself, since most traders run ready-made EAs or connectors.
The most important practical fact is that MQL4 and MQL5 are not interchangeable. Even though the names look almost identical, the way they handle orders and positions changed significantly between the two, so code written for MT4 will not simply run on MT5. Moving a strategy from one to the other means rewriting and re-testing parts of it, not just recompiling. By itself the language is plumbing: it does not create a trading edge, but getting it right determines whether your automation behaves exactly as your strategy intends.
Why it matters: They are how any custom automation logic actually reaches the MetaTrader platform; understanding them is the gate to building or auditing an EA.
The language itself is infrastructure; its correctness matters, but it does not change strategy edge directly.
Real-world example
A developer writes an MQL5 EA that listens for an incoming signal and places the corresponding MT5 order.
How SignalBots handles it
SignalBots' MetaTrader connector handles the MQL-side bridge so you can route external signals without writing EA code yourself.
Pro tip
MQL5 is not a drop-in upgrade of MQL4 - budget real time to port logic between them rather than expecting a recompile.
Common pitfalls
Treating MQL4 and MQL5 code as interchangeable and shipping a port that silently mishandles the new order model.
Frequently asked questions
Do I need to learn MQL to automate my trading?
No. You only need MQL if you want to build or modify a tool yourself. Most traders run ready-made Expert Advisors or use a connector, which removes the need to code at all.
Can MQL4 code run on MT5?
No. MQL4 and MQL5 differ enough, especially in how they handle orders and positions, that code must be ported and re-tested. It cannot simply be recompiled to move across.
Is MQL5 just an updated version of MQL4?
Not in the drop-in sense. MQL5 is more capable but has a different structure, so think of porting a strategy as a rewrite-and-retest task, not a quick upgrade.
Is MQL hard to learn for a beginner?
It is a real programming language, so it takes effort, similar to learning C. If your goal is only to use automation rather than build it, you can skip MQL entirely.
Does SignalBots require me to write any MQL?
No. The SignalBots MetaTrader connector handles the MQL side for you, so external signals can reach MT4 or MT5 without you writing or maintaining Expert Advisor code.