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

MQL4 지표 전문가

작업 종료됨

실행 시간 9 일
고객의 피드백
A pleasure to work with, very patient and understanding & would have no problem working with Maxwell again.
피고용인의 피드백
I appreciate and am honored working with you. I look forward to more endeavors. Thank you.

명시

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----------*/    

         }

}

응답함

1
개발자 1
등급
(169)
프로젝트
204
30%
중재
25
40% / 44%
기한 초과
12
6%
무료
2
개발자 2
등급
(3)
프로젝트
4
0%
중재
2
0% / 100%
기한 초과
1
25%
무료
3
개발자 3
등급
(155)
프로젝트
239
70%
중재
3
67% / 33%
기한 초과
20
8%
무료
4
개발자 4
등급
(210)
프로젝트
311
34%
중재
63
35% / 38%
기한 초과
100
32%
로드됨
5
개발자 5
등급
(295)
프로젝트
474
39%
중재
103
41% / 23%
기한 초과
79
17%
바쁜
게재됨: 2 코드
6
개발자 6
등급
(5)
프로젝트
11
18%
중재
0
기한 초과
3
27%
무료
7
개발자 7
등급
(42)
프로젝트
47
30%
중재
12
17% / 75%
기한 초과
6
13%
무료
비슷한 주문
attached is an nt8 indicator i would like modifications to. this will not be simple. once you review the indicator you will see it prints arrows and dots. the arrows print after the dots stop forming. i am using default settings, on the instrument es, using ninza renko 8:4 i want the arrow to be placed on the first dot. i do not want the arrow to just be backpainted into the past much like a swing indicator or
We are looking for an experienced TradingView / Technical Analysis expert who can suggest and build the best combination of indicators for a profitable and structured trading strategy. This is not about random indicator stacking. We need someone who understands market structure, confirmation logic, risk management, and strategy optimization. The goal is to create a clean, high-probability setup with minimal false
Indicator 100+ USD
Does anyone know what indicator this is on the image because I'm looking for something like this but just a bit more sensitive. Speaking about the diamonds all the rest is irrelevant
Hello . Hello I already have an indicator on TradingView written in Pine Script. I need some modifications and fixes for the existing indicator. The indicator sometimes gives wrong signals and I want to improve it. I will provide the Pine Script source code. The developer should check the code, fix the problems, and adjust the logic if needed
DO NOT RESPOND TO WORK WITH ANY AI. ( I CAN ALSO DO THAT ) NEED REAL DEVELOPING SKILL Hedge Add-On Rules for Existing EA Core Idea SL becomes hypothetical (virtual) for the initial basket and for the hedge basket . When price hits the virtual SL level , EA does not close the losing trades. Instead, EA opens one hedge basket in the opposite direction. Original basket direction Hedge basket direction (opposite) Inputs
Kindly see details below BUY ALERT 1. Supertrend turns Bullish 2. On this candle , or the last 10, BBStops is Bearish 3. On this candle , or the last 10, price was < or = MA1 4. Instrument is in trend (STEP MA1 and STEP MA 2 are both Bullish) 5. Distance in pips between Lowest price during last time BBstop was Bearish, and the value of Step MA 1 at last bearish candle of Step MA1
EA requirements and necessary correction to be done . The EA monitors the PROFIT of open positions and turns ON or OFF the ALGO TRADING accordingly. By PROFIT I mean the SUM of profit + commission + swap. The EA will have two strategies, the INITIAL and the SECONDARY. Each one of them will be selectable by the user in the EA inputs. Let me explain here how the EA will operate: 1. INITIAL strategy: ·
Hi I have a simple task (hopefully) I have a custom strategy that I built with the help of Claude Anthropic - everything is finished and I zipped it with power shell but when importing it NT8 gives me the error message that the file was made from an older, incompatible version or not a NinjaScript. My folder structure is correct as far I can see so I don't know what the issues is and it's costing me too much to go
Subject: Development of Ultra-High Precision Confluence Indicator - M1 Binary Options (Non-Repaint) ​ Hello, I am looking for a Senior MQL5 Developer to create a custom "Surgical Precision" indicator for MetaTrader 5, specifically optimized for 1-minute (M1) Binary Options trading. The system must integrate three distinct layers of algorithmic analysis. ​ 1. Core Logic: Triple-Layer Confluence ​The signal (Call/Put)
Hello, I have an MQ4 indicator that works with a specific strategy. I want to modify some aspects and convert the file to MQ5. It's simple and won't take much effort or time for someone experienced in this field. Ideally, the person undertaking this task should be familiar with the MX2Trading software, as I will be using it to transfer the signals from the indicator to the trading platform

프로젝트 정보

예산
30+ USD