Convert TV Strategy into a Mt4 or Mt5 EA

MQL5 지표 EA

작업 종료됨

실행 시간 17 분
피고용인의 피드백
Thank you for the job. Good luck!

명시

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)



파일:

응답함

1
개발자 1
등급
(2)
프로젝트
5
0%
중재
3
0% / 100%
기한 초과
1
20%
작업중
2
개발자 2
등급
(102)
프로젝트
105
60%
중재
0
기한 초과
0
무료
3
개발자 3
등급
(30)
프로젝트
38
29%
중재
1
0% / 100%
기한 초과
2
5%
작업중
4
개발자 4
등급
(78)
프로젝트
246
74%
중재
7
100% / 0%
기한 초과
1
0%
무료
게재됨: 1 기고글
5
개발자 5
등급
(87)
프로젝트
121
68%
중재
5
80% / 0%
기한 초과
12
10%
작업중
6
개발자 6
등급
(1)
프로젝트
0
0%
중재
0
기한 초과
0
무료
비슷한 주문
Looking for an experienced MQL5 developer to refactor and upgrade an existing Expert Advisor (EA) trading system. Current State: I have the fully working Phase 1 .mq5 source code. However, the execution rules are overly rigid, resulting in missed setups. Scope of Work (Phase 2): Refactor entry logic to support multi-timeframe EMA trend alignment (H4 structural trend + M5/M15 execution EMAs). Upgrade pullback state
GBPUSD Demand & Supply EA 1. Trend Direction 1H timeframe 50 EMA and 200 EMA BUY bias: 50 EMA above 200 EMA SELL bias: 50 EMA below 200 EMA 2. Demand & Supply Zones Identify strong moves away from a base Prefer fresh zones Avoid zones that have already been repeatedly tested 3. Trendlines Use ascending trendlines to support BUY setups Use descending trendlines to support SELL setups Trendline must support the overall
SCALPER EA 30+ USD
the best SCALPER EA THIS ROBOT only takes a winning posetio IT ANALYSIS THE MARKET BEFOR OPENING POSETION AND WAIT FOR A CLEAR SIGNAL LOT SIZE AJUSTEBLE TAKE PROFIT AJUSTBLE
Hi, I’m looking for a developer who can create a trading bot designed to generate a 6% profit. The daily loss limit is 3% and the total loss limit is 8%. So my aim is to have a bot that has a probability of over 75% of reaching the 6% target before hitting the loss limit. I’d like the bot to work on MT5 and TradeLocker, please
I need an Expert Advisor for MT5 on XAUUSD 1min timeframe using SMC concepts. STRATEGY RULES: SELL: 1. Identify previous day High/Low as liquidity 2. Entry only during London-NY session: 15:00-19:00 GMT+3 or broker clock. 3. If price sweeps previous day High and closes back below it 4. Check for bearish 1min FVG below sweep candle 5. Wait for BOS - lower low 6. Entry: Sell/buy at 50% of the FVG 7. SL: 10 pips above
Code An Loss Rate 90-100% MT5 EA , that can blow a 100 USD account a day ,with fixed TP of 3000 points and SL of 3000 For better Rate Calculations get an strategy that can lead to so
I'm looking for someone experienced with Thinkorswim (TOS) to help me properly set up my paper trading account . Tasks may include: Setting up the paper trading environment Configuring charts and watchlists Setting up order entry and trade settings Configuring indicators (if needed) Ensuring the account is ready for simulated trading Answering any setup questions and providing basic guidance Experience with
Shooter razor 30+ USD
Makes it takes trades by it self buy and sell, it must use the higher signals, also when I press stop it must not pick any trades I want it to take trades automatically when I press start also close by it self
Robot pro Fintokei 600 - 1000 USD
Popis zakázky: Tvorba algoritmického robota (EA) pro MetaTrader 5 (MT5) Typ projektu: Vývoj Expert Advisora ​​(EA) pro MT5 Rozpočet: Maximálně 1 000 USD (bude upřesněno podle finální složitosti strategie) Hlavní cíl: Robot musí striktně dodržovat vestavěný risk management platební pravidla prop firmy Fintokei (výzvy StartUp / Pro / Swift). 1. Základní požadavky na řízení rizik (Fintokei kompatibilita) Robot musí mít
8 cap prop firm passing 30 - 3000 USD
I am looking for an experienced MQL4/MQL5 HFT developer to build or optimize a High-Frequency Trading (HFT) Expert Advisor that can successfully pass proprietary trading firm challenges and perform consistently under live trading conditions with brokers such as 8cap or BlackBull Markets . The developer should have proven experience with HFT execution, ultra-low-latency trading, broker execution, slippage, spreads

프로젝트 정보

예산
40+ USD
기한
에서 2 일