Modification of Existing EA | Adding OR/ELSE IF Functions to Existing EA.

MQL4 Indicators Experts

Job finished

Execution time 9 days
Feedback from customer
A pleasure to work with, very patient and understanding & would have no problem working with Maxwell again.
Feedback from employee
I appreciate and am honored working with you. I look forward to more endeavors. Thank you.

Specification

I have an algorithm which is based on candlestick formations - specifically the hammer candle formation. 

Previously, the algorithm only executed short positions on bearish hammers & long positions on bullish hammers.

Now, however, I'm wanting to introduce inverse hammers, but keeping the wicks in the same positions (i.e., extended lower wicks for short positions and extended upper wicks for long positions)

It's not so much the interpretations of the global & local declarations themselves that are the issue, but it's the placement of the brackets that needs to be altered, as well as maybe introducing the "OR" or "ELSE IF" logic but I'll leave that up to you.

The instructions I'm needing it to follow - in layman’s terms - is the following:

"If '(BarTime != Time[0])' is true,
then assess if '(hammerHeadClose < hammerHeadOpen)' is True.
If (hammerHeadClose < hammerHeadOpen) is True, then assess if all of it's child statements are true. 
If all of its child statements are also True, then execute a position.

Alternatively (OR/ELSE IF) if '(hammerHeadClose > hammerHeadOpen)' is true, 
then assess if all of it's child statements are true.
If all of its child statements are true, then execute a position”.  

Therefore, if(BarTime != Time[0]) must always be TRUE, but dependant on weather  '(hammerHeadClose < hammerHeadOpen)' or '(hammerHeadClose > hammerHeadOpen)' will determine which set of child statements will be assessed to determine if a poition should be open.

Obviously (hammerHeadClose > hammerHeadOpen) & (hammerHeadClose < hammerHeadOpen) are mutually exclusive criteria (the closing price can either be above the opening or below the opening - doji's aren't allowed), there is no point in the EA assessing the child statements under (hammerHeadClose > hammerHeadOpen) when (hammerHeadClose < hammerHeadOpen) and visa-versa.

To put it another way "if(BarTime != Time[0]), assess "if(hammerHeadClose > hammerHeadOpen)". 
If "if(hammerHeadClose > hammerHeadOpen)" is FALSE (for example), go straight to if(hammerHeadClose < hammerHeadOpen) and assess all child statements here".

I hope this helps, if you need any clarification, let me know. 

The code in question is on line 315 (short position criteria) and line 795 (long position criteria).

I have enclosed documentation for the EA which includes the explanations to the Global Declarations which you will come across.


if(BarTime != Time[0])
     
     {
     
       if((hammerHeadClose < hammerHeadOpen)

         && (bearHammerHead >= Transform(candleBodyLength,2))
         && (bearHammerHandle!=0 && (bearHammerHead / bearHammerHandle) <= hammerHandlePct)
         && (bullRetracementCandle!=0 && (bearHammerHead / bullRetracementCandle) <= hammerHeadPct)
         && (bullRetracementCandle!=0 && (initialTrendBearCandle / bullRetracementCandle) <= retracePercentage)
         && (bullRetracementCandle >= Transform(candleBodyLength,2))
         && (trendFast < trendSlow)
         && (momentumFast < momentumSlow)
         && (NewBar)
         && (spread <= MaxSpread)
         && (hourOfDay >= startingHour && hourOfDay < endingHour)
         && (OrdersTotal()== 0))
         
       if((hammerHeadClose > hammerHeadOpen)

         && (bullHammerHead >= Transform(candleBodyLength,2))
         && (bearHammerHandleInv!=0 && (bullHammerHead / bearHammerHandleInv) <= hammerHandlePct)
         && (bullRetracementCandle!=0 && (bullHammerHead / bullRetracementCandle) <= hammerHeadPct)
         && (bullRetracementCandle!=0 && (initialTrendBearCandle / bullRetracementCandle) <= retracePercentage)
         && (bullRetracementCandle >= Transform(candleBodyLength,2))
         && (trendFast < trendSlow)
         && (momentumFast < momentumSlow)
         && (NewBar)
         && (spread <= MaxSpread)
         && (hourOfDay >= startingHour && hourOfDay < endingHour)
         && (OrdersTotal()== 0))
 
         {

         bool OpenShort = OrderSend(.....);

         /*----------code----------*/   
        /*----------code----------*/    
        /*----------code----------*/    

         }

}

