Algorithmic Trading In MQL5 Intermediate Course
Algorithmic Trading in MQL5: OOP & PO
Trading robots (expert advisors) will be rebuild with an OOP framework and provided with the course.
You will learn:
How to send, modify, set expiration and cancel pending orders
How to connect your trading to a VPS
MQL5 Intermediate Course Description
In this course you will learn how to code with object-oriented programming, how to adapt our simple expert advisor to this new framework and how to work with pending orders.
Introduction To Object-Oriented Programming (OOP)
In the first part we will focus on how to code object-oriented programming in MQL5. We will cover the theory while maintaining a practical approach.
First, we will introduce you to object-oriented programming, covering classes and objects, and then we will explain most OOP basic concepts, such as encapsulation, inheritance or polymorphism, both in theory and code and with examples.
Rebuild Of The Expert Advisor With OOP
In the second part we will take the expert advisor that we built in the previous course, βAlgorithmic Trading In MQL5: Code Robots & Free Up Your Timeβ and we will rebuild that robot with classes and objects of our own.
In case that you did not complete the previous course, you will have available for download a copy of that expert advisor in this course, so you can follow along with the lectures.
Pending Orders
We will cover everything about pending orders and we will create a version of our robot that trades with them.
Here you will learn what type of pending orders we can use in MT5, how to place them, how to modify and delete them and how to set their expiration time.
The concepts learnt in this part apply to all types of pending orders that exist in the MT5 platform, namely: buy limit, sell limit, buy stop, sell stop, buy stop limit and sell stop limit orders.
Requirements:
- Basic knowledge of the MQL5 programming language
Who is this course for:
- Algorithmic traders that completed the course βAlgorithmic Trading In MQL5: Code Robots & Free Up Your Timeβ and are willing to keep learning and improve their expert advisor
- Any algorithmic trader that desires to expand their knowledge of MQL5 and have a better working framework
- Any algo-trader interested in working with pending orders
This is an intermediate level course. It is not appropriate for beginners as we will not cover the basics of the MQL5 language. Beginners should take instead βAlgorithmic Trading In MQL5: Code Robots & Free Up Your Timeβ.
However, if you took the time to complete the previous course, or you have basic knowledge of MQL5, then you are ready to take this MQL5 intermediate course.
MQL5 Intermediate Course Content
Section 1: Introduction
1- Disclaimer
2- Welcome
3- Starting Point (i): Review at the Simple Moving Average Expert Advisor Strategy
4- Starting Point (ii): Review at the Simple Moving Average Expert Advisor Code
5- Starting Point (iii): How the Expert Advisor works in backtest
Section 2: Introduction to OOP, Classes & Objects
7- Classes & Objects
8- Classes & Objects in MQL5: Car Class
9- Classes & Objects in MQL5: Car Object
10- Classes & Objects in MQL5: Indicator Examples
11- Class Methods
12- Constructors and Destructors
13- Encapsulation and Access Modifiers
14- Inheritance and Derived Classes (i)
15- Inheritance and Derived Classes (ii)
16- Polymorphism and Overloading
17- Polymorphism and Virtual Functions
Section 3: Rebuilding the EA - CTrade Class
18- Part 2: Rebuilding The EA With OOP
19- CTrade Class Declaration
20- Class Constructor
21- Request Variable Setters
22- A Single EA for Hedging and Netting Accounts
23- SelectPosition Method
24- Order Placement
25- Modification of Positions
26- Closing Trades
27- Implementation of CTrade Class to our Expert Advisor
Section 4: Rebuilding the EA - CPM Position Management Class
29- AdjustStops, SL & TP
30- Trailing Stop Loss
31- Break Even
32- Implementation of CPM Class to our EA
Section 5: Rebuilding the EA - CBar Class
33- CBar Class: Declaration and Methods
34- CBar Class: Bar Information Methods
35- Implementation of CBar to our EA
Section 6: Rebuilding the EA - CIndicator Class
36- CIndicator Class
37- CIndicator Methods
38- CiMA Class
39- MA Signals
40- CiBands Class
41- CiBands Upper and Lower Bands
42- Implementation of CiMA to our EA
43- Testing the EA v2.0
44- MQL5 Library Classes
Section 7: Pending Orders
45- Part 3: Pending Orders
46- Types of Pending Orders
47- Placement Of Pending Orders i
48- Placement Of Pending Orders ii
49- Modification Of Pending Orders
50- Expiration Time
51- Delete Pending Order
52- Get Tickets Of Pending Orders
53- Coding the Pending Order EA Version
54- Testing the Pending Order EA Version
Section 8: Additional & Final Section
55- Additional & Final Section
56- Market Closed Tester Error
57- Market Closed Tester Error Solution
58- About VPS (i)
59- About VPS (ii)
60- Course Conclusion