Haydn's Mid Week Momentum EA

MQL4 Esperti

Lavoro terminato

Tempo di esecuzione 22 giorni
Feedback del dipendente
Thanks for very detailed description of initial specs and all testing aspects!
Feedback del cliente
Alexander is an amazing coder. The last EA I got was a challenge but he solved all the problems. He is fast, knowledgeable and very professional. I will keep using him for all my coding.

Specifiche

Dear Alexander,

I have another EA which I was hoping you would be available to code for me.  The calculation for the buy and sell signal is slightly different, but the money management system, the stop losses, the error reporting and so on are the same as the last EA you coded for me:

https://www.mql5.com/en/job/64535

I would be happy if you just copy those across to this new EA as well.

I have described the EA below.  If there is anything that is not clear don't hesitate to ask and I will try to explain more clearly.

Best regards,

Haydn




Settings Adjusted by User

 


Day and Time the EA executes

(this EA should execute on this day of the week at this time every week until stopped – if for some reason this time does not exist on the chart eg if the user sets a day and time for which there was no trading then no position is opened and the EA continues to wait until the day and time occur)

 

Day of Week:  Wednesday

Time of Day:  15:00

(At the day and time set by the user here I want the EA to check the three time periods set by the user below

On the chart they would look like this:  )

GBPUSD H1 chart labelled 



 

The Three Time Periods to check to create the Buy/Sell Signal

 

Period 1

FromStartPeriod1: 65

(user specifies the bar back from the start bar which is the start of period 1, in the example above this is 65 bars back from the start bar)

FromBarPart1:  Open

(want to perform the calculation described below using the open price of this bar)

ToStartPeriod1: 49

(the user specifies the last bar of period 1)

ToBarPart1: Close

(want to perform the calculation described below using the closing price of this end bar of period 1)

 

Period 2

FromStartPeriod2: 48

(user specifies the bar back from the start bar which is the start of period 2)

FromBarPart2:  Open

(want to perform the calculation described below using the open price of this bar)

ToStartPeriod2: 25

(the user specifies the last bar of period 2)

ToBarPart2: Close

(want to perform the calculation described below using the closing price of this end bar of period 2)

 

Period 3

FromStartPeriod3: 24

(user specifies the bar back from the start bar which is the start of period 3)

FromBarPart3:  Open

(want to perform the calculation described below using the open price of this bar)

ToStartPeriod3: 1

(the user specifies the last bar of period 3)

ToBarPart3: Close

(want to perform the calculation described below using the closing price of this end bar of period 3)



Other user defined settings

Lot Size = 0.3

Money Management = False

