EA on “Supertrend MTF Heikin Ashi Auto” indicator from TradingView exactely the same for MT5

Job finished

Execution time 49 days
Feedback from customer
best developer so far
Feedback from employee
Thank you!

Specification

This Expert Advisor (EA) is designed to operate on the XAUUSDm symbol (Gold micro), using the 1-minute timeframe as the main chart and the 5-minute timeframe as the higher timeframe.
It is built to follow the logic of the “Supertrend MTF Heikin Ashi Auto” indicator from TradingView, exactly as shown in the reference screenshot.
The EA must fully comply with all detection, validation, and execution conditions explained below.

The Expert Advisor will be accepted only if it perfectly replicates the trades generated by the TradingView indicator "Supertrend MTF Heikin Ashi Auto" on the symbol XAUUSDm (Exness account), using the 1-minute chart for entries and the 5-minute chart for higher timeframe confirmation, during the full period from 15 March 2025 to 22 April 2025. It must detect the exact same Signal Candles, correctly wait for and confirm pullbacks, and execute trades precisely at the next candle open (Ask price for Buy, Bid price for Sell). Stop Loss must match the value of the 1-minute Supertrend at the Signal Candle, and all trades must include a trailing stop loss calculated as a percentage of the original SL. All entry and exit prices must be identical to those produced by the TradingView strategy—any deviation, missed trade, or incorrect execution will result in the EA being rejected.

The EA includes user options to:
Trade Buy signals only
Trade Sell signals only
Trade both Buy and Sell signals

It also includes a Trailing Stop Loss system based on the original Stop Loss, which dynamically protects profits once the trade moves in a favorable direction.

🔷 Buy Trade Setup
✅ Step 1 – Detect the Signal Candle
Monitor each new candle as it closes.
You are looking for the first candle where both of the following conditions are met :
The higher timeframe Supertrend  turns bullish (a blue line appears below the same candle).
The current timeframe Supertrend also turns bullish (a green line appears below the candle).
When both conditions are met, that candle becomes the "Signal Candle."

✅ Step 2 – Record Key Values from the Signal Candle
Once the Signal Candle is identified:
Signal Close Price:
This is the closing price of the Signal Candle.
It will be used later to confirm the pullback condition.
Stop Loss Level:
This is the value of the HTF Supertrend line (blue) at the time the Signal Candle closes.
This line represents the dynamic support calculated from the higher timeframe's Heikin Ashi-based Supertrend.
This value will be used as the Stop Loss for the trade.
📌 Example:
If the HTF Supertrend value at the Signal Candle is 3321.47, that becomes your exact Stop Loss.

✅ Step 3 – Wait for a Pullback
After the Signal Candle is closed, do not enter a trade immediately.
Start monitoring the subsequent normal candles (not Heikin Ashi).

✅ Step 4 – Confirm the Pullback
For each new candle after the Signal Candle:
If a candle closes with a closing price lower than the Signal Close Price, the pullback is confirmed.
This confirms a retracement after the bullish signal.

✅ Step 5 – Execute the Buy Trade
Once the pullback candle closes below the Signal Close Price:
Enter a Buy trade immediately at market on the next candle's open  using the market Ask price).
Set the Stop Loss at the HTF Supertrend line value recorded at the Signal Candle.
take profit

A Risk:Reward ratio based on the Stop Loss.
Sell Trade Setup
Step 1 – Detect the Signal Candle
Monitor each new 1-minute candle at close.

Wait for the following:

The 5-minute Supertrend is already bearish (red line above M1 candles).
Sell Trade Setup

Then, a 1-minute candle shows a new red Supertrend line above it (1-minute Supertrend turns bearish).

✅ This candle becomes the Signal Candle.

✅ Step 2 – Record Key Values
Signal Close Price → closing price of the Signal Candle.

Stop Loss → value of the 1-minute Supertrend red line at the Signal Candle close.

📌 Example: If SL = 2346.25, store that value for trade management.

✅ Step 3 – Wait for Pullback
Do not enter the trade immediately.

Watch for a candle that closes above the Signal Close Price.

✅ Step 4 – Confirm Pullback
When a candle closes above the Signal Close Price, it confirms a pullback.

