Watch how to download trading robots for free
Find us on Twitter!
Join our fan page
Interesting script?
So post a link to it -
let others appraise it
You liked the script? Try it in the MetaTrader 5 terminal
Experts

MQL5 Programming for Traders – Source Codes from the Book. Part 2 - expert for MetaTrader 5

Views:
2438
Rating:
(4)
Published:
2023.12.15 14:23
Updated:
2023.12.15 16:00
\MQL5\Files\MQL5Book\
ansi1252.txt (0.05 KB) view
clock10.htm (0.96 KB)
clock10.png (0.32 KB)
envrun.bat (0.05 KB)
icons-322-46.bmp (57.91 KB)
unicode1.txt (0.1 KB) view
unicode2.txt (0.1 KB) view
unicode3.txt (0.1 KB) view
utf8.txt (0.05 KB) view
\MQL5\Include\MQL5Book\
AppliedTo.mqh (1.17 KB) view
ArrayUtils.mqh (4.19 KB) view
AutoIndicator.mqh (11.07 KB) view
AutoPtr.mqh (1.87 KB) view
CalendarCache.mqh (24.24 KB) view
ColorMix.mqh (6.25 KB) view
Comments.mqh (3.71 KB) view
ConverterT.mqh (0.96 KB) view
CRC32.mqh (1.89 KB) view
CustomOrder.mqh (8.69 KB) view
CustomTrade.mqh (39.4 KB) view
DateTime.mqh (2.56 KB) view
DBSQLite.mqh (24.03 KB) view
DealFilter.mqh (0.84 KB) view
DealMonitor.mqh (4.56 KB) view
Defines.mqh (0.71 KB) view
EnumToArray.mqh (1.54 KB) view
FileHandle.mqh (1.97 KB) view
FileHolder.mqh (3.64 KB) view
HTTPHeader.mqh (3.18 KB) view
HTTPRequest.mqh (2.54 KB) view
IndBufArray.mqh (7.17 KB) view
IndCommon.mqh (0.9 KB) view
IS.mqh (0.98 KB) view
LibRand.mqh (1.23 KB) view
MapArray.mqh (2.64 KB) view
MqlError.mqh (8.53 KB) view
MqlTradeSync.mqh (35.33 KB) view
MultiTimer.mqh (6.77 KB) view
ObjectMonitor.mqh (10.68 KB) view
OptReader.mqh (21.93 KB) view
OrderFilter.mqh (1.19 KB) view
Periods.mqh (1.95 KB) view
Permissions.mqh (4.87 KB) view
PNG.mqh (5.31 KB) view
PRTF.mqh (1.07 KB) view
QuickSortT.mqh (1.67 KB) view
QuickSortTm.mqh (2.43 KB) view
Reservoir.mqh (4.71 KB) view
RSquared.mqh (2.27 KB) view
RTTI.mqh (1.57 KB) view
StringUtils.mqh (1.91 KB) view
StructPrint.mqh (0.85 KB) view
Tableau.mqh (8.79 KB) view
TickEnum.mqh (2.4 KB) view
TickFilter.mqh (3.74 KB) view
TickModel.mqh (2.67 KB) view
Timing.mqh (1.71 KB) view
toyjson.mqh (11.4 KB) view
TplFile.mqh (8.12 KB) view
TplFileFull.mqh (11.01 KB) view
TradeCache.mqh (7.55 KB) view
TradeFilter.mqh (10.59 KB) view
TradeGuard.mqh (4.42 KB) view
TradeReport.mqh (8.83 KB) view
TradeReportSVG.htm (0.38 KB)
TradeState.mqh (5.91 KB) view
TradeUtils.mqh (11.51 KB) view
Tuples.mqh (4.94 KB) view
Uninit.mqh (1.16 KB) view
URL.mqh (4.64 KB) view
Warnings.mqh (0.54 KB) view
\MQL5\Include\MQL5Book\ws\
wsclient.mqh (5.19 KB) view
wsframe.mqh (11.62 KB) view
wsmessage.mqh (5.44 KB) view
wsprotocol.mqh (15.63 KB) view
wstools.mqh (6.22 KB) view
wstransport.mqh (5.33 KB) view
\MQL5\Libraries\MQL5Book\
LibRand.mq5 (3 KB) view
\MQL5\Presets\MQL5Book\
BandOsMA.set (1.22 KB)
BandOsMACustom.set (1.54 KB)
BandOsMAticks.set (1.24 KB)
\MQL5\Scripts\MQL5Book\p2\
Arrays.mq5 (1.4 KB) view
ExprAssign.mq5 (1.19 KB) view
ExprIncDec.mq5 (1.22 KB) view
ExprLogical.mq5 (1.59 KB) view
ExprModify.mq5 (1.25 KB) view
ExprSpecial.mq5 (1.55 KB) view
ExternMain.mq5 (1.6 KB) view
FuncFibo.mq5 (1.52 KB) view
FuncReturn.mq5 (1.76 KB) view
FuncTypedef.mq5 (2.74 KB) view
GoodTimes.mq5 (1.46 KB) view
StmtLoopsDo.mq5 (0.88 KB) view
StmtNull.mq5 (0.98 KB) view
TypeBool.mq5 (1.12 KB) view
TypeChar.mq5 (1.42 KB) view
TypeColor.mq5 (1.08 KB) view
TypeFloat.mq5 (1.72 KB) view
TypeInt.mq5 (1.24 KB) view
TypeString.mq5 (1.36 KB) view
Need a robot or indicator based on this code? Order it on Freelance Go to Freelance

