Convert WaveTrend to MT4

MQL4 Indicadores Conversión

Trabajo finalizado

Plazo de ejecución 1 día
Comentario del Cliente
Very good developer. He completed job on time. Will surely hire again.

Tarea técnica


//@version=4
study("Wave Rider 3.0 ", overlay = true)


//ema
ma_length = input(100, title = "EMA Length 1 ")
ma_length2 = input(200, title = "EMA Length 2 ")
pips = input(10.0, title = "Pips of wick apart from EMA1") * 10 * syminfo.mintick

ema1 = ema(close, ma_length)
ema2 = ema(close, ma_length2)

plot(ema1, title="EMA1", color = color.orange, linewidth = 2)
plot(ema2, title="EMA2", color = color.green,  linewidth = 2)

belowema1 = false
aboveema1 = false

belowema1 := low < ema1 + pips or low[1] < ema1[1] + pips or low[2] < ema1[2] + pips or low[3] < ema1[3] + pips or low[4] < ema1[4] + pips
aboveema1 := high > ema1 - pips or high[1] > ema1[1] - pips or high[2] > ema1[2] - pips or high[3] > ema1[3] - pips or high[4] > ema1[4] - pips

lookback = input(30, title = "Look Back Bars")
crossnumbers = input(1, title = "Cross ma Numbers In Look Back Bars")


barsCrossedupMA(_lookback, _src, _ma) =>
    _counter = 0
    for i = 0 to _lookback by 1
        if (_src[i+1] < _ma and _src[i] > _ma)
            _counter := _counter + 1
    _counter

barsCrosseddnMA(_lookback, _src, _ma) =>
    _counter = 0
    for i = 0 to _lookback by 1
        if (_src[i+1] > _ma and _src[i] < _ma) 
            _counter := _counter + 1
    _counter    

crossup = false
crossdn = false
crossup := barsCrossedupMA(lookback, close, ema2) <= crossnumbers
crossdn := barsCrosseddnMA(lookback, close, ema2) <= crossnumbers

emabuy  = close > ema2 and ema1 > ema2 and ((close > ema1 and belowema1) or close < ema1) and crossup
emasell = close < ema2 and ema1 < ema2 and ((close < ema1 and aboveema1) or close > ema1) and crossdn


// Stoch RSI
smoothK = input(3, "K", minval=1)
smoothD = input(3, "D", minval=1)
lengthRSI = input(14, "RSI Length", minval=1)
lengthStoch = input(14, "Stochastic Length", minval=1)
rsiOverbought = input(80.0, "Over Bought")
rsiOversold = input(20.0, "Over Sold")
src = input(close, title="RSI Source")
rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)

rsibuy   = crossover(k, d) and k[1] <rsiOversold
rsisell  =crossunder(k, d) and k[1] >rsiOverbought

//signals
long_signal  =emabuy and rsibuy
short_signal = emasell and rsisell

plotshape(long_signal ? close : na, color=color.green, text= "Buy", location= location.belowbar, style= shape.labelup, textcolor=color.white, size = size.tiny, title="Buy Alert")
plotshape(short_signal ? close : na, color=color.red, text= "Sell", location= location.abovebar, style= shape.labeldown, textcolor=color.white, size = size.tiny, title="Sell Alert")

if long_signal
alert('Long' , alert.freq_once_per_bar_close)

if short_signal
alert('Short' , alert.freq_once_per_bar_close)


alertcondition(long_signal, "Long", "Long")
alertcondition(short_signal, "Short", "Short")

Han respondido

1
Desarrollador 1
Evaluación
(322)
Proyectos
499
67%
Arbitraje
5
40% / 0%
Caducado
4
1%
Libre
Ha publicado: 8 ejemplos
2
Desarrollador 2
Evaluación
(538)
Proyectos
814
62%
Arbitraje
33
27% / 45%
Caducado
23
3%
Libre
Ha publicado: 1 ejemplo
3
Desarrollador 3
Evaluación
(77)
Proyectos
243
74%
Arbitraje
7
100% / 0%
Caducado
1
0%
Libre
Ha publicado: 1 artículo
4
Desarrollador 4
Evaluación
(2)
Proyectos
4
0%
Arbitraje
0
Caducado
0
Libre

Información sobre el proyecto

Presupuesto
30+ USD
Plazo límite de ejecución
a 1 día(s)