✅ Step 5 – Execute the Sell Trade
Enter a Sell trade at market on the next candle open (Bid price).

Use the previously stored 1-minute Supertrend value as Stop Loss.

✅ Take Profit & Trailing Stop Loss
You must enable a Trailing Stop Loss to manage exits.

🔄 Trailing Stop Loss – Logic:
As price moves in your favor, the stop loss will trail behind price by a fixed distance.

This trailing distance is defined as a percentage of the original Stop Loss.

Supertrend MTF Heikin Ashi source code
@version=4
study("Supertrend MTF Heikin Ashi", overlay = true)
mode =input(title = "HTF Method", defval = 'Auto', options=['Auto', 'User Defined'])
//auto higher time frame
HTFo =timeframe.period == '1' ? '5' : 
  timeframe.period == '3' ? '15' : 
  timeframe.period == '5' ? '15' : 
  timeframe.period == '15' ? '60' : 
  timeframe.period == '30' ? '120' : 
  timeframe.period == '45' ? '120' : 
  timeframe.period == '60' ? '240' : 
  timeframe.period == '120' ? '240' : 
  timeframe.period == '180' ? '240' : 
  timeframe.period == '240' ? 'D' : 
  timeframe.period == 'D' ? 'W' :
  timeframe.period == 'W' ? '5W' :
  'D'
  
HTFm = input('5', title = "Time Frame (if HTF Method=User Defined)", type=input.resolution)
HTF = mode == 'Auto' ? HTFo : HTFm

Mult = input(defval = 2.0, title = "ATR Factor", minval = 0.5, maxval = 100, step = 0.1)
Period = input(defval = 7, title = "ATR Period", minval = 1,maxval = 100)

// current time frame

//Heikin Ashi high, low, close
h = security(heikinashi(syminfo.tickerid), timeframe.period, high)
l = security(heikinashi(syminfo.tickerid), timeframe.period, low)
c = security(heikinashi(syminfo.tickerid), timeframe.period, close)

//HeikinAshi atr
Atr = security(heikinashi(syminfo.tickerid), timeframe.period, atr(Period))

Up = (h + l) / 2 - (Mult * Atr)
Dn = (h + l) / 2 + (Mult * Atr)

float TUp = na
float TDown = na
Trend = 0

TUp := c[1] > TUp[1] ? max(Up,TUp[1]) : Up
TDown := c[1] < TDown[1] ? min(Dn,TDown[1]) : Dn
Trend := c > TDown[1] ? 1: c < TUp[1]? -1: nz(Trend[1],1)
Trailingsl = Trend == 1 ? TUp : TDown
linecolor = Trend == 1 and nz(Trend[1]) == 1 ? color.lime : Trend == -1 and nz(Trend[1]) == -1 ? color.red : na
plot(Trailingsl, color = linecolor ,  linewidth = 2, title = "SuperTrend")

// Higher Time Frame

////// HTF high, low, close
highhtf = security(heikinashi(syminfo.tickerid), HTF, high[1], lookahead = barmerge.lookahead_on)
lowhtf = security(heikinashi(syminfo.tickerid), HTF, low[1], lookahead = barmerge.lookahead_on)
closehtf = security(heikinashi(syminfo.tickerid), HTF, close[1], lookahead = barmerge.lookahead_on)

// ATR for HTF
HTfatr = security(heikinashi(syminfo.tickerid), HTF, atr(Period)[1], lookahead = barmerge.lookahead_on)

Uphtf = abs(highhtf + lowhtf) / 2 - (Mult * HTfatr)
Dnhtf = abs(highhtf + lowhtf) / 2 + (Mult * HTfatr)

float TUphtf = na
float TDownhtf = na
TrendHtf = 0

TUphtf := closehtf[1] > TUphtf[1] ? max(Uphtf, TUphtf[1]) : Uphtf
TDownhtf := closehtf[1] < TDownhtf[1] ? min(Dnhtf,TDownhtf[1]) : Dnhtf
TrendHtf := closehtf > TDownhtf[1] ? 1 : closehtf < TUphtf[1] ? -1: nz(TrendHtf[1], 1)
TrailingslHtf = TrendHtf == 1 ? TUphtf : TDownhtf

