An Expert Advisor based on Moving Averages and Fair Value Gaps

Tâche terminée

Temps d'exécution 18 jours
Commentaires du client
This developer was very patient. We had several times of discussing the EA back and forth and he helped me get it doing what I wanted it to do. I highly recommend this developer.
Commentaires de l'employé
He is one of thegood customers I have worked with here, his communucation skills is very okay and patient enough to explain all requirements. Nice working with you. Thanks

Spécifications

Requirements Specification

Forex Trending, April 2025, MT4

 

OVERVIEW OF THE STRATEGY

·      This EA is for the purpose of running the optimization feature in MT4 to find the best settings for the strategy. It will have many parameters.  It is to be used on Forex pairs.

·      Not all of the parameters will be used all of the time. If a value of “111” is entered into the parameter, that parameter will not be used. Zero “0” will be a valid parameter number. All parameters should have the option of being turned off by entering “111.”

·      Moving Averages will be used to determine when price is trending.

·      Moving Averages will also be used to determine whether to buy or sell.

·      When price is trending, the EA will enter trades based on Fair Value Gaps.

 

MOVING AVERAGES

·      Three Moving Averages will be used. A parameter will determine whether the Moving Averages are Simple Moving Averages or Exponential Moving Averages.

·      A parameter determines if the moving averages are displayed on the MT4 screen:

       -   Show MA1 on the screen

       -   Show MA2 on the screen

       -   Show MA3 on the screen

·      The first and second moving averages (MA1 and MA2) will have the following parameters:

       -   If MA1 is above MA2, only enter buy positions.

       -   If MA1 is below MA2, only enter sell positions.

       -   Number of bars to average for MA1

       -   Number of bars to average for MA2

       -   Number of bars to average for MA3

       -   MA1 is a [Simple Moving Average, or, Exponential Moving Average]

       -   MA2 is a [Simple Moving Average, or, Exponential Moving Average]

       -   MA3 is a [Simple Moving Average, or, Exponential Moving Average]

·      The third moving average (MA3) will be used to determine if price is in a trend. It will determine this by the percent change of the moving average from one bar to another (this is the same idea as determining the slope on a graph). When price is moving sharply in one direction, the MA will recognize it by the percent change in the MA.

       -   The “Percent Change” will be calculated this way:

               -  The latest Moving Average reading will be “x.”

                The previous Moving Average reading (from the previous bar) will be “y.” (see diagram below)

A graph with green and purple arrows

Description automatically generated

                The Moving Average value “x” will have “y” subtracted from it.

                That number will then be divided by the Moving Average value “x”.

                Then, the number will multiplied by 10000 (ten thousand).

                This will give the Percent Change number. (Side note: to get the actual percent change, we would only multiply by 100, but that would produce a very small decimal value and I want the number larger so it’s easier to work with).

                The formula looks like this: (x-y) / x * 10000

                An example:

A graph with a line and arrow pointing to the top

Description automatically generated with medium confidence

(1.08458 – 1.08435) = 0.00023

0.00023 / 1.08458 = 0.00021206

0.00021206 * 10000 = 2.12063

Percent Change = 2.12063

 

An example where price is descending:

(it always produces a negative number when descending)

(1.42602 - 1.42636) = -0.00034 / 1.42602 = -0.00023842 * 10000 = -2.38423

Percent Change = -2.38423

 

A graph with arrows pointing to a bar

Description automatically generated

 

                (A parameter, a decimal value) If Percent Change is greater than _____, enter buy positions. (That is, do not enter buy positions unless Percent Change is higher than that number.)

                (A parameter, a decimal value) If Percent Change is less than _____, enter sell positions. (That is, do not enter sell positions unless Percent Change is below that number.) (This will be a negative number.)

                (A parameter) Show Percent Change on the screen.


IDENTIFYING FAIR VALUE GAPS (FVG)

·      A Fair Value Gap is a three-candle setup. The FVG exists where the first and third candles do not overlap.

A graph of a candle stick graph

Description automatically generated

·      (A parameter) Show FVGs on the MT4 screen.

·      Bullish FVGs will be green.

·      Bearish FVGs will be red.

·      A FVG will only be considered after the third candle is formed. The FVG will not be considered while the third candle is forming.

 

OPENING A TRADE