Part 2. Fundamentals of MQL5 programming

"Part 2. MQL5 programming fundamentals" is an introduction to the key concepts of this programming language. Like any other language, MQL5 is based on several fundamental concepts that serve as building blocks for creating complex programs. This part of the book is devoted to data types, identifiers, variables, expressions, and operators. You will learn how to combine different instructions to form the program logic.

Fundamentals of MQL5 programming



The basic principles of procedural programming will enable readers to learn how to create programs that follow a sequence of steps to process data. This is an important step before proceeding to the powerful paradigm of object-oriented programming (OOP), which will be covered in the next part of the book.

Identifiers play a key role in MQL5 programming, as they allow program elements to be accessed by unique names. Identifiers are composed of Latin letters, numbers, and underscores, they cannot begin with a number and must not match MQL5 reserved words. Adhering to this important rule is a required prerequisite for successful program compilation.


Translated from Russian by MetaQuotes Ltd.
Original code: https://www.mql5.com/ru/code/45591

MQL5 Programming for Traders – Source Codes from the Book. Part 1 MQL5 Programming for Traders – Source Codes from the Book. Part 1

The first chapter of the book introduces the MQL5 language and development environment. One of the new features introduced in the MQL5 language compared to MQL4 (MetaTrader 4 language) is support for object-oriented programming (OOP), which makes it similar to C++.

Candle Grids Candle Grids

Draw a Rectangle on chart to plot custom grids based on points value on input

MQL5 Programming for Traders – Source Codes from the Book. Part 3 MQL5 Programming for Traders – Source Codes from the Book. Part 3

Part 3 "Object Oriented Programming in MQL5" offers an immersion into the world of object-oriented programming (OOP) in the MQL5 language. Software development often involves the complexity related to the management of multiple entities, requiring advanced technology to improve programming convenience, productivity, and quality.

MQL5 Programming for Traders – Source Codes from the Book. Part 4 MQL5 Programming for Traders – Source Codes from the Book. Part 4

In the fourth part of the book, we will focus on mastering built-in functions (MQL5 API) and will gradually delve into specialized subsystems. Any MQL5 program can utilize a plethora of technologies and functionalities. Therefore, it makes sense to begin with the most simple and useful functions that can be utilized in most programs.