Lavoro terminato
![](https://c.mql5.com/i/avatar/avatar_na2.png)
![](https://c.mql5.com/i/avatar/avatar_na2.png)
Specifiche
This EA is supposed to work like this (inputs are in blue):
The selected MA crosses the selected price level up or down. The EA opens a position in that direction with a market order at next candle open (based on the MA Timeframe) with the size as selected in Size on first cross. When the MA crosses the price level up, it will buy and when the MA crosses the price level down, it will sell.
For every cross after the first cross, it will keep doing the same as described above, except that now it uses the selected Size on sequential crosses.
If for example I fill in the following in the input fields:
Price level: 115
Size on first cross: 1
Size on sequential crosses: 2
Say that the current price is at 114.5, then with the above inputs, it will buy 1 lot/share/future/cfd with a market order when the MA closed beyond the 115 price level, and if it crosses down the 115 level afterwards it will sell 2. In this example there will always be a position open at any time, because 1 long position – 2 sells = 1 short position.
It is important that the EA only takes a trade when it actually crosses the price level and doesn’t buy right away when for example the EA was activated when the current price level at that moment was 116 because the EA sees that “116 is greater than the selected price level, so buy now”. It needs to actually cross the level.
These are all the inputs for this EA:
Selections:
ATR Timeframe | 1 min – 1 month |
ATR Length | 1 - infinite |
==== < Moving Average > ==== | Selections: |
| ||
MA Method | AMA/SMA/EMA/VWMA/WMA/DEMA/TEMA/HMA |
| ||
MA Timeframe | 1 min – 1 month |
| ||
MA Period | 1 – infinite |
| ||
|
|
| ||
==== < Key Level > ==== | I n steps of : |
| ||
Price level | 0.00001 |
| ||
Size on first cross | 0.01 |
| ||
Size on sequential crosses | 0.01 |
| ||
==== < TP/SL> ==== | I n steps of : |
| ||
Profit Target | 0.1 |
| ||
Stop Loss | 0.1 |
| ||
Trailing Stop Loss | 0.1 |
| ||
|
|
| ||
==== < Confirmation > ==== | Selections: | |||
Use | False/True | |||
MA Method | AMA/SMA/EMA/VWMA/WMA/DEMA/TEMA/HMA | |||
MA Timeframe | 1 min – 1 month | |||
MA Period | 1 – infinite | |||
Explanation per input that are not explained yet:
MA Method
Selectable MA types (all based on closing price):
- Adaptive Moving Average
- Simple moving average
- Exponential moving average
- Volume weighted moving average (external indicator that I will provide. Tick data need to be used as source)
- Linear weighted moving average
- Double exponential moving average
- Triple exponential moving average
- Hull moving average (external indicator that I will provide)
The MAs need to be put into the EA in this exact order.
Price level
This price level I should be able to fill in manually. This could be for example 1.18456 or 115.11 or 12394.75.
TP/SL (section)
These work based on the selected ATR Timeframe and ATR length. The EA will close the trade with a market order when the Profit Target/Stop Loss/Trailing Stop Loss is hit. The size for these should follow the inputs size on first cross and size on sequential crosses, so that it always only closes out the current open positions and never more or less.
Confirmation (section)
These inputs work the exact same as in the Moving Average section. This confirmation can be turned on by selecting “true”, or off when selecting “false” as input.
What it does is that the EA will only take a new position when the criteria that are selected in the confirmation section are met (for the first cross as well as all sequential crosses).
If for example the following confirmation inputs are selected:
MA Method: SMA
MA Timeframe: 15 min
MA Period: 1
The EA will only buy when the selected MA in the Moving Average section crossed the selected price level, and the current price level is also above the 15 min 1 SMA. The same is true for the reverse when selling instead of buying; then the current price level needs to be below the 15 min 1 SMA.
Note:
Both price level and MA and the confirmation MA should be visible on the chart, so that crossovers can easily be spotted and analysed.