Техническое задание
//@version=5indicator("Infinity and Sniper by Leo", overlay=true, precision=0, explicit_plot_zorder=true, max_labels_count=500)
// Get user inputemaEnergy = falsesensitivity = input.float(6, " Sensitivity (0.5 - 10)", 0.5, 10, step=0.1)keltner_length = 10atrPeriod = 10factor = 3.5
// Keltner Channel functionkeltner_channel(src, length) =>ma = ta.sma(src, length)rangec = high - lowupper = ma + rangeclower = ma - rangec[upper, lower]
// Modified Supertrend function using Keltner Channelsupertrend(_src, factor, atrLen, kel_length) =>[upperKeltner, lowerKeltner] = keltner_channel(_src, kel_length)rangec = upperKeltner - lowerKeltnerupperBand = _src + factor * rangeclowerBand = _src - factor * rangecprevLowerBand = nz(lowerBand[1])prevUpperBand = nz(upperBand[1])lowerBand := lowerBand > prevLowerBand or close[1] < prevLowerBand ? lowerBand : prevLowerBandupperBand := upperBand < prevUpperBand or close[1] > prevUpperBand ? upperBand : prevUpperBandint direction = nafloat superTrend = naprevSuperTrend = superTrend[1]
if na(rangec[1])direction := 1else if prevSuperTrend == prevUpperBanddirection := close > upperBand ? -1 : 1elsedirection := close < lowerBand ? 1 : -1superTrend := direction == -1 ? lowerBand : upperBand[superTrend, direction]
// Get Componentsema1 = ta.ema(high, 9)ema2 = ta.ema(high, 12)ema3 = ta.ema(high, 15)ema4 = ta.ema(high, 18)ema5 = ta.ema(high, 21)ema6 = ta.ema(high, 24)ema7 = ta.ema(high, 27)ema8 = ta.ema(high, 30)ema9 = ta.ema(high, 33)ema10 = ta.ema(high, 36)ema11 = ta.ema(high, 39)ema12 = ta.ema(high, 42)ema13 = ta.ema(high, 45)ema14 = ta.ema(high, 48)ema15 = ta.ema(high, 51)
// Colorsgreen = #2BBC4Dred = #C51D0B
emaEnergyColor(ma) =>if na(ma)color.gray // o cualquier otro color predeterminadoelseemaEnergy ? (close >= ma ? green : red) : na
// Plotsplot(ema3, "", emaEnergyColor(ema3), editable=false)plot(ema4, "", emaEnergyColor(ema4), editable=false)plot(ema5, "", emaEnergyColor(ema5), editable=false)plot(ema6, "", emaEnergyColor(ema6), editable=false)plot(ema7, "", emaEnergyColor(ema7), editable=false)plot(ema8, "", emaEnergyColor(ema8), editable=false)plot(ema9, "", emaEnergyColor(ema9), editable=false)plot(ema10, "", emaEnergyColor(ema10), editable=false)plot(ema11, "", emaEnergyColor(ema11), editable=false)plot(ema12, "", emaEnergyColor(ema12), editable=false)plot(ema13, "", emaEnergyColor(ema13), editable=false)plot(ema14, "", emaEnergyColor(ema14), editable=false)plot(ema15, "", emaEnergyColor(ema15), editable=false)
[supertrend, direction] = supertrend(close, sensitivity, 11, keltner_length)bull = ta.crossover(close, supertrend)bear = ta.crossunder(close, supertrend)
y1 = low - (ta.atr(30) * 2)y2 = high + (ta.atr(30) * 2)
// Braid Filter
//-- InputsmaType = input.string('McGinley', 'Filter', options=['EMA', 'DEMA', 'TEMA', 'WMA', 'VWMA', 'SMA', 'SMMA', 'HMA', 'LSMA', 'Kijun', 'McGinley', 'RMA'])Period1 = 3Period2 = 7Period3 = 20PipsMinSepPercent = input(60, 'Filter Strength')
//-- Moving Averagema(type, src, len) =>float result = 0if type == 'SMA' // Simpleresult := ta.sma(src, len)resultif type == 'EMA' // Exponentialresult := ta.ema(src, len)resultif type == 'DEMA' // Double Exponentiale = ta.ema(src, len)result := 2 * e - ta.ema(e, len)resultif type == 'TEMA' // Triple Exponentiale = ta.ema(src, len)result := 3 * (e - ta.ema(e, len)) + ta.ema(ta.ema(e, len), len)resultif type == 'WMA' // Weightedresult := ta.wma(src, len)resultif type == 'VWMA' // Volume Weightedresult := ta.vwma(src, len)resultif type == 'SMMA' // Smoothedw = ta.wma(src, len)result := na(w[1]) ? ta.sma(src, len) : (w[1] * (len - 1) + src) / lenresultif type == 'RMA'result := ta.rma(src, len)resultif type == 'HMA' // Hullresult := ta.wma(2 * ta.wma(src, len / 2) - ta.wma(src, len), math.round(math.sqrt(len)))resultif type == 'LSMA' // Least Squaresresult := ta.linreg(src, len, 0)resultif type == 'Kijun' //Kijun-senkijun = math.avg(ta.lowest(len), ta.highest(len))result := kijunresultif type == 'McGinley'mg = 0.0mg := na(mg[1]) ? ta.ema(src, len) : mg[1] + (src - mg[1]) / (len * math.pow(src / mg[1], 4))result := mgresultresult
//-- Braid Filterma01 = ma(maType, close, Period1)ma02 = ma(maType, open, Period2)ma03 = ma(maType, close, Period3)
max = math.max(math.max(ma01, ma02), ma03)min = math.min(math.min(ma01, ma02), ma03)dif = max - min
filter = ta.atr(14) * PipsMinSepPercent / 100
//-- PlotsBraidColor = ma01 > ma02 and dif > filter ? color.green : ma02 > ma01 and dif > filter ? color.red : color.gray
//plot(dif, 'Braid', BraidColor, 5, plot.style_columns)//plot(filter, 'Filter', color.new(color.blue, 0), 2, plot.style_line)//bgcolor(BraidColor, transp=90)
// Braid Filter Finish
buy = bull and ma01 > ma02 and dif > filter ? label.new(bar_index, y1, "BUY", xloc.bar_index, yloc.price, green, label.style_label_up, color.white, size.normal) : nasell = bear and ma02 > ma01 and dif > filter ? label.new(bar_index, y2, "SELL", xloc.bar_index, yloc.price, red, label.style_label_down, color.white, size.normal) : na
[supertrends, directions] = ta.supertrend(factor, atrPeriod)bodyMiddle = plot((open + close) / 2, display=display.none)// Trend Catcher Indicator (Example)ema100 = ta.ema(close, 10)ema200 = ta.ema(close, 20)trendCatcher = ta.crossover(ema100, ema200) ? 1 : ta.crossunder(ema100, ema200) ? -1 : 0trendColor = trendCatcher == 1 ? color.rgb(90, 23, 102) : nabarcolor(trendColor)// Colored candlesbarcolor(color = close > supertrends ? color.rgb(102, 255, 0) : color.rgb(255, 0, 0))
// Take Profit Script
colorsr = 'DARK'bullcolorr = colorsr == 'DARK' ? color.rgb(0, 255, 8) : #00DBFFbearcolorr = colorsr == 'DARK' ? color.rgb(255, 0, 0) : #E91E63
ShowTEX = input.bool(true, "Show Take Profit Signals")TE1 = trueTE2 = trueTE3 = true//TE4 = input(true, 'TE - 4' , group="Money Moves [Trend Exhaustion]" , inline = "TEX")
rsiLengthInput = 22rsiSourceInput = closemaTypeInput = ta.sma(close, 14)up66 = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)downw = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)rsi66 = downw == 0 ? 100 : up66 == 0 ? 0 : 100 - (100 / (1 + up66 / downw))rsiMA = maTypeInput
long1 = ta.crossover(rsi66, 30)long2 = ta.crossover(rsi66, 20)long3 = ta.crossover(rsi66, 15)//long4 = ta.crossover(rsi66, 10)
// SHORTshort1 = ta.crossunder(rsi66, 70)short2 = ta.crossunder(rsi66, 80)short3 = ta.crossunder(rsi66, 85)//short4 = ta.crossunder(rsi66, 90)
// LONGplotshape(long1 and ShowTEX and TE1, "GO LONG 1", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 60) , text="Sell TP" , textcolor = bullcolorr , editable = false)plotshape(long2 and ShowTEX and TE2, "GO LONG 2", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 50), text="Sell TP" , textcolor = bullcolorr , editable = false)plotshape(long3 and ShowTEX and TE3, "GO LONG 3", style=shape.circle, location=location.belowbar,size=size.tiny, color = color.new(bullcolorr , 10), text="Sell TP", textcolor = bullcolorr , editable = false)//plotshape(long4 and ShowTEX, "GO LONG 4", style=shape.circle, location=location.belowbar,size=size.tiny, color=color.gray, text="4")
// SHORTplotshape(short1 and ShowTEX and TE1, "GO SHORT 1", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 60) , text="Buy TP" , textcolor = bearcolorr , editable = false)plotshape(short2 and ShowTEX and TE2, "GO SHORT 2", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 50) , text="Buy TP" , textcolor = bearcolorr , editable = false)plotshape(short3 and ShowTEX and TE3, "GO SHORT 3", style=shape.circle, location=location.abovebar,size=size.tiny, color = color.new(bearcolorr , 10) , text="Buy TP" , textcolor = bearcolorr , editable = false)//plotshape(short4 and ShowTEX, "GO SHORT 4", style=shape.circle, location=location.abovebar,size=size.tiny, color=color.gray, text="4")
alertcondition(long1 or short1 , 'Trend Exhausted - 1', 'Trend Exhausted | Strength - 1 ')alertcondition(long2 or short2 , 'Trend Exhausted - 2', 'Trend Exhausted | Strength - 2 ')alertcondition(long3 or short3 , 'Trend Exhausted - 3', 'Trend Exhausted | Strength - 3 ')
// Peak Profit Script
import protradingart/pta_plot/6 as pp
pp.peakprofit(bull and ma01 > ma02 and dif > filter, bear and ma02 > ma01 and dif > filter)
//------------------------------------------------------------------------------// === Nas Infinity Algo ===//------------------------------------------------------------------------------
Periods = 40src = hl2Multiplier = input.float(title='Sensitivity', step=0.1, defval=7.2)changeATR = trueshowsignals = input(title='Show Buy/Sell Signals ?', defval=true)highlighting = input(title='Highlighter On/Off ?', defval=false)atr2 = ta.sma(ta.tr, Periods)atr = changeATR ? ta.atr(Periods) : atr2up = src - Multiplier * atrup1 = nz(up[1], up)up := close[1] > up1 ? math.max(up, up1) : updn = src + Multiplier * atrdn1 = nz(dn[1], dn)dn := close[1] < dn1 ? math.min(dn, dn1) : dntrend = 1trend := nz(trend[1], trend)trend := trend == -1 and close > dn1 ? 1 : trend == 1 and close < up1 ? -1 : trendupPlot = plot(trend == 1 ? up : na, title='Up Trend', style=plot.style_linebr, linewidth=2, color=highlighting == true ? #4caf50 : #ffffff00)buySignal = trend == 1 and trend[1] == -1plotshape(buySignal and showsignals ? up : na, title='Buy', text='Buy', location=location.absolute, style=shape.labelup, size=size.normal, color=#4caf50, textcolor=color.new(color.white, 0))dnPlot = plot(trend == 1 ? na : dn, title='Down Trend', style=plot.style_linebr, linewidth=2, color= highlighting == true ? #ff5252 : #ffffff00)sellSignal = trend == -1 and trend[1] == 1plotshape(sellSignal and showsignals ? dn : na, title='Sell', text='Sell', location=location.absolute, style=shape.labeldown, size=size.normal, color=color.new(color.red, 0), textcolor=color.new(color.white, 0))mPlot = plot(ohlc4, title='', style=plot.style_circles, linewidth=0)longFillColor = highlighting ? trend == 1 ? #4caf4f0b : #ffffff00 : #ffffff00shortFillColor = highlighting ? trend == -1 ? #ff52520e : #ffffff00 : #ffffff00fill(mPlot, upPlot, title='UpTrend Highligter', color=longFillColor, transp=90)fill(mPlot, dnPlot, title='DownTrend Highligter', color=shortFillColor, transp=90)alertcondition(buySignal, title='SuperTrend Buy', message='SuperTrend Buy!')alertcondition(sellSignal, title='SuperTrend Sell', message='SuperTrend Sell!')changeCond = trend != trend[1]alertcondition(changeCond, title='SuperTrend Direction Change', message='SuperTrend has changed direction!')
// Bar Colorsvar color barColor = naif (sellSignal)barColor := color.redelse if (buySignal)barColor := color.greenelsebarColor := barColor[1]
barcolor(barColor)//------------------------------------------------------------------------------// === OPTIMUM SNIPER V.1 ===//------------------------------------------------------------------------------
//Get user settingsshowBuySell = input(true, "Show Buy & Sell", group="BUY & SELL SIGNALS")sensitivity1 = input.float(3, "Sensitivity (1-6)", 1, 6, group="BUY & SELL SIGNALS")percentStop = input.float(1, "Stop Loss % (0 to Disable)", 0, group="BUY & SELL SIGNALS")offsetSignal = input.float(5, "Signals Offset", 0, group="BUY & SELL SIGNALS")showRibbon = input(false, "Show Trend Ribbon", group="TREND RIBBON")smooth1 = input.int(5, "Smoothing 1", 1, group="TREND RIBBON")smooth2 = input.int(8, "Smoothing 2", 1, group="TREND RIBBON")showReversal = input(false, "Show Reversals", group="REVERSAL SIGNALS")showPdHlc = input(false, "Show P.D H/L/C", group="PREVIOUS DAY HIGH LOW CLOSE")lineColor = input.color(color.yellow, "Line Colors", group="PREVIOUS DAY HIGH LOW CLOSE")lineWidth = input.int(1, "Width Lines", group="PREVIOUS DAY HIGH LOW CLOSE")lineStyle = input.string("Solid", "Line Style", ["Solid", "Dashed", "Dotted"])labelSize = input.string("normal", "Label Text Size", ["small", "normal", "large"])labelColor = input.color(color.yellow, "Label Text Colors")showEmas = input(false, "Show EMAs", group="EMA")srcEma1 = input(close, "Source EMA 1")lenEma1 = input.int(7, "Length EMA 1", 1)srcEma2 = input(close, "Source EMA 2")lenEma2 = input.int(21, "Length EMA 2", 1)srcEma3 = input(close, "Source EMA 3")lenEma3 = input.int(144, "Length EMA 3", 1)showSwing = input(false, "Show Swing Points", group="SWING POINTS")prdSwing = input.int(10, "Swing Point Period", 2, group="SWING POINTS")colorPos = input(color.new(color.green, 50), "Positive Swing Color")colorNeg = input(color.new(color.red, 50), "Negative Swing Color")showDashboard = input(false, "Show Dashboard", group="TREND DASHBOARD")locationDashboard = input.string("Middle Right", "Table Location", ["Top Right", "Middle Right", "Bottom Right", "Top Center", "Middle Center", "Bottom Center", "Top Left", "Middle Left", "Bottom Left"], group="TREND DASHBOARD")tableTextColor = input(color.white, "Table Text Color", group="TREND DASHBOARD")tableBgColor = input(#2A2A2A, "Table Background Color", group="TREND DASHBOARD")sizeDashboard = input.string("Normal", "Table Size", ["Large", "Normal", "Small", "Tiny"], group="TREND DASHBOARD")showRevBands = input.bool(false, "Show Reversal Bands", group="REVERSAL BANDS")lenRevBands = input.int(30, "Length", group="REVERSAL BANDS")// Functionssmoothrng(x, t, m) =>wper = t * 2 - 1avrng = ta.ema(math.abs(x - x[1]), t)smoothrng = ta.ema(avrng, wper) * mrngfilt(x, r) =>rngfilt = xrngfilt := x > nz(rngfilt[1]) ? x - r < nz(rngfilt[1]) ? nz(rngfilt[1]) : x - r : x + r > nz(rngfilt[1]) ? nz(rngfilt[1]) : x + rpercWidth(len, perc) => (ta.highest(len) - ta.lowest(len)) * perc / 100securityNoRep(sym, res, src) => request.security(sym, res, src, barmerge.gaps_off, barmerge.lookahead_on)swingPoints(prd) =>pivHi = ta.pivothigh(prd, prd)pivLo = ta.pivotlow (prd, prd)last_pivHi = ta.valuewhen(pivHi, pivHi, 1)last_pivLo = ta.valuewhen(pivLo, pivLo, 1)hh = pivHi and pivHi > last_pivHi ? pivHi : nalh = pivHi and pivHi < last_pivHi ? pivHi : nahl = pivLo and pivLo > last_pivLo ? pivLo : nall = pivLo and pivLo < last_pivLo ? pivLo : na[hh, lh, hl, ll]f_chartTfInMinutes() =>float _resInMinutes = timeframe.multiplier * (timeframe.isseconds ? 1 :timeframe.isminutes ? 1. :timeframe.isdaily ? 60. * 24 :timeframe.isweekly ? 60. * 24 * 7 :timeframe.ismonthly ? 60. * 24 * 30.4375 : na)f_kc(src, len, sensitivity1) =>basis = ta.sma(src, len)span = ta.atr(len)[basis + span * sensitivity1, basis - span * sensitivity1]wavetrend(src, chlLen, avgLen) =>esa = ta.ema(src, chlLen)d = ta.ema(math.abs(src - esa), chlLen)ci = (src - esa) / (0.015 * d)wt1 = ta.ema(ci, avgLen)wt2 = ta.sma(wt1, 3)[wt1, wt2]f_top_fractal(src) => src[4] < src[2] and src[3] < src[2] and src[2] > src[1] and src[2] > src[0]f_bot_fractal(src) => src[4] > src[2] and src[3] > src[2] and src[2] < src[1] and src[2] < src[0]f_fractalize (src) => f_top_fractal(src) ? 1 : f_bot_fractal(src) ? -1 : 0f_findDivs(src, topLimit, botLimit) =>fractalTop = f_fractalize(src) > 0 and src[2] >= topLimit ? src[2] : nafractalBot = f_fractalize(src) < 0 and src[2] <= botLimit ? src[2] : nahighPrev = ta.valuewhen(fractalTop, src[2], 0)[2]highPrice = ta.valuewhen(fractalTop, high[2], 0)[2]lowPrev = ta.valuewhen(fractalBot, src[2], 0)[2]lowPrice = ta.valuewhen(fractalBot, low[2], 0)[2]bearSignal = fractalTop and high[2] > highPrice and src[2] < highPrevbullSignal = fractalBot and low[2] < lowPrice and src[2] > lowPrev[bearSignal, bullSignal]// Get componentssource = closesmrng1 = smoothrng(source, 27, 1.5)smrng2 = smoothrng(source, 55, sensitivity1)smrng = (smrng1 + smrng2) / 2filt = rngfilt(source, smrng)up2 = 0.0, up2 := filt > filt[1] ? nz(up2[1]) + 1 : filt < filt[1] ? 0 : nz(up2[1])dn2 = 0.0, dn2 := filt < filt[1] ? nz(dn2[1]) + 1 : filt > filt[1] ? 0 : nz(dn2[1])bullCond = bool(na), bullCond := source > filt and source > source[1] and up2 > 0 or source > filt and source < source[1] and up2 > 0bearCond = bool(na), bearCond := source < filt and source < source[1] and dn2 > 0 or source < filt and source > source[1] and dn2 > 0lastCond = 0, lastCond := bullCond ? 1 : bearCond ? -1 : lastCond[1]bull1 = bullCond and lastCond[1] == -1bear1 = bearCond and lastCond[1] == 1countBull = ta.barssince(bull1)countBear = ta.barssince(bear1)trigger = nz(countBull, bar_index) < nz(countBear, bar_index) ? 1 : 0ribbon1 = ta.sma(close, smooth1)ribbon2 = ta.sma(close, smooth2)rsi = ta.rsi(close, 21)rsiOb = rsi > 70 and rsi > ta.ema(rsi, 10)rsiOs = rsi < 30 and rsi < ta.ema(rsi, 10)dHigh = securityNoRep(syminfo.tickerid, "D", high [1])dLow = securityNoRep(syminfo.tickerid, "D", low [1])dClose = securityNoRep(syminfo.tickerid, "D", close[1])ema111 = ta.ema(srcEma1, lenEma1)ema22 = ta.ema(srcEma2, lenEma2)ema33 = ta.ema(srcEma3, lenEma3)[hh, lh, hl, ll] = swingPoints(prdSwing)ema = ta.ema(close, 144)emaBull = close > emaequal_tf(res) => str.tonumber(res) == f_chartTfInMinutes() and not timeframe.issecondshigher_tf(res) => str.tonumber(res) > f_chartTfInMinutes() or timeframe.issecondstoo_small_tf(res) => (timeframe.isweekly and res=="1") or (timeframe.ismonthly and str.tonumber(res) < 10)securityNoRep1(sym, res, src) =>bool bull_ = nabull_ := equal_tf(res) ? src : bull_bull_ := higher_tf(res) ? request.security(sym, res, src, barmerge.gaps_off, barmerge.lookahead_on) : bull_bull_array = request.security_lower_tf(syminfo.tickerid, higher_tf(res) ? str.tostring(f_chartTfInMinutes()) + (timeframe.isseconds ? "S" : "") : too_small_tf(res) ? (timeframe.isweekly ? "3" : "10") : res, src)if array.size(bull_array) > 1 and not equal_tf(res) and not higher_tf(res)bull_ := array.pop(bull_array)array.clear(bull_array)bull_TF1Bull = securityNoRep1(syminfo.tickerid, "1" , emaBull)TF3Bull = securityNoRep1(syminfo.tickerid, "3" , emaBull)TF5Bull = securityNoRep1(syminfo.tickerid, "5" , emaBull)TF15Bull = securityNoRep1(syminfo.tickerid, "15" , emaBull)TF30Bull = securityNoRep1(syminfo.tickerid, "30" , emaBull)TF60Bull = securityNoRep1(syminfo.tickerid, "60" , emaBull)TF120Bull = securityNoRep1(syminfo.tickerid, "120" , emaBull)TF240Bull = securityNoRep1(syminfo.tickerid, "240" , emaBull)TF480Bull = securityNoRep1(syminfo.tickerid, "480" , emaBull)TFDBull = securityNoRep1(syminfo.tickerid, "1440", emaBull)[upperKC1, lowerKC1] = f_kc(close, lenRevBands, 3)[upperKC2, lowerKC2] = f_kc(close, lenRevBands, 4)[upperKC3, lowerKC3] = f_kc(close, lenRevBands, 5)[upperKC4, lowerKC4] = f_kc(close, lenRevBands, 6)[wt1, wt2] = wavetrend(hlc3, 9, 12)[wtDivBear1, wtDivBull1] = f_findDivs(wt2, 15, -40)[wtDivBear2, wtDivBull2] = f_findDivs(wt2, 45, -65)wtDivBull = wtDivBull1 or wtDivBull2wtDivBear = wtDivBear1 or wtDivBear2// Colorscyan = #00DBFF, cyan30 = color.new(cyan, 70)pink = #E91E63, pink30 = color.new(pink, 70)red1 = #FF5252, red30 = color.new(red1 , 70)// Plot
srcStop = closeatrBand = srcStop * (percentStop / 120)atrStop = trigger ? srcStop - atrBand : srcStop + atrBandlastTrade(src) => ta.valuewhen(bull or bear, src, 0)entry_y = lastTrade(srcStop)stop_y = lastTrade(atrStop)tp1_y = (entry_y - lastTrade(atrStop)) * 1 + entry_ytp2_y = (entry_y - lastTrade(atrStop)) * 2 + entry_ytp3_y = (entry_y - lastTrade(atrStop)) * 3 + entry_ylabelTpSl(y, txt, color) =>label labelTpSl = percentStop != 0 ? label.new(bar_index + 1, y, txt, xloc.bar_index, yloc.price, color, label.style_label_left, color.white, size.normal) : nalabel.delete(labelTpSl[1])labelTpSl(entry_y, "Entry: " + str.tostring(math.round_to_mintick(entry_y)), color.gray)labelTpSl(stop_y , "Stop Loss: " + str.tostring(math.round_to_mintick(stop_y)), color.red)labelTpSl(tp1_y, "Take Profit 1: " + str.tostring(math.round_to_mintick(tp1_y)), color.green)labelTpSl(tp2_y, "Take Profit 2: " + str.tostring(math.round_to_mintick(tp2_y)), color.green)labelTpSl(tp3_y, "Take Profit 3: " + str.tostring(math.round_to_mintick(tp3_y)), color.green)lineTpSl(y, color) =>line lineTpSl = percentStop != 0 ? line.new(bar_index - (trigger ? countBull : countBear) + 4, y, bar_index + 1, y, xloc.bar_index, extend.none, color, line.style_solid) : naline.delete(lineTpSl[1])lineTpSl(entry_y, color.gray)lineTpSl(stop_y, color.red)lineTpSl(tp1_y, color.green)lineTpSl(tp2_y, color.green)lineTpSl(tp3_y, color.green)
Откликнулись
1
Оценка
Проекты
460
26%
Арбитраж
140
20%
/
59%
Просрочено
100
22%
Работает
2
Оценка
Проекты
8
13%
Арбитраж
6
33%
/
33%
Просрочено
0
Свободен
3
Оценка
Проекты
596
35%
Арбитраж
64
20%
/
58%
Просрочено
147
25%
Работает
Опубликовал: 1 статью, 22 примера
4
Оценка
Проекты
23
22%
Арбитраж
8
13%
/
63%
Просрочено
4
17%
Свободен
5
Оценка
Проекты
628
33%
Арбитраж
38
37%
/
50%
Просрочено
11
2%
Загружен
6
Оценка
Проекты
945
47%
Арбитраж
309
58%
/
27%
Просрочено
125
13%
Свободен
7
Оценка
Проекты
9
22%
Арбитраж
0
Просрочено
0
Свободен
Похожие заказы
I would love to see most of my trades going well being in profits! & keep consistent trading without having to blow any accounts be able to identify right trades and have good trading strategy
Black dragon MT5 indicator. EA to take the buy and sell signal with selectable timeframe and lot size. Strategies could be either with or without martingale and with or without hedge. If you already have something similar EA ready to take this signal. Please take the work order for further discussion. Budget negotiable. Thanks. https://www.mql5.com/en/market/product/62749#!tab=overview
Hello, I am looking for a Filipino MQL5 (MT5) programmer who can develop a simple automated trading EA for my personal live trading account (not for prop firm use). Strategy Details: Pair: XAUUSD (Gold) only Timeframe: 1 Hour (H1) Daily range-based pending order system Fixed Stop Loss: 20.00 price movement Step trailing system (moves every +20.00 profit) Maximum 1 trade per day No martingale No grid Features
Vell
35+ USD
Advanced trading robot built on ICT concepts and structured Price Action methodology. Designed to identify liquidity zones, market structure shifts, and high-probability entries while maintaining disciplined risk management and optimized trade execution for consistent, rule-based performance
I NEED A PROFITABLE EA
50 - 150 USD
This may be a weird request but if anyone has an EA that is actually consistently profitable I want to buy a copy of the source code from you. Ideally trades a lot, I'm sure theres a coder out there who has made a profitable EA, I want to backtest if you have, I have been trying to code a few on my own with no success as I'm not yet good at coding. In the mean time I need something profitable. bonus points if it
Yash Agrawal
30+ USD
// Simple EMA Bot input int FastEMA = 9; input int SlowEMA = 21; void OnTick() { double fast = iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,0); double slow = iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,0); if(fast > slow) { if(PositionsTotal()==0) OrderSend(Symbol(),OP_BUY,0.01,Ask,10,0,0); } if(fast < slow) { if(PositionsTotal()==0) OrderSend(Symbol(),OP_SELL,0.01,Bid,10,0,0); } }
Gold robot Ga1
30 - 200 USD
mport pandas as pd import numpy as np def detecter_tendance(data): # Code pour détecter la tendance pass def identifier_niveaux(data): # Code pour identifier les niveaux de support et de résistance pass def calculer_stop_loss(tendance, support, resistance): # Code pour calculer les stop loss pass def calculer_profils(tendance, support, resistance): # Code pour calculer les profils mport pandas as pd
IMPROVE RENKO EXPERT
30+ USD
I need modifications and restructuring of an existing MetaTrader 5 Expert Advisor (MQL5) . The current EA works with only one filter for trade entry. I need it redesigned to support 10 optional filters , with flexible configuration and improved Renko logic. I will provide the full .mq5 source code . The EA currently opens trades only when the selected filters agree in direction. 1) 10 Optional Filters System The EA
Seeking an experienced quantitative developer to build a custom, AI-powered Telegram signal parsing and trade execution system. The goal is to automatically copy trading signals from multiple Telegram providers to MetaTrader 5 with ultra-low latency and intelligent signal interpretation. Body: Looking for an experienced developer to build a custom signal copier system. Skills Required: - MQL5 / MetaTrader 5
I need a hft bot that works well on live market. I have tested some bot and they only perform on demo market. If you have any one that is profitable in the live market, pls send a message. I will need to test it before paying. Pls make sure the bot is profitable in LIVE MARKET
Информация о проекте
Бюджет
10000+ USD