Convert TV Strategy into a Mt4 or Mt5 EA

MQL5 Indikatoren Experten

Spezifikation

Hi, I am looking for a developer to convert a TV strategy into a Mt4 or Mt5 EA. The strategy is based on the EMA and the CVD volume indicator. I dont have the Mt4 or Mt5 version of these indicators. Copy the code below and place it in your TV to see the strategy. Other features:

Stop loss - Option to either use pips of my choosing or close on opposite signal appears. 

Take profit -  Option to either use pips of my choosing or close on opposite signal appears. 

EMA Filter - Must have the option to turn off and on and choose the EMA length 

Time Filter 

Trailing Stop - Can be based on pips or any other idea you may have 

Recovery - Martingale - Allow me to choose the lot size it will increase by. It will only kick in if the previous entry or entries close in a loss. It must stop or reset 

Add to winning trade - For example, a buy trade is taken and its in profit, sometimes price pulls back with 2 or more red candles, after this, a green candle must engulf any of the red candles. Once this happens additional buy entries must be taken. Allow me to choose the lot size. 

How It Takes Buy and Sell Entries:

  • Buy Entry Example:

    1. The price candle closes higher than it opened (green candle).
    2. The CVD indicator shows positive net buying (teal candle).
    3. The price is above the EMA, indicating an uptrend.
    4. The price has not crossed above the EMA more than once, and fewer than two buy signals have been generated since the last EMA crossover.
    5. All conditions are met, so the strategy enters a long position.
  • Sell Entry Example:

    1. The price candle closes lower than it opened (red candle).
    2. The CVD indicator shows negative net selling (red candle).
    3. The price is below the EMA, indicating a downtrend.
    4. The price has not crossed below the EMA more than once, and fewer than two sell signals have been generated since the last EMA crossover.
    5. All conditions are met, so the strategy enters a short position.

Summary:

This strategy combines the Cumulative Volume Delta, price action, and an EMA filter to identify trading opportunities aligned with the prevailing trend. The entry limit logic helps avoid overtrading by restricting the number of entries after an EMA crossover, while the option to enable or disable the EMA filter provides flexibility in strategy application. This approach aims to capitalize on strong, confirmed market movements while minimizing false signals.




//@version=5
strategy("CVD with Price Action and EMA Filter", overlay=true)

// Inputs
anchorInput = input.timeframe("1D", "Anchor period")
useCustomTimeframeInput = input.bool(false, "Use custom timeframe")
lowerTimeframeInput = input.timeframe("1", "Timeframe")

// EMA Filter Inputs
useEMAFilter = input.bool(true, "Use EMA Filter")
emaLength = input.int(50, "EMA Length")
emaSource = input.source(close, "EMA Source")

// Function to calculate up and down volume
upAndDownVolume() =>
    posVol = 0.0
    negVol = 0.0
   
    var isBuyVolume = true    

    switch
        close > open     => isBuyVolume := true
        close < open     => isBuyVolume := false
        close > close[1] => isBuyVolume := true
        close < close[1] => isBuyVolume := false

    if isBuyVolume
        posVol += volume
    else
        negVol -= volume

    posVol + negVol

// Determine lower timeframe
var lowerTimeframe = switch
    useCustomTimeframeInput => lowerTimeframeInput
    timeframe.isseconds     => "1S"
    timeframe.isintraday    => "1"
    timeframe.isdaily       => "5"
    => "60"

// Get volume delta for lower timeframe
diffVolArray = request.security_lower_tf(syminfo.tickerid, lowerTimeframe, upAndDownVolume())

// Calculate CVD
getHighLow(arr) =>
    float cumVolume = na
    float maxVolume = na
    float minVolume = na

    for item in arr
        cumVolume := nz(cumVolume) + item
        maxVolume := math.max(nz(maxVolume), cumVolume)
        minVolume := math.min(nz(minVolume), cumVolume)

    [maxVolume, minVolume, cumVolume]

[maxVolume, minVolume, lastVolume] = getHighLow(diffVolArray)

var cumulLastVolume = 0.0
anchorChange = timeframe.change(anchorInput) or (not na(lastVolume) and na(lastVolume[1]))
cumulOpenVolume = anchorChange ? 0.0 : cumulLastVolume[1]
cumulMaxVolume = cumulOpenVolume + maxVolume
cumulMinVolume = cumulOpenVolume + minVolume
cumulLastVolume := cumulOpenVolume + lastVolume

// Determine CVD color
cvdColor = cumulLastVolume >= cumulOpenVolume ? color.teal : color.red

// Plot CVD as candle
hline(0)
plotcandle(cumulOpenVolume, cumulMaxVolume, cumulMinVolume, cumulLastVolume, "CVD", color = cvdColor, bordercolor = cvdColor, wickcolor = cvdColor)

// EMA Calculation
ema = ta.ema(emaSource, emaLength)

// Entry limit logic
var int buyEntryCount = 0
var int sellEntryCount = 0

// Detect EMA cross
emaCrossedUp = ta.crossover(close, ema)
emaCrossedDown = ta.crossunder(close, ema)

if emaCrossedUp or emaCrossedDown
    buyEntryCount := 0
    sellEntryCount := 0