·      I will not be using bracket trades. No Stop Loss or Take Profit will be entered. Rather, the EA will open or close trades according to rules that will simulate Stop Loss and Take Profit. This is because some brokers don’t allow bracket orders.

·      The EA is to open only one trade at a time. If a trade is currently open, the EA will not open another trade until after the first one is closed.

·      When a bullish FVG is formed and price comes back and retouches the top of it, enter a buy trade. Price must come back and retouch the FVG within [a parameter: a whole number] bars.

·      When a bearish FVG is formed and price comes back and retouches the bottom of it, enter a sell trade. Price must come back and retouch the FVG within [a parameter: a whole number] bars.

A graph with arrows and candles

Description automatically generated

·      Only open trades between the hours of [a parameter: a time] and [a parameter: a time]. I would like to have three of these to allow for trading at specific times of day.

·      Only open trades between the hours of [a parameter: a time] and [a parameter: a time].

·      Only open trades between the hours of [a parameter: a time] and [a parameter: a time].

·      All orders will be market orders.

·      If an order, or part of an order, is not filled within [a parameter: a whole number, a number of seconds], cancel the part of the order that is not filled.

·      Only open a trade if the spread is equal to or less than [a parameter: a decimal number] pips.

 

CLOSING A TRADE

·      Close the trade if price moves against the position the distance of the FVG plus[a parameter: a decimal number]pips.

A screen shot of a graph

Description automatically generated

       -   The green bar in the diagram is a bullish FVG. It formed and price came back and retouched it. Price then extended out the bottom of the FVG by 3 pips. The trade would close if this parameter was set to 1, 2, or 3.

       -   For example, if the FVG is 3 pips wide and this setting is set to 2, the trade would close when price went against the opening price by 5 pips.

       -   Another example, if the FVG is 4 pips wide and this setting is set to 3, the trade would close went price went against the opening price by 7 pips.

·      This number of pips is called the “Risk.” The Risk is the width of the FVG plus the number of pips in this parameter.

       -   An example:

A graph with arrows pointing to a graph

Description automatically generated

       -   The minimum Risk to take is [a parameter: a decimal number] pips.

       -   The maximum Risk will be[a parameter: a decimal number] pips. The Risk will be limited to this number of pips even if the FVG calls for more.

       -   If the Risk is over [a parameter: a decimal value], do not open the trade.

·      Close the trade if price moves profitably [a parameter: a decimal number] times (multiplied by) the Risk. This is the Risk-to-Reward ratio.

·      For example, if the Risk is 5 pips and the value entered in the parameter is 2, close the trade at 10 pips profit.

·      Another example, if the Risk is 4 pips and the value entered in the parameter is 1.5, close the trade at 6 pips profit.

·      Another example, if the Risk is 5 pips and the value entered in the parameter is .9, the EA will multiply 5 by .9 which is 4.5. The trade will be closed when the trade is in profit by 4.5 pips.

·      [A parameter] If price reaches 1/2 way in profit but moves back to the entry price, close the trade. (This is simulating moving the Stop Loss to the entry point when price is 1/2 toward the Take Profit.)

·      OTHER WAYS TO CLOSE THE TRADE:

       -   Close the trade when in profit [a parameter: a decimal number] pips. (I may enter “111” in the parameters above and close the trade after a set number of pips instead.)

       -   Close the trade when in loss [a parameter: a decimal number] pips.

       -   Close the trade if price goes against its highest point by [a parameter: a decimal number] pips. (This is simulating a trailing Stop Loss.)

·      If the account balance drops below [a parameter: a dollar amount], close all trades and open no more trades.

 

OTHER CONSIDERATIONS

·      The number of lots to buy is [a parameter: a decimal number].

·      I would like a copy of the source code file, the mq4 file.

 

I WOULD LIKE THE PARAMETERS TO BE LABELLED THIS WAY:

·      MA1 is a [Simple Moving Average, or, Exponential Moving Average]

·      MA2 is a [Simple Moving Average, or, Exponential Moving Average]

·      MA3 is a [Simple Moving Average, or, Exponential Moving Average]

·      Show MA1 on the screen

·      Show MA2 on the screen

·      Show MA3 on the screen

·      If MA1 is above MA2, only enter buy positions.

·      If MA2 is below MA2, only enter sell positions.

·      Number of bars to average for MA1

·      Number of bars to average for MA2