Responded

1
Developer 1
Rating
(169)
Projects
204
30%
Arbitration
25
40% / 44%
Overdue
12
6%
Free
2
Developer 2
Rating
(3)
Projects
4
0%
Arbitration
2
0% / 100%
Overdue
1
25%
Free
3
Developer 3
Rating
(155)
Projects
239
70%
Arbitration
3
67% / 33%
Overdue
20
8%
Free
4
Developer 4
Rating
(213)
Projects
316
34%
Arbitration
63
37% / 40%
Overdue
102
32%
Working
5
Developer 5
Rating
(298)
Projects
478
40%
Arbitration
105
40% / 24%
Overdue
82
17%
Loaded
Published: 2 codes
6
Developer 6
Rating
(5)
Projects
11
18%
Arbitration
0
Overdue
3
27%
Free
7
Developer 7
Rating
(42)
Projects
47
30%
Arbitration
12
17% / 75%
Overdue
6
13%
Free
Similar orders
can you help me with I have an indicator that I built and I work with PickMyTrade. The entries come through the alerts I get from Trading View . Trading View needs to send an alert and PickMyTrade executes a trade at that exact same second. Now, I have a problem in Trading View with the synchronization between the alert and the signal. I have a box that I built for a trade. It needs to output the box and get an
Xauusd Trend EA 30+ USD
Key Technical Specifications Platform & Engine: Native MetaTrader 5 (MQL5) using CTrade execution class. Trading Strategy: Dual-directional breakout grid strategy featuring dynamic price validation and overall equity trailing stops. Order Capacity: 70 total pending orders max (35 Buy grid levels, 35 Sell grid levels). Core Features & Execution Rules Feature Specification Details Price Direction Guard Automatically
Потрібен робот, який відкриває відкладені ордери в напрямку, протилежному поточній ринковій ціні (ордер Sell Stop, якщо ринкова ціна вище, і ордер Buy Stop, якщо ринкова ціна нижче). Модельований сценарій – хибний прорив
Buying profitable EA Budget up to 1.5k (Serious offer) Specification EN I will pay 1.5k (negotiable) for an EA for existing MT4 that generates a minimum of 5% or higher a month consistently no monthly DD more than 5% on ,5k account Please send demo version with optimal settings so I can test, if it performs in a strategy tester i will also need option to forward test it in a demo account. Developer should be willing
1- The EA must h ave a unique strategy specialized on make trades with very very low RRR, so basicaly risking 1475$ to make 100$, with an ammount adjustable of trades per day. (This is very important that i wish in 100 trades, it makes a maximum of 10 trades of mistake, maybe less...) 2- The EA must have the strategy specialized on INDEX CFD. 3- The EA must make each trade with more than 3 minutes, and less than 12h
I need an MT4 Expert Advisor (MQL4). 1. Open one Buy and one Sell trade simultaneously. 2. Adjustable lot size (default 0.01). 3. Stop Loss on both trades. 4. If one trade hits Stop Loss: - Do not open a replacement trade. - Leave the remaining trade open. 5. Optional trailing stop: - On/Off switch. - Adjustable distance. 6. When the remaining trade closes: - Open a new Buy and Sell pair. - Repeat continuously
Hi i am looking for a coder whose designed a future EA that trades nas100. I need the system to pass future props and be used on live account as well. It can be running on mt5 and i could use a trade copier. It should have a very good growth with your strategy to it. I would require a test file with some history of it being used on the account. Only apply if you read this
*JOB TITLE:* `MQL5 EA: 8-Indicator Confluence Bot for XAUUSD, US30, NAS100, DE40 + News + DD Protection` *BUDGET:* $300 - $400 *TIMELINE:* 10 - 14 days *PLATFORM:* MetaTrader 4 & 5 *ATTACHMENTS:* `Indicators.zip` = 10 indicators + 5 screenshots with all settings --- *1. CORE TRADING LOGIC - ON CANDLE CLOSE ONLY* *BUY when ALL conditions are TRUE:* 1. Price > 200 SMA 2. `Reversal Indicator` = UP arrow/dot 3
Hi, I Wanne have a trading robot that give me signals for short buy and sell. And only for all currency in forex trading and also can use it on mt5
ROBOTFORX_V7 40+ USD
i have the robotforx_v7 code but am looking for an experinced developer to improve my code i want it to capture quick moves on 5mins it should be able close like ten trades in small profits

Project information

Budget
30+ USD