(see below for description of how I would like this EA to calculate lot size when money management is turned on.  If money management is turned off then EA will use the lot size specified here.  This is the same as the money management you coded for me in my other EA, https://www.mql5.com/en/job/64535)


Stop Loss = 1500

Take Profit = 0

(as I understand EAs the SL and TP levels are specified in points not pips.  I use a five digit broker and so I need to specify my stop loss x 10, to say 150 pips for me I will need to enter 1500.  When value = 0 no SL/TP is set)

Trailing Stop Trigger Distance (in points): 250

Trailing Stop Min Trailing Step (in points): 50

Trailing Stop Trailing Distance (in points): 50

Trailing Stop 

(the same system that you included in my last EA was great)


MarginPrice = 155

PercentageofEquity = 0.1

LotSizeMultiplier = 0.1

(To calculate the lot size to take when money management is turned on the user needs to specify what their broker charges for margin.  That value is then used to calculate the lot size.  The user also specifies what percentage of equity should be used to open positions.  Lastly the user selects what order of magnitude lot size to use, ie to use micro lots the user would enter 0.01, to use mini lots the user would enter 0.1 and to use standard lots the user would enter 1 – if possible can these three options be offered as a drop down selection as it will one of those three that should be selected here.  The default value can be 0.1)

 

Magic Number:  14444

Check for Manual Positions = False

(Under the section below “Each time the EA is triggered” the EA should check for open positions using this magic number and whether the free margin is less than Account Equity.  This variable allows the user to turn off that second check)

 

ClosingDay = Sunday

ClosingTime = 21:45

 


 

The calculation that generates the buy/sell signal

 

Period 1 close – Period 1 open

If period 1 close – period 1 open < 0

Then Signal1 = -1

Else Signal1 = +1

(here we are calculating whether the price went up during period 1 or whether the price went down during period 1.  If the close price is higher than the open price (ie the period is the equivalent of a green bar) then when you subtract the open price from the close price the value for period 1 should be above zero.  If the value for period 1 is less than zero it means that the close price was less than the open price (the period was the equivalent of a red bar).  To enable that value to be used in a calculation if the value of period 1 is less than zero (a red bar) we will assign period 1 a value of -1.  If the value of period 1 is greater than zero (a green bar) we will assign period 1 a value of +1.

 

I hope that makes sense)

 

Period 2 close – Period 2 open

If period 2 close – period 2 open < 0

Then Signal2 = -1

Else Signal2 = +1

 

Period 3 close – Period 3 open

If period 3 close – period 3 open < 0

Then Signal3 = -1

Else Signal3 = +1

 

BuySellSignal = Signal1+Signal2+Signal3

 

If BuySellSignal > 0 then open Long position with X lot size with stop loss and take profit

(using the Stop Loss and Take Profit values set by the user, the lot size will be the value set in the money management section if Money Management is turned on, or the static user specified value if Money Management is turned off)

 

If BuySellSignal < 0 then open Short position with X lot size with stop loss and take profit

 


Money Management

 (Note:  This was the same money management system that I asked for in my last EA you coded for me:  https://www.mql5.com/en/job/64535

Feel free to include the same thing here)


To calculate the Lot Size to open

 

LotSize = (Equity*PercentageofEquity/MarginPrice)* LotSizeMultiplier

(And then just use the first decimal place.  E.g. if I had Equity of $10,260.24 with a margin setting of $155 and wanted to only use 10% of my equity, then I would get:

 

($10,260.24 * 0.1 / $155)*0.1

= 0.6619509677419355

= 0.6

 

(I don’t want to round up or down I just want to use the first decimal place here, ie in the number above, 0.6619509677419355, I want to use 0.6 not 0.7.

 

So as I understand it we can’t use NormalizeDouble(LotSize, 1) since that will normalize to the first decimal place but it will do it by rounding and I would end up with a lot size of 0.7 in this example. E.g. see discussion at: https://www.mql5.com/en/forum/113562

 

To only use the first digit without rounding I think we have to first of all multiply the raw LotSize number by 10 to move the first decimal place to the left hand side of the decimal point:

0.6619509677419355 x 10

= 6.619509677419355

Then convert to an integer which will remove all the decimal places:

= 6

Then convert back into a double and divide by 10

=0.6

 

If that is not possible then just normalize double to two decimal places, ie NormalizeDouble(LotSize, 2)

 

Again, I hope that makes sense)

 


Each time the EA is triggered

 

(Each time the start day and time set by the user occurs, eg each Wednesday at 15:00 in this example, the EA should check if there is already any positions open.  Check for open positions in two ways:

 

·         Check that there are no positions with this Magic number open

 

·         Also check that Free Margin is not less than Account Equity (so that way any manually opened trades are detected)

 

If any of these checks are true then don’t open anymore positions and wait until next week to check again

 

Note: The Free Margin check can be turned off by the user setting listed above)

 

 

 


Error Return

(You probably have a better idea of the sorts of values that the EA needs to check and what sorts of errors need to be reported than I do.  The error reporting you included in my last EA would be fine here) 


 

Closing the Position

 

 

(The position should be closed at the day and time specified by the user)

 


Notifications

 (The opening and closing of the positions should be indicated on the chart. I am happy with the way you implemented that on the last EA you coded for me so feel free to copy that accross


(In the Journal the actions taken by the EA should be noted along with the Magic Number, eg EA [Magic Number]: Pending orders placed; EA [Magic Number]: Buy order triggered, pending sell order cancelled; EA [Magic Number]: No pending orders triggered, pending orders cancelled; EA [Magic Number]: Buy order Closed P/L =  $XX.XX.)



Con risposta

1
Sviluppatore 1
Valutazioni
(3)
Progetti
3
0%
Arbitraggio
0
In ritardo
0
Gratuito
2
Sviluppatore 2
Valutazioni
(219)
Progetti
370
42%
Arbitraggio
145
17% / 41%
In ritardo
124
34%
Gratuito
Pubblicati: 38 codici
3
Sviluppatore 3
Valutazioni
(53)
Progetti
79
18%
Arbitraggio
13
15% / 54%
In ritardo
5
6%
Gratuito
4
Sviluppatore 4
Valutazioni
(365)
Progetti
507
40%
Arbitraggio
159
17% / 74%
In ritardo
99
20%
Caricato
5
Sviluppatore 5
Valutazioni
(5)
Progetti
5
0%
Arbitraggio
5
0% / 60%
In ritardo
2
40%
Gratuito
6
Sviluppatore 6
Valutazioni
(852)
Progetti
1470
72%
Arbitraggio
122
29% / 48%
In ritardo
361
25%
Gratuito
Pubblicati: 3 articoli
Ordini simili
Your XAUUSD Buy Stop / Sell Stop Grid EA Strategy 1. Initial order placement Buy Stop orders — 5 orders Place 5 Buy Stop pending orders above the current market price. Each order is spaced 1.00 XAUUSD price unit apart. Initial lot sizes range from 0.01 to 0.05 lots . Sell Stop orders — 5 orders Place 5 Sell Stop pending orders below the current market price. Each order is spaced 1.00 XAUUSD price unit apart. Initial
I am looking for an experienced and highly competent MQL5 developer to create a bespoke, fully automated Forex Expert Advisor for Meta Trader 5 for my Apple iMac. The EA will incorporate a proprietary trading strategy involving multiple position management, dynamic trade execution, advanced profit management and sophisticated risk controls. Key technical requirements: Automated trade execution and management
Hello developers and quantitative traders, I am looking to purchase a license for an EXISTING, professionally developed MT5 quantitative portfolio Expert Advisor with a long-term, independently verifiable trading history. Purchase budget: $5,000–$15,000 USD Additional annual maintenance fee: $1,000 USD I am willing to establish a long-term commercial relationship with the developer. IMPORTANT: I am NOT looking for
SIERRA CHART 40+ USD
Hello. I have some custom chartbooks/studies that run on ACSIL C++ in Sierra Charts trading platform. I need them put into pinescript to be able to be used in trading view and look similar to the charts we are giving you. also need it to be able to work on ninja trader NinjaScript (C#)/java, and MQL4 and MQL5 for metatrader 4 and 5. You would have to assist with testing. Let me know if you can help with this task
Trading 35+ USD
Project: XAUUSD Gold Trading Robot for MetaTrader 5 I want to develop a fully automated Expert Advisor (EA) for MetaTrader 5, designed exclusively for Gold (XAUUSD) and compatible with the Exness broker. Trading Strategy: Liquidity + CHOCH + Retest Identify important buy-side and sell-side liquidity zones using previous highs and lows, equal highs/lows, and confirmed swing points. Wait for a clear liquidity sweep
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
Hello, I am a serious buyer interested in acquiring an existing, stable and profitable Expert Advisor (EA) specifically designed to: 👉 mainly (XAUUSD) or any other exchange rate This is a full purchase order. ⚠️ I'm not interested in creating a new EA from scratch. Only ready-to-use, proven systems with a real track record of performance. ✅ EA Requirements (Stringent) 📌 Symbol and Strategy ✔️ Trade Gold Only
Here is a professional, detailed requirements specification draft for your MQL5 freelance order based on your prompt: ​ Strategy Objective: Develop an automated Expert Advisor (EA) featuring a 1:3 Risk-to-Reward ratio optimized for a small starting budget. ​ Core Trading Logic: ​Execute automatic Buy and Sell trades using high-probability entry signals. ​Target a strict 90% theoretical win-rate structure through
i want to fix my gold martingale bot MT5. RSI 14 ENTRY 30 BUY 70 SELL Lot 0.02 0.04 0.07 TP 150 for all SL 90 30 30 once total daily profit is 200$ stop trading stop trading once 2 consecutives total losses stop trading if spread exceeded 30 and between hour 15 & 17 PM Move SL to breakeven point once the profit exceeded 50 from from breakeven thanks
MarketMind Breakout Pro XAUUSD H1 — Donchian Breakout EA Project type: Personal EA development and backtesting Platform: MetaTrader 5 Instrument: XAUUSD Timeframe: H1 Strategy: Donchian Channel breakout with EMA 200 Project overview This project evaluates a Donchian breakout trading strategy for XAUUSD on the H1 timeframe. The system uses channel-based breakout conditions and an EMA 200 trend filter. Historical

Informazioni sul progetto

Budget
100+ USD