// Trading logic with EMA filter
priceGreen = close > open
priceRed = close < open
cvdGreen = cvdColor == color.teal
cvdRed = cvdColor == color.red

buySignal = priceGreen and cvdGreen
sellSignal = priceRed and cvdRed

if useEMAFilter
    buySignal := buySignal and close > ema and buyEntryCount < 2
    sellSignal := sellSignal and close < ema and sellEntryCount < 2

// Increment entry counts and place trades
if buySignal
    buyEntryCount := buyEntryCount + 1
    strategy.entry("Buy", strategy.long)
if sellSignal
    sellEntryCount := sellEntryCount + 1
    strategy.entry("Sell", strategy.short)

// Plot Buy and Sell signals
plotshape(series=buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(series=sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")

// Plot EMA line
plot(useEMAFilter ? ema : na, title="EMA", color=color.blue, linewidth=2)



Dateien:

Bewerbungen

1
Entwickler 1
Bewertung
(1)
Projekte
3
0%
Schlichtung
0
Frist nicht eingehalten
0
Arbeitet
2
Entwickler 2
Bewertung
(4)
Projekte
4
25%
Schlichtung
0
Frist nicht eingehalten
0
Arbeitet
3
Entwickler 3
Bewertung
(21)
Projekte
25
24%
Schlichtung
0
Frist nicht eingehalten
2
8%
Arbeitet
Ähnliche Aufträge
I need an expert advisor based on MACD and MA signals. It must have check and handling of trade operations errors. The main criteria for opening and closing positions: ◇Both Main and Signal direction must be shown by Arrows which is going to be for buy and sell positions
Trendline expert 40 - 200 USD
My project is to put my strategy on the VCrush indicator. I already have the indicator, I just need to add the entry methods, take and stop rules. There are 5 lines in total, when these lines are aligned, the robot makes the entry. Below are two images of what the buy and sell entries would look like with the lines aligned
I need an expert to help me with adding more features to my existing mt4 EA I think the addition I want added to this EA is fairly simple--but I don't really understand how programming works, Contact me for a long term work, This is not the only project, I will explain the features in the inbox, Let me know if you can do it
J'aimerais développer mon propre indicateur sur Mt4 et Mt5. On commencerait avec une version de base qu'on améliorerait par la suite. C'est un indicateur basé sur plusieurs analyses et qui donnerait plusieurs indications. Je recherche quelqu'un qui puisse développer sur MT4 et Mt5, dans un premier temps j'aimerais le faire sur mt4 puis sur mt5. Si vous avez une expertise en pinescript c'est un plus car j'aimerais
SIM pL E MT5 INDICATOR WANTED BASED ON CUSTOM FIBONACCI LEVELS ON MAIN CHART SHOULD ANALYZE ON TIME FRAME SELECTED ON SETTING TAB ANALYSIS IS BASED ON HIGH AND LOW OF SELECTED TIMEFRAME LOOCKBACK CALCULATED IN BARS BOTTOM INDICATOR WINDOW WILL HAVE THE FOLLOWING INDICATORS RSI 2 MOVING AVARAGES LOADED ON RSI WINDOW ENVELO pS LOADED ON RSI WINDOW DETAILS OF INDICATORS WILL BE GIVEN TO SUCCESFUL A p p LICANT IMAGE OF
Hi, I am looking to purchase a pre-built trading strategy specifically tailored for trading AUXUSD. Before committing to the purchase, I require the following detailed information: 1. **Type of Trading**: - Clearly define the trading style this strategy is designed for (e.g., scalping, swing trading, day trading, position trading, etc.). - Provide an explanation of why this trading style is suitable for AUXUSD
Need a dashboard, which can monitor up to 30 selected pairs in selected time frames. It monitors AO, MACD and stochastic. In the cells of dashboard, if AO is positive in the relevant symbol/tf, it writes "UP". When one of AO is above 0 level AND Stochastic is in OS zone it writes "UPUP". When AO is above 0 and when stochastics is oversold minimum of two times,it will alert UPU2 if AO is negative below 0 in the
Fx Kidds 80 - 120 USD
Can l have a EA that can run 24/5 on gold and GBPUSD and stocks. Trilling stop loss. No expireing date. Must make 5% minimum in returns. It can take losses but it must not blow the account minimum deposit must be 35usd
Develop a robot for Mac M3 chip which can: 1) Auto copy - take and close trades 2) Minise risk 3) Scale profits 4) Ideally be able to trade in multiple markets or whichever market can bring plenty of trading opportunities. 5) Can be used on mobile (iPhone) and Mac. You can implement it on MT4 or MT5 - whichever will integrate with the robot better. You can use any programming language so long as it serves the
I am looking for an experienced MQL5 programmer to create a custom Expert Advisor (EA) or utility that connects my MT5 signal provider to Telegram. The primary objective is to forward signals from the MT5 platform to a designated Telegram channel. Requirements: The EA or utility should automatically send signals from MT5 to the Telegram channel/group. Support for customization, such as filtering signals based on

Projektdetails

Budget
40+ USD
Ausführungsfristen
von 2 Tag(e)

Kunde

(8)
Veröffentlichte Aufträge17
Anzahl der Schlichtungen0