·      Number of bars to average for MA3

·      Show Percent Change on the screen

·      (A parameter, a decimal value) If Percent Change is greater than _____, enter buy positions. (That is, do not enter buy positions unless Percent Change is over that number.)

·      (A parameter, a decimal value) If Percent Change is less than _____, enter sell positions. (That is, do not enter sell positions unless Percent Change is below that number.) (This will be a negative number.)

·      Show FVGs on the MT4 screen.

·      Price must come back and retouch a FVG within [a parameter: a whole number] bars.

·      Only open trades between the hours of [a parameter: a time] and [a parameter: a time]. I would like to have three of these to allow for trading at specific times of day.

       -   Only open trades between the hours of [a parameter: a time] and [a parameter: a time].

       -   Only open trades between the hours of [a parameter: a time] and [a parameter: a time].

·      If an order, or part of an order, is not filled within [a parameter: a whole number, a number of seconds], cancel the part of the order that is not filled.

·      Only open a trade if the spread is equal to or less than [a parameter: a decimal number] pips.

·      Close the trade if price moves against the position the distance of the FVG plus [a parameter: a decimal number] pips.

·      The minimum Risk to take is [a parameter: a decimal number] pips.

·      The maximum Risk to take is [a parameter: a decimal number] pips.

·      If the Risk is over [a parameter: a decimal value], do not open the trade.

·      Close the trade if price moves profitably [a parameter: a decimal number] times the Risk. 

·      If price reaches 1/2 way in profit but moves back to the entry price, close the trade.

·      Close the trade when in profit [a parameter: a decimal number] pips.

·      Close the trade when in loss [a parameter: a decimal number] pips.

·      Close the trade if price goes against its highest point by [a parameter: a decimal number] pips. (This is simulating a trailing Stop Loss.)

·      If the account balance drops below [a parameter: a dollar amount], close all trades and open no more trades.

·      The number of lots to buy is [a parameter: a decimal number].


Répondu