linecolorHtf = TrendHtf == 1 and nz(TrendHtf[1]) == 1 ? color.blue : TrendHtf == -1 and nz(TrendHtf[1]) == -1 ? color.red : na
st = plot(TrailingslHtf, color = linecolorHtf ,  linewidth = 3, title = "Supertrend HTF")

plot(TrendHtf == 1 and TrendHtf[1] == -1 ? TrailingslHtf : na, title="Supertrend HTF Trend Up", linewidth = 4, color=color.blue, style = plot.style_circles)
plot(TrendHtf == -1 and TrendHtf[1] == 1 ? TrailingslHtf : na, title="Supertrend HTF Trend Down", linewidth = 4, color=color.red, style = plot.style_circles)

//Alerts
alertcondition(Trend == 1 and Trend[1] == -1, title='Supertrend Trend Up', message='Supertrend Trend Up')
alertcondition(Trend == -1 and Trend[1] == 1, title='Supertrend  Trend Down', message='Supertrend Trend Down')
alertcondition(TrendHtf == 1 and TrendHtf[1] == -1, title='Supertrend HTF Trend Up', message='Supertrend HTF Trend Upl')
alertcondition(TrendHtf == -1 and TrendHtf[1] == 1, title='Supertrend HTF Trend Down', message='Supertrend HTF Trend Down')

Files:

PNG
BUY.png
187.0 Kb
PNG
SELL.png
210.5 Kb

Responded

1
Developer 1
Rating
Projects
0
0%
Arbitration
1
0% / 100%
Overdue
0
Free
2
Developer 2
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
3
Developer 3
Rating
(574)
Projects
945
47%
Arbitration
309
58% / 27%
Overdue
125
13%
Free
4
Developer 4
Rating
Projects
0
0%
Arbitration
0
Overdue
0
Free
Similar orders
I need a fully automated Expert Advisor (EA) written in MQL5 for MetaTrader 5. The EA must work directly inside MT5 and must NOT require TradingView, PineConnector, webhooks, or another external connector to place trades. Trading Instrument Primary symbol: XAGUSD (Silver) My broker may display the symbol as XAGUSD-ECN, so the EA should work with the broker’s available XAGUSD symbol. Main entry timeframe: 5-minute
RECHERCHE DÉVELOPPEUR MQL5 — PARTENARIAT 50/50 Objectif : développer un EA de trading automatisé en 11 jours maximum pour participer à plusieurs concours de trading démo. Je recherche un développeur MQL5 expérimenté, capable de développer, tester et optimiser un EA proprement, avec une vraie maîtrise de la gestion du risque. CONCOURS VISÉS 🥇 XM — Weekly Demo Contest - Concours récurrent - Prize pool annoncé : 25 000
GoldTrade EA 89+ USD
//+------------------------------------------------------------------+ //| XAUUSD Wolfe + SMC Quick Profit EA | //| MT5 / MQL5 | //+------------------------------------------------------------------+ #property strict #include <Trade/Trade.mqh> CTrade trade; //================================================================== // INPUTS //================================================================== //--- General
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
Looking for a developer in NinjaTrader For coding Inst - ES,NQ Chart type - Tick, range, volume & time Brief- Fib levels mapped on chart which act as entries, tgts and stops all based on candle close. (Maybe) use MACD for filtering direction. Daily manual input of the TWO fib Anchor levels is part of the strategy. I need a well experienced developer to bid and before biding check the attached file well. the PDF and
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 Have an existing Mql5 Expert advisor (source code), I want a professional programmer to help me Modify the EA... so that it can stop taking new trades once it Gets to a Pacific Lots Size or Floating loss
I Have an existing Mql5 Expert advisor (source code), I want a professional programmer to help me Modify the EA... so that it can stop taking new trades once it Gets to a Pacific Lots Size or Floating loss
take your time better make it for days and have good bot than never benefits both of us. Make the bot have zero errors and backtest it for a 2 year period
Wise Legend 30 - 500 USD
I want this robot to alert me on a good entry point on the trading flat form ether to buy or to sell. And also alert me when to close the market. And alert me on market continuations

Project information

Budget
60+ USD
Deadline
to 15 day(s)