Concept
Having completed more than 1000 projects as a freelancer, I have found out that about 90% of trading strategies can be built based on the same code template.
It is so because almost any strategy has the same major blocks / modules.
Usually they include: Lot Calculation method (fixed, martingale, based on account parameters and so on), Entry Signals rules and Exit Signals rules, some additional Filters (spread, time, volatility etc), Stop Loss and Take Profit management and some additional Trades Management options (i.e. no trades after certain time on Fridays).
Bots Builder Pro has the same types of built in parts. User can chose one or multiple parts from every category and the EA will be built automatically.
Progression
I recommend the following way of progression in working with Bots Builder.
1. Start building strategies using default modules / blocks only. Try understanding what every module does and how they work together. I can assure you, that even from existing blocks some very interesting and promising strategies can be created, which can be later used as a basis for more advanced ones.
2. At some point, you will fill that you want to modify some of the existing built-in parts or add your custom modules. You can absolutely start doing so. Start adding your own custom parts in every category and use them together with built-in ones. You can either take existing module as a base and built on it, or create your own part from scratch. Thus, the number of strategies you already can built became unlimited.
3. When you learned how strategies are built from parts, both built-in and custom, and if you think that your strategy can not be built using this approach, you can create your strategy building a new scheme absolutely from scratch. After you master this type of strategies creation, the next step is pure MQL coding only :) and becoming a true programmer, if you wish to do so.
Below I will explain how to use Bots Builder for all these 3 progression steps.
Building Bots using built in parts
Creating a strategy from built-in parts is really simple.
You can find information about every built-in part clicking on "i" icon, like in the pic below:
Let's build a few strategies.
1. Classic Two Moving Averages Crossover Strategy
Lot Method - we will add 2 options: Fixed Lot and Risk Per Trade in percentage of the Account Balance
Entry Signal - Moving Averages
Filters - Max Trades
SL & TP - SLTP in points + Trailing Stop
Trades Management - Closing on Friday
GIF below shows the whole process. Please, feel free to repeat.
2. Reversing Martingale Strategy
Strategy starts with a random order. If it hits SL, the next trade will be with doubled lot size. If TP, the next trade will have start lot size.
Lot Method - Martingale Fixed Start
Entry Signal - Always ON
Filters - Max Trades, Alternate Trades
SL & TP - SLTP in points
Trades Management - NONE
GIF below shows the whole process. Please, feel free to repeat.
3. Classic Grid Strategy
Strategy Starts with buy and sell orders. If price goes against the order, after a certain price gap there will be additional order of the same direction and a bigger lot size. It will continue like so until max number of trades is reached. The entire basket will be either closed on TP points, calculated from basket average price or on a Total Loss in Account %
Lot Method - Grid / Pyramid
Entry Signal - Always ON
Filters - Max Trades, Min Price Gap
SL & TP - Basket SL and TP
Trades Management - Max Profit / Loss %
GIF below shows the whole process. Please, feel free to repeat.
Modifying Built-In Parts
When you are ready for more, you can start modifying existing parts and adding them into Bots Builder as custom parts.
Let us say you want to change some default inputs parameters, change their order or even add / remove some of them.
I will show below how to do all of it.
1. Making a Snippet and a Scheme from a built-in part
To make any modification you need to make a snippet and a scheme from existing part. Like so:
2. Modifying Scheme
Let us add another MAs parameter to it - MAs Applied Price.
To do so we need to add another element to the scheme, connect it to MAs elements and adjust inputs appearance order, like so:
3. Exporting scheme as a custom signal
In order to use this new modified scheme in Bots Builder together with existing parts, we need to export it into Bots Builder as a custom part.
To so we need to start exporting procedure and assign require elements. Like in the gif below.
4. Using Custom Parts together with existing parts
Now our new custom part is ready to be used together with all existing parts. Let us again build MAs crossover example, but now using our custom part.
Creating Custom Signals From Scratch
Now let us create a completely new custom Entry signal.
Signal will be as follows. If previous day closed above the day before that, and if current day open is above previous day close, we enter a buy trade. The opposite for sell.
We need to start with building a new signal template.
After that we need to create our entry conditions.
And next we need to export it to Bots Builder as a Custom Signal
More Features / Functionality
Some other options / features and functionality is described below.
Elements Bar
You can set default parameters to every element in Elements bar. So, when you drag the element from it into a scheme, it already has preset defaults.
There are 2 ways to do that.
1. Clicking on the element in Elements Bar and setting the parameters for every element individually
2. Adjusting parameters via Elements Bar Parameters window.
Like so:
Schemes
Gif below shows how you can:
1. Align elements to invisible grid, so the scheme layout looks more clear
2. Select elements one by one using Ctrl + Click on element
3. Select multiple elements using Ctrl + Click&Drag with selected area
4. Duplicate / delete selected elements
5. Arrange order in which scheme's inputs elements will be shown in the .mq source code file and generated EA
6. Arrange scheme's ends execution order, if needed
Additional Materials
- Bots Builder Pro introduction video: https://www.youtube.com/watch?v=nE7ppjAxOqg
- Mission Automate introduction video: https://www.youtube.com/watch?v=Vj40eQEUhOU
- This article https://www.mql5.com/en/articles/4951 shows in details how to build the schemes / strategies from scratch, using only available elements. Some data is outdated, but the general concept is the same.