1
Développeur 1
Évaluation
(280)
Projets
351
29%
Arbitrage
37
27% / 65%
En retard
10
3%
Chargé
2
Développeur 2
Évaluation
(7)
Projets
6
0%
Arbitrage
4
25% / 75%
En retard
2
33%
Gratuit
3
Développeur 3
Évaluation
(64)
Projets
83
28%
Arbitrage
9
33% / 56%
En retard
9
11%
Gratuit
Publié : 1 code
4
Développeur 4
Évaluation
(274)
Projets
403
28%
Arbitrage
40
40% / 50%
En retard
1
0%
Gratuit
5
Développeur 5
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
6
Développeur 6
Évaluation
(85)
Projets
174
44%
Arbitrage
3
100% / 0%
En retard
5
3%
Gratuit
Publié : 1 code
7
Développeur 7
Évaluation
(70)
Projets
91
25%
Arbitrage
26
19% / 54%
En retard
25
27%
Gratuit
8
Développeur 8
Évaluation
(367)
Projets
449
55%
Arbitrage
24
54% / 17%
En retard
30
7%
Occupé
9
Développeur 9
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Travail
10
Développeur 10
Évaluation
(11)
Projets
15
20%
Arbitrage
6
0% / 100%
En retard
3
20%
Gratuit
11
Développeur 11
Évaluation
(5)
Projets
5
60%
Arbitrage
1
0% / 0%
En retard
2
40%
Gratuit
Publié : 1 code
12
Développeur 12
Évaluation
(162)
Projets
289
35%
Arbitrage
18
22% / 61%
En retard
43
15%
Gratuit
13
Développeur 13
Évaluation
(62)
Projets
90
29%
Arbitrage
24
13% / 58%
En retard
7
8%
Travail
14
Développeur 14
Évaluation
(64)
Projets
144
46%
Arbitrage
20
40% / 20%
En retard
32
22%
Travail
15
Développeur 15
Évaluation
(298)
Projets
478
40%
Arbitrage
105
40% / 24%
En retard
82
17%
Chargé
Publié : 2 codes
16
Développeur 16
Évaluation
(319)
Projets
568
35%
Arbitrage
83
30% / 45%
En retard
206
36%
Chargé
17
Développeur 17
Évaluation
(20)
Projets
26
38%
Arbitrage
6
33% / 50%
En retard
0
Gratuit
18
Développeur 18
Évaluation
(1)
Projets
1
0%
Arbitrage
0
En retard
0
Gratuit
19
Développeur 19
Évaluation
(78)
Projets
246
74%
Arbitrage
7
100% / 0%
En retard
1
0%
Gratuit
Publié : 1 article
Commandes similaires
C'est un Expert Advisor (EA) MQL5 pour MetaTrader 5, conçu pour l' XAUUSD , combinant un filtre de tendance et une grille adaptative avec gestion de panier ("basket") et protections contre le drawdown. Version 1.00. Logique de trading Filtre de tendance (H4 par défaut) • EMA rapide (50) vs EMA lente (200) pour déterminer la direction (UP/DOWN) • Filtre ADX (période 14, seuil 18) pour éviter de trader en
My EA is semi Auto EA..with Master and slave concept Using Heiken Ashi +Heiken Smooth and Moving Average What to do?1. Remove some previous feature 2.Change some rules of 4 slave to pending Order 3. Check the coding is clean. 4. create panel dialog box
I currently sell a white-label XAUUSD EA, but the existing supplier owns the source code. I now need a new, independently developed EA and licensing system that my company fully owns and controls. I am not requesting decompilation or copying of proprietary code. Existing settings, presets and trading examples will be provided as reference. The developer must first identify any missing strategy rules before
I DO NOT need any programming or strategy development. I already have a working NinjaTrader 8 automated strategy based on a 3/5 EMA crossover. I need you to run my existing strategy through NinjaTrader Strategy Analyzer/Optimizer, test the existing adjustable parameters, and find robust settings with the best profit factor and lowest reasonable drawdown. I will provide the existing NinjaScript ZIP. I do not want the
I am looking to acquire an EXISTING and PROVEN MetaTrader 5 Expert Advisor. I am NOT looking for someone to develop a random new strategy from scratch. The objective is to find a robust EA with an existing track record, verify its performance and robustness, and purchase the MQL5 source code together with clearly defined commercial rights. MAIN REQUIREMENTS The EA should meet most or all of the following
Looking to acquire an existing, proven EA. Not looking for new strategy development. REQUIREMENTS — non-negotiable: Minimum 12 months verified LIVE history (Myfxbook or MQL5 Signals, real money — not demo, not backtest) Hard stop loss on EVERY trade, set at order placement NO martingale, NO grid, NO averaging into losers, NO lot multiplication after a loss Max historical drawdown under 30% Minimum 5 trades per
Platform: TradingView Programming Language: Pine Script v6 Type: Custom Indicator Project Name: Scalping Reaction Zones + Valid Order Blocks MAIN GOAL I need a custom TradingView indicator for scalping. The indicator must detect: 1. Reaction / Explosion Zones 2. Valid Order Blocks 3. Combined Reaction Zone + Order Block zones The indicator should NOT generate: Buy signals Sell signals TP SL Entry signals Trading
Hello, I trade on HFM MT5. Need SCALPING EA for scalping, budget $30. SYMBOLS: XAUUSD (GOLD), US30, NAS100, GER40, EURUSD TIMEFRAME: M1 and M5 PLATFORM: MT5, must work on HFM VPS STRATEGY: - EMA 9 crosses EMA 21 - RSI 14: BUY only if RSI >45, SELL only if RSI <55 - Bollinger Bands: Only trade when price returns inside BB after breakout - 1 trade at a time per symbol - SL: 150 points Gold / 100 points indices (must be
Project Description I am looking for an experienced MQL5/MT5 Expert Advisor developer to develop an automated trading EA for XAUUSD on the M3 timeframe , running on an Exness account . The EA will automate a manual strategy based on SNR/GAP zones , using two setup types: Price Rejection Price Correction The EA should identify valid BUY/SELL setups around predefined SNR/GAP areas, apply configurable RSI, SMA, EMA and
I need an MT5 Expert Advisor for XAUUSD (Gold) running on an Exness account. STRATEGY LOGIC The exact entry and exit rules will be provided in writing before development starts. Please quote for a single rule-based strategy with clearly separated logic, so the rules can be adjusted later without rewriting the whole EA. RISK MANAGEMENT (this is the priority of the project) - Risk per trade as a percentage of account

Informations sur le projet

Budget
150 - 200 USD
Délais
de 1 à 3 jour(s)